mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-01-30 12:44:10 +08:00
gas/
2008-07-07 Paul Brook <paul@codesourcery.com> * config/tc-arm.c (arm_fix_adjustable): Don't adjust MOVW/MOVT relocations. gas/testsuite/ 2008-07-07 Paul Brook <paul@codesourcery.com> * gas/arm/movw-local.d: New test. * gas/arm/movw-local.s: New test.
This commit is contained in:
parent
c27e721e3e
commit
79947c5421
@ -1,3 +1,8 @@
|
||||
2008-07-07 Paul Brook <paul@codesourcery.com>
|
||||
|
||||
* config/tc-arm.c (arm_fix_adjustable): Don't adjust MOVW/MOVT
|
||||
relocations.
|
||||
|
||||
2008-07-07 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.tgt: Add bfin-*-rtems*.
|
||||
|
@ -19420,6 +19420,17 @@ arm_fix_adjustable (fixS * fixP)
|
||||
|| fixP->fx_r_type == BFD_RELOC_ARM_LDR_PC_G0)
|
||||
return 0;
|
||||
|
||||
/* MOVW/MOVT REL relocations have limited offsets, so keep the symbols. */
|
||||
if (fixP->fx_r_type == BFD_RELOC_ARM_MOVW
|
||||
|| fixP->fx_r_type == BFD_RELOC_ARM_MOVT
|
||||
|| fixP->fx_r_type == BFD_RELOC_ARM_MOVW_PCREL
|
||||
|| fixP->fx_r_type == BFD_RELOC_ARM_MOVT_PCREL
|
||||
|| fixP->fx_r_type == BFD_RELOC_ARM_THUMB_MOVW
|
||||
|| fixP->fx_r_type == BFD_RELOC_ARM_THUMB_MOVT
|
||||
|| fixP->fx_r_type == BFD_RELOC_ARM_THUMB_MOVW_PCREL
|
||||
|| fixP->fx_r_type == BFD_RELOC_ARM_THUMB_MOVT_PCREL)
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
#endif /* defined (OBJ_ELF) || defined (OBJ_COFF) */
|
||||
|
@ -1,3 +1,8 @@
|
||||
2008-07-07 Paul Brook <paul@codesourcery.com>
|
||||
|
||||
* gas/arm/movw-local.d: New test.
|
||||
* gas/arm/movw-local.s: New test.
|
||||
|
||||
2008-06-27 Chao-ying Fu <fu@mips.com>
|
||||
|
||||
* gas/mips/odd-float.d: Replace ... with #pass.
|
||||
|
16
gas/testsuite/gas/arm/movw-local.d
Normal file
16
gas/testsuite/gas/arm/movw-local.d
Normal file
@ -0,0 +1,16 @@
|
||||
#objdump: -dr --prefix-addresses --show-raw-insn
|
||||
#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
|
||||
#name: MOVW/MOVT relocations against local symbols
|
||||
|
||||
.*: +file format .*arm.*
|
||||
|
||||
Disassembly of section .text:
|
||||
0[0-9a-f]+ <[^>]+> e3000000 movw r0, #0 ; 0x0
|
||||
0: R_ARM_MOVW_ABS_NC bar
|
||||
0[0-9a-f]+ <[^>]+> e3400000 movt r0, #0 ; 0x0
|
||||
4: R_ARM_MOVT_ABS bar
|
||||
0[0-9a-f]+ <[^>]+> f240 0000 movw r0, #0 ; 0x0
|
||||
8: R_ARM_THM_MOVW_ABS_NC bar
|
||||
0[0-9a-f]+ <[^>]+> f2c0 0000 movt r0, #0 ; 0x0
|
||||
c: R_ARM_THM_MOVT_ABS bar
|
||||
#...
|
13
gas/testsuite/gas/arm/movw-local.s
Normal file
13
gas/testsuite/gas/arm/movw-local.s
Normal file
@ -0,0 +1,13 @@
|
||||
.arch armv7-a
|
||||
.text
|
||||
.syntax unified
|
||||
foo:
|
||||
movw r0, #:lower16: bar
|
||||
movt r0, #:upper16: bar
|
||||
.thumb
|
||||
movw r0, #:lower16: bar
|
||||
movt r0, #:upper16: bar
|
||||
|
||||
.space 0x10000
|
||||
|
||||
bar:
|
Loading…
Reference in New Issue
Block a user