Browse Source

* elf32-arm.c (elf32_arm_howto_table_1): Correct bitsize of

R_ARM_THM_CALL entry.
	(elf32_arm_final_link_relocate): Correct calculation of
	reloc_signed_max when doing a R_ARM_THM_CALL, R_ARM_THM_XPC22,
	or R_ARM_THM_JUMP24 relocation.
gdb_7_1-branch
Alan Modra 17 years ago
parent
commit
f6ebfac085
  1. 8
      bfd/ChangeLog
  2. 6
      bfd/elf32-arm.c

8
bfd/ChangeLog

@ -1,3 +1,11 @@
2010-01-19 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
* elf32-arm.c (elf32_arm_howto_table_1): Correct bitsize of
R_ARM_THM_CALL entry.
(elf32_arm_final_link_relocate): Correct calculation of
reloc_signed_max when doing a R_ARM_THM_CALL, R_ARM_THM_XPC22,
or R_ARM_THM_JUMP24 relocation.
2010-01-18 Alan Modra <amodra@gmail.com>
PR 11168

6
bfd/elf32-arm.c

@ -1,6 +1,6 @@
/* 32-bit ELF support for ARM
Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
2008, 2009 Free Software Foundation, Inc.
2008, 2009, 2010 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@ -222,7 +222,7 @@ static reloc_howto_type elf32_arm_howto_table_1[] =
HOWTO (R_ARM_THM_CALL, /* type */
1, /* rightshift */
2, /* size (0 = byte, 1 = short, 2 = long) */
25, /* bitsize */
24, /* bitsize */
TRUE, /* pc_relative */
0, /* bitpos */
complain_overflow_signed,/* complain_on_overflow */
@ -7552,7 +7552,7 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
bitsize = howto->bitsize;
if (!thumb2)
bitsize -= 2;
reloc_signed_max = ((1 << (bitsize - 1)) - 1) >> howto->rightshift;
reloc_signed_max = (1 << (bitsize - 1)) - 1;
reloc_signed_min = ~reloc_signed_max;
/* Assumes two's complement. */

Loading…
Cancel
Save