aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-sparc.h
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1999-07-27 19:26:39 +0000
committerIan Lance Taylor <ian@airs.com>1999-07-27 19:26:39 +0000
commitd2e71411fe9d73b4036bd8396e5dafa26e5780db (patch)
tree4272b6ac0eeb65af1be8f8827975e4408b167e0e /gas/config/tc-sparc.h
parentf81112823f68bcfb92e3a132d405cd2c8c13322a (diff)
downloadgdb-d2e71411fe9d73b4036bd8396e5dafa26e5780db.zip
gdb-d2e71411fe9d73b4036bd8396e5dafa26e5780db.tar.gz
gdb-d2e71411fe9d73b4036bd8396e5dafa26e5780db.tar.bz2
* config/tc-sparc.h (tc_fix_adjustable): Don't adjust GOT, PLT, or
VTABLE relocations.
Diffstat (limited to 'gas/config/tc-sparc.h')
-rw-r--r--gas/config/tc-sparc.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gas/config/tc-sparc.h b/gas/config/tc-sparc.h
index 40ab02c8..5df81b7 100644
--- a/gas/config/tc-sparc.h
+++ b/gas/config/tc-sparc.h
@@ -127,6 +127,12 @@ extern int elf32_sparc_force_relocation PARAMS ((struct fix *));
#define tc_fix_adjustable(FIX) \
(! S_IS_EXTERNAL ((FIX)->fx_addsy) \
&& ! S_IS_WEAK ((FIX)->fx_addsy) \
+ && (FIX)->fx_r_type != BFD_RELOC_SPARC_GOT10 \
+ && (FIX)->fx_r_type != BFD_RELOC_SPARC_GOT13 \
+ && (FIX)->fx_r_type != BFD_RELOC_SPARC_GOT22 \
+ && (FIX)->fx_r_type != BFD_RELOC_SPARC_WPLT30 \
+ && (FIX)->fx_r_type != BFD_RELOC_VTABLE_INHERIT \
+ && (FIX)->fx_r_type != BFD_RELOC_VTABLE_ENTRY \
&& (! sparc_pic_code \
|| (FIX)->fx_pcrel \
|| ((FIX)->fx_subsy != NULL \