1 /* This file is tc-h8500.h
2    Copyright 1993, 1995, 1997, 1998, 2000, 2003, 2005
3    Free Software Foundation, Inc.
4 
5    This file is part of GAS, the GNU Assembler.
6 
7    GAS is free software; you can redistribute it and/or modify
8    it under the terms of the GNU General Public License as published by
9    the Free Software Foundation; either version 2, or (at your option)
10    any later version.
11 
12    GAS is distributed in the hope that it will be useful,
13    but WITHOUT ANY WARRANTY; without even the implied warranty of
14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15    GNU General Public License for more details.
16 
17    You should have received a copy of the GNU General Public License
18    along with GAS; see the file COPYING.  If not, write to the Free
19    Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
20    02110-1301, USA.  */
21 
22 #define TC_H8500
23 
24 #define TARGET_BYTES_BIG_ENDIAN 1
25 
26 #if ANSI_PROTOTYPES
27 struct internal_reloc;
28 #endif
29 
30 #define WORKING_DOT_WORD
31 
32 /* This macro translates between an internal fix and a coff reloc type.  */
33 #define TC_COFF_FIX2RTYPE(fixP) tc_coff_fix2rtype (fixP)
34 
35 #define BFD_ARCH bfd_arch_h8500
36 #define COFF_MAGIC 0x8500
37 #define TC_COUNT_RELOC(x) ((x)->fx_addsy || (x)->fx_subsy)
38 #define IGNORE_NONSTANDARD_ESCAPES
39 
40 #define TC_RELOC_MANGLE(s,a,b,c) tc_reloc_mangle(a, b, c)
41 extern void tc_reloc_mangle
42   (struct fix *, struct internal_reloc *, bfd_vma);
43 
44 #define LISTING_HEADER "Renesas H8/500 GAS "
45 #define NEED_FX_R_TYPE 1
46 #define RELOC_32 1234
47 
48 #define TC_START_LABEL(ch, ptr)  (ch == ':' && start_label (ptr))
49 int start_label (char *);
50 
51 #define TC_COFF_SIZEMACHDEP(frag) tc_coff_sizemachdep (frag)
52 int tc_coff_sizemachdep (struct frag *);
53 
54 #define md_operand(x)
55 
56 extern struct relax_type md_relax_table[];
57 #define TC_GENERIC_RELAX_TABLE md_relax_table
58