[ bfd/ChangeLog ]
2004-04-23 Chris Demetriou <cgd@broadcom.com> * coff-mips.c (mips_relhi_reloc, mips_rello_reloc) (mips_switch_reloc, mips_read_relocs, mips_relax_section) (mips_relax_pcrel16, PCREL16_EXPANSION_ADJUSTMENT): Remove. (mips_relocate_hi): Remove now-unused 'adjust' and 'pcrel' arguments, and update comments to reflect current usage. (mips_howto_table): Remove entries for MIPS_R_RELHI, MIPS_R_RELLO, and MIPS_R_SWITCH, as well as several empty entries. Update comment for MIPS_R_PCREL16. (mips_ecoff_swap_reloc_in, mips_ecoff_swap_reloc_out) (mips_adjust_reloc_out, mips_bfd_reloc_type_lookup): Remove support for MIPS_R_SWITCH, MIPS_R_RELLO, and MIPS_R_RELHI relocations. (mips_adjust_reloc_in): Likewise, adjust maximum accepted relocation type number to be MIPS_R_PCREL16. (mips_relocate_section): Remove support for link-time relaxation of branches used by embedded-PIC. Remove support for MIPS_R_SWITCH, MIPS_R_RELLO, and MIPS_R_RELHI relocations. (_bfd_ecoff_bfd_relax_section): Redefine to bfd_generic_relax_section. * ecoff.c (ecoff_indirect_link_order): Remove support for link-time relaxation of branches used by embedded-PIC. * ecofflink.c (bfd_ecoff_debug_accumulate): Likewise. * libecoff.h (struct ecoff_section_tdata): Remove embedded-PIC related members, update comment. * pe-mips.c: Remove disabled (commented-out and #if 0'd) code related to embedded-PIC. * elfxx-mips.c (_bfd_mips_elf_read_ecoff_info): Remove initialization of now-removed 'adjust' member of 'struct ecoff_debug_info'. [ include/coff/ChangeLog ] 2004-04-23 Chris Demetriou <cgd@broadcom.com> * mips.h (MIPS_R_RELHI, MIPS_R_RELLO, MIPS_R_SWITCH): Remove (MIPS_R_PCREL16): Update comment. * ecoff.h (struct ecoff_value_adjust): Remove structure. (struct ecoff_debug_info): Remove 'adjust' member.
This commit is contained in:
		| @@ -105,34 +105,10 @@ struct external_reloc | ||||
| #define MIPS_R_GPREL	6 | ||||
| #define MIPS_R_LITERAL	7 | ||||
|  | ||||
| /* These reloc types are a Cygnus extension used when generating | ||||
|    position independent code for embedded systems.  The numbers are | ||||
|    taken from Irix 4, but at least for internal relocs Irix 5 does not | ||||
|    give them the same meaning.  For an internal reloc the symbol index | ||||
|    of RELHI and RELLO is modified as described below for | ||||
|    MIPS_R_SWITCH.  */ | ||||
| /* FIXME: This relocation is used (internally only) to represent branches | ||||
|    when assembling.  It should never appear in output files, and   | ||||
|    be removed.  (It used to be used for embedded-PIC support.)  */ | ||||
| #define MIPS_R_PCREL16	12 | ||||
| #define MIPS_R_RELHI	13 | ||||
| #define MIPS_R_RELLO	14 | ||||
|  | ||||
| /* This reloc type is a Cygnus extension used when generating position | ||||
|    independent code for embedded systems.  It is used for an entry in | ||||
|    a switch table, which looks like this: | ||||
|      .word $L3-$LS12 | ||||
|    The object file will contain the correct difference, and does not | ||||
|    require adjustment.  However, when the linker is relaxing PC | ||||
|    relative calls, it is possible for $L3 to move farther away.  This | ||||
|    reloc always appears in the .text section, and is always against | ||||
|    the .text section.  However, the symbol index is not | ||||
|    RELOC_SECTION_TEXT.  It is, instead, the distance between this | ||||
|    switch table entry and $LS12.  Thus, the original value of $L12 is | ||||
|      vaddr - symndx | ||||
|    and the original value of $L3 is | ||||
|      vaddr - symndx + addend | ||||
|    where addend is the value in the object file.  Knowing this, the | ||||
|    linker can know whether the addend in the object file must be | ||||
|    adjusted.  */ | ||||
| #define MIPS_R_SWITCH	22 | ||||
|  | ||||
| /********************** STABS **********************/ | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user