* bfd/elf32-arm.c: Make all #ifndef OLD_ARM_ABI blocks
unconditional. * include/elf/arm.h: Make all #ifndef OLD_ARM_ABI blocks unconditional, delete all #ifdef OLD_ARM_ABI blocks.
This commit is contained in:
parent
13792e9d85
commit
cb1afa5cf4
4 changed files with 12 additions and 68 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2005-05-18 Zack Weinberg <zack@codesourcery.com>
|
||||||
|
|
||||||
|
* elf32-arm.c: Make all #ifndef OLD_ARM_ABI blocks
|
||||||
|
unconditional.
|
||||||
|
|
||||||
2005-05-18 H.J. Lu <hongjiu.lu@intel.com>
|
2005-05-18 H.J. Lu <hongjiu.lu@intel.com>
|
||||||
|
|
||||||
* elf.c (group_signature): Undo the last change. Check if the
|
* elf.c (group_signature): Undo the last change. Check if the
|
||||||
|
|
|
@ -2355,10 +2355,8 @@ bfd_elf32_arm_process_before_allocation (bfd *abfd,
|
||||||
/* These are the only relocation types we care about. */
|
/* These are the only relocation types we care about. */
|
||||||
if ( r_type != R_ARM_PC24
|
if ( r_type != R_ARM_PC24
|
||||||
&& r_type != R_ARM_PLT32
|
&& r_type != R_ARM_PLT32
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
&& r_type != R_ARM_CALL
|
&& r_type != R_ARM_CALL
|
||||||
&& r_type != R_ARM_JUMP24
|
&& r_type != R_ARM_JUMP24
|
||||||
#endif
|
|
||||||
&& r_type != R_ARM_THM_CALL)
|
&& r_type != R_ARM_THM_CALL)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
@ -2402,10 +2400,8 @@ bfd_elf32_arm_process_before_allocation (bfd *abfd,
|
||||||
{
|
{
|
||||||
case R_ARM_PC24:
|
case R_ARM_PC24:
|
||||||
case R_ARM_PLT32:
|
case R_ARM_PLT32:
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_CALL:
|
case R_ARM_CALL:
|
||||||
case R_ARM_JUMP24:
|
case R_ARM_JUMP24:
|
||||||
#endif
|
|
||||||
/* This one is a call from arm code. We need to look up
|
/* This one is a call from arm code. We need to look up
|
||||||
the target of the call. If it is a thumb target, we
|
the target of the call. If it is a thumb target, we
|
||||||
insert glue. */
|
insert glue. */
|
||||||
|
@ -2452,7 +2448,6 @@ error_return:
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
/* Set target relocation values needed during linking. */
|
/* Set target relocation values needed during linking. */
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -2481,7 +2476,6 @@ bfd_elf32_arm_set_target_relocs (struct bfd_link_info *link_info,
|
||||||
globals->fix_v4bx = fix_v4bx;
|
globals->fix_v4bx = fix_v4bx;
|
||||||
globals->use_blx |= use_blx;
|
globals->use_blx |= use_blx;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
/* The thumb form of a long branch is a bit finicky, because the offset
|
/* The thumb form of a long branch is a bit finicky, because the offset
|
||||||
encoding is split over two fields, each in it's own instruction. They
|
encoding is split over two fields, each in it's own instruction. They
|
||||||
|
@ -2752,8 +2746,6 @@ elf32_arm_to_thumb_stub (struct bfd_link_info * info,
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
/* Some relocations map to different relocations depending on the
|
/* Some relocations map to different relocations depending on the
|
||||||
target. Return the real relocation. */
|
target. Return the real relocation. */
|
||||||
static int
|
static int
|
||||||
|
@ -2775,8 +2767,6 @@ arm_real_reloc_type (struct elf32_arm_link_hash_table * globals,
|
||||||
return r_type;
|
return r_type;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* OLD_ARM_ABI */
|
|
||||||
|
|
||||||
|
|
||||||
/* Return the base VMA address which should be subtracted from real addresses
|
/* Return the base VMA address which should be subtracted from real addresses
|
||||||
when resolving @dtpoff relocation.
|
when resolving @dtpoff relocation.
|
||||||
|
@ -2840,13 +2830,11 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
|
|
||||||
globals = elf32_arm_hash_table (info);
|
globals = elf32_arm_hash_table (info);
|
||||||
|
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
/* Some relocation type map to different relocations depending on the
|
/* Some relocation type map to different relocations depending on the
|
||||||
target. We pick the right one here. */
|
target. We pick the right one here. */
|
||||||
r_type = arm_real_reloc_type (globals, r_type);
|
r_type = arm_real_reloc_type (globals, r_type);
|
||||||
if (r_type != howto->type)
|
if (r_type != howto->type)
|
||||||
howto = elf32_arm_howto_from_type (r_type);
|
howto = elf32_arm_howto_from_type (r_type);
|
||||||
#endif /* OLD_ARM_ABI */
|
|
||||||
|
|
||||||
/* If the start address has been set, then set the EF_ARM_HASENTRY
|
/* If the start address has been set, then set the EF_ARM_HASENTRY
|
||||||
flag. Setting this more than once is redundant, but the cost is
|
flag. Setting this more than once is redundant, but the cost is
|
||||||
|
@ -2898,12 +2886,10 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
case R_ARM_PC24:
|
case R_ARM_PC24:
|
||||||
case R_ARM_ABS32:
|
case R_ARM_ABS32:
|
||||||
case R_ARM_REL32:
|
case R_ARM_REL32:
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_CALL:
|
case R_ARM_CALL:
|
||||||
case R_ARM_JUMP24:
|
case R_ARM_JUMP24:
|
||||||
case R_ARM_XPC25:
|
case R_ARM_XPC25:
|
||||||
case R_ARM_PREL31:
|
case R_ARM_PREL31:
|
||||||
#endif
|
|
||||||
case R_ARM_PLT32:
|
case R_ARM_PLT32:
|
||||||
/* r_symndx will be zero only for relocs against symbols
|
/* r_symndx will be zero only for relocs against symbols
|
||||||
from removed linkonce sections, or sections discarded by
|
from removed linkonce sections, or sections discarded by
|
||||||
|
@ -2945,11 +2931,9 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
|| ELF_ST_VISIBILITY (h->other) == STV_DEFAULT
|
|| ELF_ST_VISIBILITY (h->other) == STV_DEFAULT
|
||||||
|| h->root.type != bfd_link_hash_undefweak)
|
|| h->root.type != bfd_link_hash_undefweak)
|
||||||
&& r_type != R_ARM_PC24
|
&& r_type != R_ARM_PC24
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
&& r_type != R_ARM_CALL
|
&& r_type != R_ARM_CALL
|
||||||
&& r_type != R_ARM_JUMP24
|
&& r_type != R_ARM_JUMP24
|
||||||
&& r_type != R_ARM_PREL31
|
&& r_type != R_ARM_PREL31
|
||||||
#endif
|
|
||||||
&& r_type != R_ARM_PLT32)
|
&& r_type != R_ARM_PLT32)
|
||||||
{
|
{
|
||||||
Elf_Internal_Rela outrel;
|
Elf_Internal_Rela outrel;
|
||||||
|
@ -3047,14 +3031,11 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
}
|
}
|
||||||
else switch (r_type)
|
else switch (r_type)
|
||||||
{
|
{
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_XPC25: /* Arm BLX instruction. */
|
case R_ARM_XPC25: /* Arm BLX instruction. */
|
||||||
case R_ARM_CALL:
|
case R_ARM_CALL:
|
||||||
case R_ARM_JUMP24:
|
case R_ARM_JUMP24:
|
||||||
#endif
|
|
||||||
case R_ARM_PC24: /* Arm B/BL instruction */
|
case R_ARM_PC24: /* Arm B/BL instruction */
|
||||||
case R_ARM_PLT32:
|
case R_ARM_PLT32:
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
if (r_type == R_ARM_XPC25)
|
if (r_type == R_ARM_XPC25)
|
||||||
{
|
{
|
||||||
/* Check for Arm calling Arm function. */
|
/* Check for Arm calling Arm function. */
|
||||||
|
@ -3067,7 +3048,6 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
h ? h->root.root.string : "(local)");
|
h ? h->root.root.string : "(local)");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif
|
|
||||||
{
|
{
|
||||||
/* Check for Arm calling Thumb function. */
|
/* Check for Arm calling Thumb function. */
|
||||||
if (sym_flags == STT_ARM_TFUNC)
|
if (sym_flags == STT_ARM_TFUNC)
|
||||||
|
@ -3123,14 +3103,12 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
return bfd_reloc_overflow;
|
return bfd_reloc_overflow;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
/* If necessary set the H bit in the BLX instruction. */
|
/* If necessary set the H bit in the BLX instruction. */
|
||||||
if (r_type == R_ARM_XPC25 && ((value & 2) == 2))
|
if (r_type == R_ARM_XPC25 && ((value & 2) == 2))
|
||||||
value = (signed_addend & howto->dst_mask)
|
value = (signed_addend & howto->dst_mask)
|
||||||
| (bfd_get_32 (input_bfd, hit_data) & (~ howto->dst_mask))
|
| (bfd_get_32 (input_bfd, hit_data) & (~ howto->dst_mask))
|
||||||
| (1 << 24);
|
| (1 << 24);
|
||||||
else
|
else
|
||||||
#endif
|
|
||||||
value = (signed_addend & howto->dst_mask)
|
value = (signed_addend & howto->dst_mask)
|
||||||
| (bfd_get_32 (input_bfd, hit_data) & (~ howto->dst_mask));
|
| (bfd_get_32 (input_bfd, hit_data) & (~ howto->dst_mask));
|
||||||
break;
|
break;
|
||||||
|
@ -3147,7 +3125,6 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
value += addend;
|
value += addend;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_PREL31:
|
case R_ARM_PREL31:
|
||||||
value -= (input_section->output_section->vma
|
value -= (input_section->output_section->vma
|
||||||
+ input_section->output_offset + rel->r_offset);
|
+ input_section->output_offset + rel->r_offset);
|
||||||
|
@ -3163,7 +3140,6 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
if (sym_flags == STT_ARM_TFUNC)
|
if (sym_flags == STT_ARM_TFUNC)
|
||||||
value |= 1;
|
value |= 1;
|
||||||
break;
|
break;
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bfd_put_32 (input_bfd, value, hit_data);
|
bfd_put_32 (input_bfd, value, hit_data);
|
||||||
|
@ -3218,9 +3194,7 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
bfd_put_16 (input_bfd, value, hit_data);
|
bfd_put_16 (input_bfd, value, hit_data);
|
||||||
return bfd_reloc_ok;
|
return bfd_reloc_ok;
|
||||||
|
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_THM_XPC22:
|
case R_ARM_THM_XPC22:
|
||||||
#endif
|
|
||||||
case R_ARM_THM_CALL:
|
case R_ARM_THM_CALL:
|
||||||
/* Thumb BL (branch long instruction). */
|
/* Thumb BL (branch long instruction). */
|
||||||
{
|
{
|
||||||
|
@ -3244,7 +3218,7 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
addend = (upper << 12) | (lower << 1);
|
addend = (upper << 12) | (lower << 1);
|
||||||
signed_addend = addend;
|
signed_addend = addend;
|
||||||
}
|
}
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
if (r_type == R_ARM_THM_XPC22)
|
if (r_type == R_ARM_THM_XPC22)
|
||||||
{
|
{
|
||||||
/* Check for Thumb to Thumb call. */
|
/* Check for Thumb to Thumb call. */
|
||||||
|
@ -3257,7 +3231,6 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
h ? h->root.root.string : "(local)");
|
h ? h->root.root.string : "(local)");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif
|
|
||||||
{
|
{
|
||||||
/* If it is not a call to Thumb, assume call to Arm.
|
/* If it is not a call to Thumb, assume call to Arm.
|
||||||
If it is a call relative to a section name, then it is not a
|
If it is a call relative to a section name, then it is not a
|
||||||
|
@ -3317,7 +3290,6 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
if (signed_check > reloc_signed_max || signed_check < reloc_signed_min)
|
if (signed_check > reloc_signed_max || signed_check < reloc_signed_min)
|
||||||
overflow = TRUE;
|
overflow = TRUE;
|
||||||
|
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
if ((r_type == R_ARM_THM_XPC22
|
if ((r_type == R_ARM_THM_XPC22
|
||||||
&& ((lower_insn & 0x1800) == 0x0800))
|
&& ((lower_insn & 0x1800) == 0x0800))
|
||||||
|| thumb_plt_call)
|
|| thumb_plt_call)
|
||||||
|
@ -3326,7 +3298,7 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
which specifies that bit 1 of the target address will come from bit
|
which specifies that bit 1 of the target address will come from bit
|
||||||
1 of the base address. */
|
1 of the base address. */
|
||||||
relocation = (relocation + 2) & ~ 3;
|
relocation = (relocation + 2) & ~ 3;
|
||||||
#endif
|
|
||||||
/* Put RELOCATION back into the insn. */
|
/* Put RELOCATION back into the insn. */
|
||||||
upper_insn = (upper_insn & ~(bfd_vma) 0x7ff) | ((relocation >> 12) & 0x7ff);
|
upper_insn = (upper_insn & ~(bfd_vma) 0x7ff) | ((relocation >> 12) & 0x7ff);
|
||||||
lower_insn = (lower_insn & ~(bfd_vma) 0x7ff) | ((relocation >> 1) & 0x7ff);
|
lower_insn = (lower_insn & ~(bfd_vma) 0x7ff) | ((relocation >> 1) & 0x7ff);
|
||||||
|
@ -3538,7 +3510,6 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
return bfd_reloc_ok;
|
return bfd_reloc_ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_ALU_PCREL7_0:
|
case R_ARM_ALU_PCREL7_0:
|
||||||
case R_ARM_ALU_PCREL15_8:
|
case R_ARM_ALU_PCREL15_8:
|
||||||
case R_ARM_ALU_PCREL23_15:
|
case R_ARM_ALU_PCREL23_15:
|
||||||
|
@ -3564,7 +3535,6 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
bfd_put_32 (input_bfd, value, hit_data);
|
bfd_put_32 (input_bfd, value, hit_data);
|
||||||
}
|
}
|
||||||
return bfd_reloc_ok;
|
return bfd_reloc_ok;
|
||||||
#endif
|
|
||||||
|
|
||||||
case R_ARM_GNU_VTINHERIT:
|
case R_ARM_GNU_VTINHERIT:
|
||||||
case R_ARM_GNU_VTENTRY:
|
case R_ARM_GNU_VTENTRY:
|
||||||
|
@ -3608,9 +3578,7 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
|
||||||
(bfd_vma) 0);
|
(bfd_vma) 0);
|
||||||
|
|
||||||
case R_ARM_GOT32:
|
case R_ARM_GOT32:
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_GOT_PREL:
|
case R_ARM_GOT_PREL:
|
||||||
#endif
|
|
||||||
/* Relocation is to the entry for this symbol in the
|
/* Relocation is to the entry for this symbol in the
|
||||||
global offset table. */
|
global offset table. */
|
||||||
if (sgot == NULL)
|
if (sgot == NULL)
|
||||||
|
@ -4007,10 +3975,8 @@ arm_add_to_rel (bfd * abfd,
|
||||||
|
|
||||||
case R_ARM_PC24:
|
case R_ARM_PC24:
|
||||||
case R_ARM_PLT32:
|
case R_ARM_PLT32:
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_CALL:
|
case R_ARM_CALL:
|
||||||
case R_ARM_JUMP24:
|
case R_ARM_JUMP24:
|
||||||
#endif
|
|
||||||
addend <<= howto->size;
|
addend <<= howto->size;
|
||||||
addend += increment;
|
addend += increment;
|
||||||
|
|
||||||
|
@ -4820,15 +4786,11 @@ elf32_arm_gc_sweep_hook (bfd * abfd,
|
||||||
}
|
}
|
||||||
|
|
||||||
r_type = ELF32_R_TYPE (rel->r_info);
|
r_type = ELF32_R_TYPE (rel->r_info);
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
r_type = arm_real_reloc_type (globals, r_type);
|
r_type = arm_real_reloc_type (globals, r_type);
|
||||||
#endif
|
|
||||||
switch (r_type)
|
switch (r_type)
|
||||||
{
|
{
|
||||||
case R_ARM_GOT32:
|
case R_ARM_GOT32:
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_GOT_PREL:
|
case R_ARM_GOT_PREL:
|
||||||
#endif
|
|
||||||
case R_ARM_TLS_GD32:
|
case R_ARM_TLS_GD32:
|
||||||
case R_ARM_TLS_IE32:
|
case R_ARM_TLS_IE32:
|
||||||
if (h != NULL)
|
if (h != NULL)
|
||||||
|
@ -4851,11 +4813,9 @@ elf32_arm_gc_sweep_hook (bfd * abfd,
|
||||||
case R_ARM_REL32:
|
case R_ARM_REL32:
|
||||||
case R_ARM_PC24:
|
case R_ARM_PC24:
|
||||||
case R_ARM_PLT32:
|
case R_ARM_PLT32:
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_CALL:
|
case R_ARM_CALL:
|
||||||
case R_ARM_JUMP24:
|
case R_ARM_JUMP24:
|
||||||
case R_ARM_PREL31:
|
case R_ARM_PREL31:
|
||||||
#endif
|
|
||||||
case R_ARM_THM_CALL:
|
case R_ARM_THM_CALL:
|
||||||
/* Should the interworking branches be here also? */
|
/* Should the interworking branches be here also? */
|
||||||
|
|
||||||
|
@ -4952,9 +4912,7 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
||||||
|
|
||||||
r_symndx = ELF32_R_SYM (rel->r_info);
|
r_symndx = ELF32_R_SYM (rel->r_info);
|
||||||
r_type = ELF32_R_TYPE (rel->r_info);
|
r_type = ELF32_R_TYPE (rel->r_info);
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
r_type = arm_real_reloc_type (htab, r_type);
|
r_type = arm_real_reloc_type (htab, r_type);
|
||||||
#endif
|
|
||||||
|
|
||||||
if (r_symndx >= NUM_SHDR_ENTRIES (symtab_hdr))
|
if (r_symndx >= NUM_SHDR_ENTRIES (symtab_hdr))
|
||||||
{
|
{
|
||||||
|
@ -4973,9 +4931,7 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
||||||
switch (r_type)
|
switch (r_type)
|
||||||
{
|
{
|
||||||
case R_ARM_GOT32:
|
case R_ARM_GOT32:
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_GOT_PREL:
|
case R_ARM_GOT_PREL:
|
||||||
#endif
|
|
||||||
case R_ARM_TLS_GD32:
|
case R_ARM_TLS_GD32:
|
||||||
case R_ARM_TLS_IE32:
|
case R_ARM_TLS_IE32:
|
||||||
/* This symbol requires a global offset table entry. */
|
/* This symbol requires a global offset table entry. */
|
||||||
|
@ -5055,11 +5011,9 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
||||||
case R_ARM_REL32:
|
case R_ARM_REL32:
|
||||||
case R_ARM_PC24:
|
case R_ARM_PC24:
|
||||||
case R_ARM_PLT32:
|
case R_ARM_PLT32:
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
case R_ARM_CALL:
|
case R_ARM_CALL:
|
||||||
case R_ARM_JUMP24:
|
case R_ARM_JUMP24:
|
||||||
case R_ARM_PREL31:
|
case R_ARM_PREL31:
|
||||||
#endif
|
|
||||||
case R_ARM_THM_CALL:
|
case R_ARM_THM_CALL:
|
||||||
/* Should the interworking branches be listed here? */
|
/* Should the interworking branches be listed here? */
|
||||||
if (h != NULL)
|
if (h != NULL)
|
||||||
|
@ -5078,11 +5032,9 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
||||||
sure yet, because something later might force the
|
sure yet, because something later might force the
|
||||||
symbol local. */
|
symbol local. */
|
||||||
if (r_type == R_ARM_PC24
|
if (r_type == R_ARM_PC24
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
|| r_type == R_ARM_CALL
|
|| r_type == R_ARM_CALL
|
||||||
|| r_type == R_ARM_JUMP24
|
|| r_type == R_ARM_JUMP24
|
||||||
|| r_type == R_ARM_PREL31
|
|| r_type == R_ARM_PREL31
|
||||||
#endif
|
|
||||||
|| r_type == R_ARM_PLT32
|
|| r_type == R_ARM_PLT32
|
||||||
|| r_type == R_ARM_THM_CALL)
|
|| r_type == R_ARM_THM_CALL)
|
||||||
h->needs_plt = 1;
|
h->needs_plt = 1;
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2005-05-18 Zack Weinberg <zack@codesourcery.com>
|
||||||
|
|
||||||
|
* arm.h: Make all #ifndef OLD_ARM_ABI blocks
|
||||||
|
unconditional, delete all #ifdef OLD_ARM_ABI blocks.
|
||||||
|
|
||||||
2005-05-17 Zack Weinberg <zack@codesourcery.com>
|
2005-05-17 Zack Weinberg <zack@codesourcery.com>
|
||||||
|
|
||||||
* arm.h: Import complete list of official relocation names
|
* arm.h: Import complete list of official relocation names
|
||||||
|
|
|
@ -89,7 +89,6 @@ START_RELOC_NUMBERS (elf_arm_reloc_type)
|
||||||
RELOC_NUMBER (R_ARM_PC24, 1) /* deprecated */
|
RELOC_NUMBER (R_ARM_PC24, 1) /* deprecated */
|
||||||
RELOC_NUMBER (R_ARM_ABS32, 2)
|
RELOC_NUMBER (R_ARM_ABS32, 2)
|
||||||
RELOC_NUMBER (R_ARM_REL32, 3)
|
RELOC_NUMBER (R_ARM_REL32, 3)
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
RELOC_NUMBER (R_ARM_LDR_PC_G0, 4)
|
RELOC_NUMBER (R_ARM_LDR_PC_G0, 4)
|
||||||
RELOC_NUMBER (R_ARM_ABS16, 5)
|
RELOC_NUMBER (R_ARM_ABS16, 5)
|
||||||
RELOC_NUMBER (R_ARM_ABS12, 6)
|
RELOC_NUMBER (R_ARM_ABS12, 6)
|
||||||
|
@ -101,19 +100,6 @@ START_RELOC_NUMBERS (elf_arm_reloc_type)
|
||||||
RELOC_NUMBER (R_ARM_BREL_ADJ, 12)
|
RELOC_NUMBER (R_ARM_BREL_ADJ, 12)
|
||||||
RELOC_NUMBER (R_ARM_SWI24, 13) /* obsolete */
|
RELOC_NUMBER (R_ARM_SWI24, 13) /* obsolete */
|
||||||
RELOC_NUMBER (R_ARM_THM_SWI8, 14) /* obsolete */
|
RELOC_NUMBER (R_ARM_THM_SWI8, 14) /* obsolete */
|
||||||
#else
|
|
||||||
RELOC_NUMBER (R_ARM_ABS8, 4)
|
|
||||||
RELOC_NUMBER (R_ARM_ABS16, 5)
|
|
||||||
RELOC_NUMBER (R_ARM_ABS12, 6)
|
|
||||||
RELOC_NUMBER (R_ARM_THM_ABS5, 7)
|
|
||||||
RELOC_NUMBER (R_ARM_THM_CALL, 8)
|
|
||||||
RELOC_NUMBER (R_ARM_SBREL32, 9)
|
|
||||||
RELOC_NUMBER (R_ARM_BREL_ADJ, 10)
|
|
||||||
RELOC_NUMBER (R_ARM_THM_JUMP11, 11)
|
|
||||||
RELOC_NUMBER (R_ARM_THM_JUMP8, 12)
|
|
||||||
RELOC_NUMBER (R_ARM_GNU_VTINHERIT, 13)
|
|
||||||
RELOC_NUMBER (R_ARM_GNU_VTENTRY, 14)
|
|
||||||
#endif
|
|
||||||
RELOC_NUMBER (R_ARM_XPC25, 15) /* obsolete */
|
RELOC_NUMBER (R_ARM_XPC25, 15) /* obsolete */
|
||||||
RELOC_NUMBER (R_ARM_THM_XPC22, 16) /* obsolete */
|
RELOC_NUMBER (R_ARM_THM_XPC22, 16) /* obsolete */
|
||||||
RELOC_NUMBER (R_ARM_TLS_DTPMOD32, 17)
|
RELOC_NUMBER (R_ARM_TLS_DTPMOD32, 17)
|
||||||
|
@ -196,12 +182,10 @@ START_RELOC_NUMBERS (elf_arm_reloc_type)
|
||||||
RELOC_NUMBER (R_ARM_GOT_BREL12, 97)
|
RELOC_NUMBER (R_ARM_GOT_BREL12, 97)
|
||||||
RELOC_NUMBER (R_ARM_GOTOFF12, 98)
|
RELOC_NUMBER (R_ARM_GOTOFF12, 98)
|
||||||
RELOC_NUMBER (R_ARM_GOTRELAX, 99)
|
RELOC_NUMBER (R_ARM_GOTRELAX, 99)
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
RELOC_NUMBER (R_ARM_GNU_VTENTRY, 100) /* deprecated - old C++ abi */
|
RELOC_NUMBER (R_ARM_GNU_VTENTRY, 100) /* deprecated - old C++ abi */
|
||||||
RELOC_NUMBER (R_ARM_GNU_VTINHERIT, 101) /* deprecated - old C++ abi */
|
RELOC_NUMBER (R_ARM_GNU_VTINHERIT, 101) /* deprecated - old C++ abi */
|
||||||
RELOC_NUMBER (R_ARM_THM_JUMP11, 102)
|
RELOC_NUMBER (R_ARM_THM_JUMP11, 102)
|
||||||
RELOC_NUMBER (R_ARM_THM_JUMP8, 103)
|
RELOC_NUMBER (R_ARM_THM_JUMP8, 103)
|
||||||
#endif
|
|
||||||
RELOC_NUMBER (R_ARM_TLS_GD32, 104)
|
RELOC_NUMBER (R_ARM_TLS_GD32, 104)
|
||||||
RELOC_NUMBER (R_ARM_TLS_LDM32, 105)
|
RELOC_NUMBER (R_ARM_TLS_LDM32, 105)
|
||||||
RELOC_NUMBER (R_ARM_TLS_LDO32, 106)
|
RELOC_NUMBER (R_ARM_TLS_LDO32, 106)
|
||||||
|
@ -234,9 +218,7 @@ START_RELOC_NUMBERS (elf_arm_reloc_type)
|
||||||
FAKE_RELOC (R_ARM_GOT32, R_ARM_GOT_BREL) /* 32 bit GOT entry. */
|
FAKE_RELOC (R_ARM_GOT32, R_ARM_GOT_BREL) /* 32 bit GOT entry. */
|
||||||
FAKE_RELOC (R_ARM_ROSEGREL32, R_ARM_SBREL31) /* ??? */
|
FAKE_RELOC (R_ARM_ROSEGREL32, R_ARM_SBREL31) /* ??? */
|
||||||
FAKE_RELOC (R_ARM_AMP_VCALL9, R_ARM_BREL_ADJ) /* Thumb-something. Not used. */
|
FAKE_RELOC (R_ARM_AMP_VCALL9, R_ARM_BREL_ADJ) /* Thumb-something. Not used. */
|
||||||
#ifndef OLD_ARM_ABI
|
|
||||||
FAKE_RELOC (R_ARM_PC13, R_ARM_LDR_PC_G0) /* Unclear whether meaning is different. */
|
FAKE_RELOC (R_ARM_PC13, R_ARM_LDR_PC_G0) /* Unclear whether meaning is different. */
|
||||||
#endif
|
|
||||||
END_RELOC_NUMBERS (R_ARM_max)
|
END_RELOC_NUMBERS (R_ARM_max)
|
||||||
|
|
||||||
/* The name of the note section used to identify arm variants. */
|
/* The name of the note section used to identify arm variants. */
|
||||||
|
|
Loading…
Reference in a new issue