aboutsummaryrefslogtreecommitdiff
path: root/gas/config
diff options
context:
space:
mode:
authorDave Anglin <dave.anglin@nrc.ca>2004-06-11 17:36:32 +0000
committerDave Anglin <dave.anglin@nrc.ca>2004-06-11 17:36:32 +0000
commit2337eb33bbd1531861d20eec91b34186dd1dbe62 (patch)
treed6ae44d8278e83e26baa97c3314e0df05d02604b /gas/config
parente9edc8084b1987429153078e465b731dbb88b47d (diff)
downloadbinutils-2337eb33bbd1531861d20eec91b34186dd1dbe62.zip
binutils-2337eb33bbd1531861d20eec91b34186dd1dbe62.tar.gz
binutils-2337eb33bbd1531861d20eec91b34186dd1dbe62.tar.bz2
Bug gas/213
* config/tc-hppa.c (hppa_fix_adjustable): Allow reduction of fake labels. Fix warning.
Diffstat (limited to 'gas/config')
-rw-r--r--gas/config/tc-hppa.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c
index 72abe1d..8eff366 100644
--- a/gas/config/tc-hppa.c
+++ b/gas/config/tc-hppa.c
@@ -8402,14 +8402,21 @@ int
hppa_fix_adjustable (fixp)
fixS *fixp;
{
+#ifdef OBJ_ELF
reloc_type code;
+#endif
struct hppa_fix_struct *hppa_fix;
hppa_fix = (struct hppa_fix_struct *) fixp->tc_fix_data;
#ifdef OBJ_SOM
- /* Reject reductions of symbols in 32bit relocs. */
- if (fixp->fx_r_type == R_HPPA && hppa_fix->fx_r_format == 32)
+ /* Reject reductions of symbols in 32bit relocs unless they
+ are fake labels. */
+ if (fixp->fx_r_type == R_HPPA
+ && hppa_fix->fx_r_format == 32
+ && strncmp (S_GET_NAME (fixp->fx_addsy),
+ FAKE_LABEL_NAME,
+ strlen (FAKE_LABEL_NAME)))
return 0;
#endif