~ubuntu-branches/ubuntu/utopic/binutils-arm64-cross/utopic

« back to all changes in this revision

Viewing changes to binutils-2.23.52.20130611/gas/config/tc-score.h

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2013-06-20 17:38:09 UTC
  • Revision ID: package-import@ubuntu.com-20130620173809-app8lzgvymy5fg6c
Tags: 0.7
Build-depend on binutils-source (>= 2.23.52.20130620-1~).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* tc-score.h -- Score specific file for assembler
 
2
   Copyright 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
 
3
   Contributed by: 
 
4
   Brain.lin (brain.lin@sunplusct.com)
 
5
   Mei Ligang (ligang@sunnorth.com.cn)
 
6
   Pei-Lin Tsai (pltsai@sunplus.com)
 
7
 
 
8
   This file is part of GAS, the GNU Assembler.
 
9
 
 
10
   GAS is free software; you can redistribute it and/or modify
 
11
   it under the terms of the GNU General Public License as published by
 
12
   the Free Software Foundation; either version 3, or (at your option)
 
13
   any later version.
 
14
 
 
15
   GAS is distributed in the hope that it will be useful,
 
16
   but WITHOUT ANY WARRANTY; without even the implied warranty of
 
17
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
18
   GNU General Public License for more details.
 
19
 
 
20
   You should have received a copy of the GNU General Public License
 
21
   along with GAS; see the file COPYING.  If not, write to the Free
 
22
   Software Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
 
23
   MA 02110-1301, USA.  */
 
24
 
 
25
#ifndef TC_SCORE
 
26
#define TC_SCORE
 
27
 
 
28
#define TARGET_ARCH                 bfd_arch_score
 
29
#define WORKING_DOT_WORD
 
30
#define DIFF_EXPR_OK
 
31
#define RELOC_EXPANSION_POSSIBLE
 
32
#define MAX_RELOC_EXPANSION         2
 
33
#define MAX_MEM_FOR_RS_ALIGN_CODE  (3 + 4)
 
34
 
 
35
#define md_undefined_symbol(name)  NULL
 
36
 
 
37
#define TARGET_FORMAT  (target_big_endian ? "elf32-bigscore" : "elf32-littlescore")
 
38
 
 
39
#define md_relax_frag(segment, fragp, stretch)  score_relax_frag (segment, fragp, stretch)
 
40
extern int score_relax_frag (asection *, struct frag *, long);
 
41
 
 
42
/* #define md_frag_check(fragp)  score_frag_check (fragp) */
 
43
extern void score_frag_check (fragS *);
 
44
 
 
45
#define TC_VALIDATE_FIX(FIXP, SEGTYPE, SKIP)  score_validate_fix (FIXP)
 
46
extern void score_validate_fix (struct fix *);
 
47
 
 
48
#define TC_FORCE_RELOCATION(FIXP)  score_force_relocation (FIXP)
 
49
extern int score_force_relocation (struct fix *);
 
50
 
 
51
#define tc_fix_adjustable(fixp)  score_fix_adjustable (fixp)
 
52
extern bfd_boolean score_fix_adjustable (struct fix *);
 
53
 
 
54
#define elf_tc_final_processing  score_elf_final_processing
 
55
extern void score_elf_final_processing (void);
 
56
 
 
57
struct score_tc_frag_data
 
58
{
 
59
  unsigned int is_insn;
 
60
  struct fix *fixp;
 
61
};
 
62
 
 
63
#define TC_FRAG_TYPE struct score_tc_frag_data
 
64
 
 
65
#define TC_FRAG_INIT(FRAGP) \
 
66
  do \
 
67
    { \
 
68
      (FRAGP)->tc_frag_data.is_insn = (((FRAGP)->fr_type == rs_machine_dependent) ? 1 : 0); \
 
69
    } \
 
70
  while (0)
 
71
 
 
72
#ifdef OBJ_ELF
 
73
#define GLOBAL_OFFSET_TABLE_NAME "_GLOBAL_OFFSET_TABLE_"
 
74
#else
 
75
#define GLOBAL_OFFSET_TABLE_NAME "__GLOBAL_OFFSET_TABLE_"
 
76
#endif
 
77
 
 
78
#endif /*TC_SCORE */