mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-25 04:49:54 +08:00
2006-05-11 Paul Brook <paul@codesourcery.com>
gas/ * config/tc-arm.c (arm_fix_adjustable): Return 0 for function symbols. gas/testsuite/ * gas/arm/local_function.d: New test. * gas/arm/local_function.s: New test.
This commit is contained in:
@ -1,3 +1,7 @@
|
||||
2006-05-11 Paul Brook <paul@codesourcery.com>
|
||||
|
||||
* config/tc-arm.c (arm_fix_adjustable): Return 0 for function symbols.
|
||||
|
||||
2006-05-11 Thiemo Seufer <ths@mips.com>
|
||||
|
||||
* config/tc-mips.c (append_insn): Don't check the range of j or
|
||||
|
@ -17053,9 +17053,9 @@ arm_fix_adjustable (fixS * fixP)
|
||||
#endif
|
||||
|
||||
#ifdef OBJ_ELF
|
||||
/* Relocations against Thumb function names must be left unadjusted,
|
||||
so that the linker can use this information to correctly set the
|
||||
bottom bit of their addresses. The MIPS version of this function
|
||||
/* Relocations against function names must be left unadjusted,
|
||||
so that the linker can use this information to generate interworking
|
||||
stubs. The MIPS version of this function
|
||||
also prevents relocations that are mips-16 specific, but I do not
|
||||
know why it does this.
|
||||
|
||||
@ -17072,6 +17072,10 @@ arm_fix_adjustable (fixS * fixP)
|
||||
if (fixP->fx_addsy == NULL)
|
||||
return 1;
|
||||
|
||||
/* Preserve relocations against symbols with function type. */
|
||||
if (symbol_get_bfdsym (fixP->fx_addsy)->flags & BSF_FUNCTION)
|
||||
return 0;
|
||||
|
||||
if (THUMB_IS_FUNC (fixP->fx_addsy)
|
||||
&& fixP->fx_subsy == NULL)
|
||||
return 0;
|
||||
|
@ -1,3 +1,8 @@
|
||||
2006-05-11 Paul Brook <paul@codesourcery.com>
|
||||
|
||||
* gas/arm/local_function.d: New test.
|
||||
* gas/arm/local_function.s: New test.
|
||||
|
||||
2006-05-11 Thiemo Seufer <ths@mips.com>
|
||||
|
||||
* gas/mips/jal-range.l: Don't check the range of j or jal
|
||||
|
10
gas/testsuite/gas/arm/local_function.d
Normal file
10
gas/testsuite/gas/arm/local_function.d
Normal file
@ -0,0 +1,10 @@
|
||||
#objdump: -r
|
||||
#name: Relocations agains local function symbols
|
||||
# This test is only valid on ELF based ports.
|
||||
#not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
|
||||
|
||||
.*: file format.*
|
||||
|
||||
RELOCATION RECORDS FOR \[.text\]:
|
||||
OFFSET TYPE VALUE
|
||||
00000000 R_ARM_(CALL|PC24) bar
|
10
gas/testsuite/gas/arm/local_function.s
Normal file
10
gas/testsuite/gas/arm/local_function.s
Normal file
@ -0,0 +1,10 @@
|
||||
.text
|
||||
.type foo, %function
|
||||
foo:
|
||||
bl bar
|
||||
|
||||
.section .text.bar
|
||||
nop
|
||||
.type bar, %function
|
||||
bar:
|
||||
nop
|
Reference in New Issue
Block a user