aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf32-arm.h
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/elf32-arm.h')
-rw-r--r--bfd/elf32-arm.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/bfd/elf32-arm.h b/bfd/elf32-arm.h
index b64df9a..666e9cc 100644
--- a/bfd/elf32-arm.h
+++ b/bfd/elf32-arm.h
@@ -1434,6 +1434,7 @@ elf32_arm_final_link_relocate (howto, input_bfd, output_bfd,
upper_insn = (upper_insn & ~(bfd_vma) 0x7ff) | ((relocation >> 12) & 0x7ff);
lower_insn = (lower_insn & ~(bfd_vma) 0x7ff) | ((relocation >> 1) & 0x7ff);
+#ifndef OLD_ARM_ABI
if (r_type == R_ARM_THM_XPC22
&& ((lower_insn & 0x1800) == 0x0800))
/* Remove bit zero of the adjusted offset. Bit zero can only be
@@ -1444,7 +1445,7 @@ elf32_arm_final_link_relocate (howto, input_bfd, output_bfd,
corresponding bit one in the target address will be set from bit
one of the source address. */
lower_insn &= ~1;
-
+#endif
/* Put the relocated value back in the object file: */
bfd_put_16 (input_bfd, upper_insn, hit_data);
bfd_put_16 (input_bfd, lower_insn, hit_data + 2);