aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-i386.h
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2003-08-14 08:05:44 +0000
committerAlan Modra <amodra@gmail.com>2003-08-14 08:05:44 +0000
commitf86103b73078976875f1f242f82021f8a1f6c95a (patch)
tree3751b7a6f9db9f12b6d706d525b8941090ca25ff /gas/config/tc-i386.h
parent55bb4be3762bc2c2372420fa84fa771125b91f19 (diff)
downloadfsf-binutils-gdb-f86103b73078976875f1f242f82021f8a1f6c95a.zip
fsf-binutils-gdb-f86103b73078976875f1f242f82021f8a1f6c95a.tar.gz
fsf-binutils-gdb-f86103b73078976875f1f242f82021f8a1f6c95a.tar.bz2
* config/tc-i386.h: Remove BFD_ASSEMBLER tests and all !BFD_ASSEMBLER
code. * config/tc-i386.c: Likewise. (RELOC_ENUM): Don't define. Replace throughout with enum.
Diffstat (limited to 'gas/config/tc-i386.h')
-rw-r--r--gas/config/tc-i386.h75
1 files changed, 4 insertions, 71 deletions
diff --git a/gas/config/tc-i386.h b/gas/config/tc-i386.h
index 5b93dbe..7fd8847 100644
--- a/gas/config/tc-i386.h
+++ b/gas/config/tc-i386.h
@@ -23,6 +23,10 @@
#ifndef TC_I386
#define TC_I386 1
+#ifndef BFD_ASSEMBLER
+#error So, do you know what you are doing?
+#endif
+
#ifdef ANSI_PROTOTYPES
struct fix;
#endif
@@ -33,7 +37,6 @@ struct fix;
#define TARGET_FORMAT "coff-i386-lynx"
#endif
-#ifdef BFD_ASSEMBLER
#define TARGET_ARCH bfd_arch_i386
#define TARGET_MACH (i386_mach ())
extern unsigned long i386_mach PARAMS ((void));
@@ -87,59 +90,6 @@ extern void i386_elf_emit_arch_note PARAMS ((void));
#define SUB_SEGMENT_ALIGN(SEG, FRCHAIN) 0
-#else /* ! BFD_ASSEMBLER */
-
-/* COFF STUFF */
-
-#define COFF_MAGIC I386MAGIC
-#define BFD_ARCH bfd_arch_i386
-#define COFF_FLAGS F_AR32WR
-#define TC_COUNT_RELOC(x) ((x)->fx_addsy || (x)->fx_r_type==7)
-#define TC_COFF_FIX2RTYPE(FIX) tc_coff_fix2rtype(FIX)
-extern short tc_coff_fix2rtype PARAMS ((struct fix *));
-#define TC_COFF_SIZEMACHDEP(frag) tc_coff_sizemachdep (frag)
-extern int tc_coff_sizemachdep PARAMS ((fragS *frag));
-
-#ifdef TE_GO32
-/* DJGPP now expects some sections to be 2**4 aligned. */
-#define SUB_SEGMENT_ALIGN(SEG, FRCHAIN) \
- ((strcmp (obj_segment_name (SEG), ".text") == 0 \
- || strcmp (obj_segment_name (SEG), ".data") == 0 \
- || strcmp (obj_segment_name (SEG), ".bss") == 0 \
- || strncmp (obj_segment_name (SEG), ".gnu.linkonce.t", 15) == 0 \
- || strncmp (obj_segment_name (SEG), ".gnu.linkonce.d", 15) == 0 \
- || strncmp (obj_segment_name (SEG), ".gnu.linkonce.r", 15) == 0) \
- ? 4 \
- : 2)
-#else
-#define SUB_SEGMENT_ALIGN(SEG, FRCHAIN) 2
-#endif
-
-#ifdef TE_386BSD
-/* The BSDI linker apparently rejects objects with a machine type of
- M_386 (100). */
-#define AOUT_MACHTYPE 0
-#else
-#define AOUT_MACHTYPE 100
-#endif
-
-#ifndef OBJ_AOUT
-#ifndef TE_PE
-#ifndef TE_GO32
-/* Local labels starts with .L */
-#define LOCAL_LABEL(name) (name[0] == '.' \
- && (name[1] == 'L' || name[1] == 'X' || name[1] == '.'))
-#endif
-#endif
-#endif
-
-#define tc_aout_pre_write_hook(x) {;} /* not used */
-#define tc_crawl_symbol_chain(a) {;} /* not used */
-#define tc_headers_hook(a) {;} /* not used */
-#define tc_coff_symbol_emit_hook(a) {;} /* not used */
-
-#endif /* ! BFD_ASSEMBLER */
-
#define LOCAL_LABELS_FB 1
extern const char extra_symbol_chars[];
@@ -459,7 +409,6 @@ extern void x86_cons_fix_new
#define DIFF_EXPR_OK /* foo-. gets turned into PC relative relocs */
-#ifdef BFD_ASSEMBLER
#define NO_RELOC BFD_RELOC_NONE
void i386_validate_fix PARAMS ((struct fix *));
@@ -496,22 +445,6 @@ extern int tc_i386_fix_adjustable PARAMS ((struct fix *));
|| (FIX)->fx_r_type == BFD_RELOC_386_GOTPC \
|| TC_FORCE_RELOCATION (FIX))
-#else /* ! BFD_ASSEMBLER */
-
-#define NO_RELOC 0
-
-#define TC_RVA_RELOC 7
-
-/* Need this for PIC relocations */
-#define NEED_FX_R_TYPE
-
-#undef REVERSE_SORT_RELOCS
-
-/* For COFF. */
-#define TC_FORCE_RELOCATION(FIX) \
- ((FIX)->fx_r_type == 7 || generic_force_reloc (FIX))
-#endif /* ! BFD_ASSEMBLER */
-
#define md_operand(x)
extern const struct relax_type md_relax_table[];