bfbfba45ba
- sparc[lite]-coff as well as sparc-lynx - producing coff (including debug info) under BFD_ASSEMBLER option - cleanup of cpu-specific code in non-cpu-specific files (especially write.c) - providing common code to avoid duplication in cpu-specific files (specifically, md_number_to_chars) - stylistic changes & misc cleanup ================ * config/tc-sparc.c (tc_gen_reloc): Make adjustment to addend be dependent on howto fields, not on format flavour. * struc-symbol.h (struct symbol): New fields sy_obj and sy_tc, defined as types OBJ_SYMFIELD_TYPE and TC_SYMFIELD_TYPE, if those macros are defined. * config/obj-coff.h (TC_SYMFIELD_TYPE, OBJ_SYMFIELD_TYPE): Define. (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): Don't define. (sy_tc, sy_obj): Define so that the fields look like they used to, until all references get changed. * write.c (fixup_segment): Lots of variables no longer register. Reordered some code for easier reading. * config/obj-coff.c (obj_coff_dim): dim_index no longer register. Deleted superfluous return statement. (obj_coff_line, obj_coff_size, obj_coff_scl, obj_coff_type, obj_coff_val, tag_init, tag_insert): Deleted superfluous return statement. (align, obj_coff_section): Deleted debugging printfs. * config/tc-i386.c (md_assemble): Discard some register decls. Use assignment rather than memcpy to copy template. (op_hash, reg_hash, prefix_hash): Default C initialization of statics is sufficient. * config/tc-sparc.c (print_insn): Array Reloc is now const, and points to const. * config/obj-coff.h (TARGET_FORMAT): Only use coff-sparc-lynx if TE_LYNX; use coff-sparc otherwise. [USE_NATIVE_HEADERS]: Delete this code; it isn't used. * write.c (fixup_segment): Call TC_VALIDATE_FIX, if defined, before processing a fixup. Call TC_ADJUST_RELOC_COUNT just before returning. Remove some i960-coff-specific code. (TC_ADJUST_RELOC_COUNT): Default to doing nothing. * config/tc-i960.h (TC_ADJUST_RELOC_COUNT) [OBJ_COFF]: Define. (i960_validate_fix): Declare. (TC_VALIDATE_FIX): Define. * config/tc-i960.c (i960_validate_fix): New function. * write.c (number_to_chars_littleendian): New function. Write out bytes in little endian order, doing size and range checking. (number_to_chars_bigendian): New function, similar. * write.h: Declare them. * config/tc-*.c (md_number_to_chars): Use them. * config/tc-vax.c (md_apply_fix): Ditto. * config/tc-i386.c (md_apply_fix): Ditto. * config/obj-coff.c: Rearranged code for handling line number data. (line_fsym): Renamed from function_lineoff in BFD_ASSEMBLER case, since the usage is different from non-BFD_ASSEMBLER case. (in_function, clear_function, set_function): New macros, to combine some of the functionality implemented in differnet ways in BFD_ASSEMBLER and non-... code. Used in other functions that used to check function_lineoff &c. (obj_emit_lineno): Split into two copies, one for BFD_ASSEMBLER, one for not. Non-BFD_ASSEMBLER version now has temporary variable to contain char* pointer pointed to by char** argument. Always follow CROSS_COMPILE code; easier to read that way. (obj_coff_ln): Don't call add_lineno or c_line_new if appline is set. (obj_coff_endef) [BFD_ASSEMBLER]: Don't do anything special for ".bf", it's been done elsewhere. (coff_frob_symbol): If ilne number data is pending, call add_linesym to flush it. (coff_frob_file): Don't do that here. * config/obj-coff.h (coff_frob_file): Declare. (obj_frob_file): Define, to call it. * config/tc-sparc.h (md_create_short_jump, md_create_long_jump, md_estimate_size_before_relax: Define them as macros calling as_fatal. * config/tc-sparc.c: Don't define them as functions. |
||
---|---|---|
.. | ||
.Sanitize | ||
aout_gnu.h | ||
atof-ieee.c | ||
atof-ns32k.c | ||
atof-tahoe.c | ||
atof-vax.c | ||
coff_gnu.h | ||
cplus-dem.c | ||
ebmon29k.mt | ||
h8300.mt | ||
h8300hds.mt | ||
h8500.mt | ||
ho-ansi.h | ||
ho-decstatn.h | ||
ho-generic.h | ||
ho-go32.h | ||
ho-hppabsd.h | ||
ho-hppaosf.h | ||
ho-hpux.h | ||
ho-i386.h | ||
ho-i386aix.h | ||
ho-irix.h | ||
ho-mipsbsd.h | ||
ho-rs6000.h | ||
ho-sun3.h | ||
ho-sun4.h | ||
ho-sun386.h | ||
ho-sunos.h | ||
ho-sysv.h | ||
ho-vax.h | ||
ho-vms.h | ||
i386coff.mt | ||
m68k.mt | ||
m68kcoff.mt | ||
m88k-opcode.h | ||
m88kcoff.mt | ||
mips-big.mt | ||
mips-lit.mt | ||
obj-aout.c | ||
obj-aout.h | ||
obj-bout.c | ||
obj-bout.h | ||
obj-coff.c | ||
obj-coff.h | ||
obj-coffbfd.c | ||
obj-coffbfd.h | ||
obj-ecoff.c | ||
obj-elf.c | ||
obj-elf.h | ||
obj-generic.c | ||
obj-generic.h | ||
obj-hp300.c | ||
obj-hp300.h | ||
obj-ieee.c | ||
obj-ieee.h | ||
obj-som.c | ||
obj-som.h | ||
obj-vms.c | ||
obj-vms.h | ||
sh.mt | ||
sparc.mt | ||
tc-a29k.c | ||
tc-a29k.h | ||
tc-generic.c | ||
tc-generic.h | ||
tc-h8300.c | ||
tc-h8300.h | ||
tc-h8500.c | ||
tc-h8500.h | ||
tc-hppa.c | ||
tc-hppa.h | ||
tc-i386.c | ||
tc-i386.h | ||
tc-i860.c | ||
tc-i860.h | ||
tc-i960.c | ||
tc-i960.h | ||
tc-m68k.c | ||
tc-m68k.h | ||
tc-m88k.c | ||
tc-m88k.h | ||
tc-m68851.h | ||
tc-mips.c | ||
tc-mips.h | ||
tc-ns32k.c | ||
tc-ns32k.h | ||
tc-sh.c | ||
tc-sparc.c | ||
tc-sparc.h | ||
tc-sparc64.c | ||
tc-sparc64.h | ||
tc-tahoe.c | ||
tc-tahoe.h | ||
tc-vax.c | ||
tc-vax.h | ||
tc-z8k.c | ||
tc-z8k.h | ||
te-dpx2.h | ||
te-generic.h | ||
te-hp300.h | ||
te-hppa.h | ||
te-i386aix.h | ||
te-ic960.h | ||
te-lynx.h | ||
te-sco386.h | ||
te-sun3.h | ||
te-sysv32.h | ||
vax-inst.h | ||
z8k.mt |