diff options
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 4 | ||||
-rw-r--r-- | gas/config/tc-i386.c | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index be5985d..3a478ff 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,7 @@ +2003-11-11 Jan Hubicka <jh@suse.cz> + + * config/tc-i386.c (tc_i386_fix_adjustable): + 2003-11-10 Alan Modra <amodra@bigpond.net.au> * config/tc-ia64.c (ia64_handle_align): Remove bogus be_nop. diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 81e6c1c..be1e621 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -1225,6 +1225,12 @@ tc_i386_fix_adjustable (fixP) && fixP->fx_pcrel) return 0; + /* The x86_64 GOTPCREL are represented as 32bit PCrel relocations + and changed later by validate_fix. */ + if (GOT_symbol && fixP->fx_subsy == GOT_symbol + && fixP->fx_r_type == BFD_RELOC_32_PCREL) + return 0; + /* adjust_reloc_syms doesn't know about the GOT. */ if (fixP->fx_r_type == BFD_RELOC_386_GOTOFF || fixP->fx_r_type == BFD_RELOC_386_PLT32 |