Browse Source

gas/

2009-09-23  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386.h (TC_FORCE_RELOCATION_LOCAL): Don't check
	BFD_RELOC_386_GOT32.

gas/testsuite/

2009-09-23  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/i386/i386.exp: Run localpic.

	* gas/i386/localpic.d: New.
	* gas/i386/localpic.s: Likewise.
gdb_7_1-branch
H.J. Lu 17 years ago
parent
commit
2a86604a47
  1. 5
      gas/ChangeLog
  2. 6
      gas/config/tc-i386.h
  3. 7
      gas/testsuite/ChangeLog
  4. 1
      gas/testsuite/gas/i386/i386.exp
  5. 6
      gas/testsuite/gas/i386/localpic.d
  6. 5
      gas/testsuite/gas/i386/localpic.s

5
gas/ChangeLog

@ -1,3 +1,8 @@
2009-09-23 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.h (TC_FORCE_RELOCATION_LOCAL): Don't check
BFD_RELOC_386_GOT32.
2009-09-23 Sterling Augustine <sterling@jaw.hq.tensilica.com>
* config/tc-xtensa.c (md_apply_fix): Remove check for constant with

6
gas/config/tc-i386.h

@ -149,14 +149,12 @@ extern int tc_i386_fix_adjustable (struct fix *);
/* This expression evaluates to true if the relocation is for a local
object for which we still want to do the relocation at runtime.
False if we are willing to perform this relocation while building
the .o file. GOTOFF does not need to be checked here because it is
not pcrel. I am not sure if some of the others are ever used with
pcrel, but it is easier to be safe than sorry. */
the .o file. GOTOFF and GOT32 do not need to be checked here because
they are not pcrel. .*/
#define TC_FORCE_RELOCATION_LOCAL(FIX) \
(!(FIX)->fx_pcrel \
|| (FIX)->fx_r_type == BFD_RELOC_386_PLT32 \
|| (FIX)->fx_r_type == BFD_RELOC_386_GOT32 \
|| (FIX)->fx_r_type == BFD_RELOC_386_GOTPC \
|| TC_FORCE_RELOCATION (FIX))

7
gas/testsuite/ChangeLog

@ -1,3 +1,10 @@
2009-09-23 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/i386.exp: Run localpic.
* gas/i386/localpic.d: New.
* gas/i386/localpic.s: Likewise.
2009-09-23 Alan Modra <amodra@bigpond.net.au>
* gas/arm/thumbver.d: Tolerate some whitespace differences.

1
gas/testsuite/gas/i386/i386.exp

@ -192,6 +192,7 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_32_check]]
run_list_test "inval-equ-2" "-al"
run_dump_test "ifunc"
run_list_test "l1om-inval" "-march=l1om --32"
run_dump_test "localpic"
}
# This is a PE specific test.

6
gas/testsuite/gas/i386/localpic.d

@ -0,0 +1,6 @@
#readelf: -r
#name: i386 local PIC
Relocation section '.rel.text' at offset 0x[0-9a-f]+ contains 1 entries:
Offset Info Type Sym.Value Sym. Name
[0-9a-f]+ +[0-9a-f]+ R_386_GOT32 +[0-9a-f]+ +foo

5
gas/testsuite/gas/i386/localpic.s

@ -0,0 +1,5 @@
.data
foo:
.long 0
.text
movl foo@GOT(%ecx), %eax
Loading…
Cancel
Save