diff options
author | Dave Anglin <dave.anglin@nrc.ca> | 2004-06-11 17:36:32 +0000 |
---|---|---|
committer | Dave Anglin <dave.anglin@nrc.ca> | 2004-06-11 17:36:32 +0000 |
commit | 2337eb33bbd1531861d20eec91b34186dd1dbe62 (patch) | |
tree | d6ae44d8278e83e26baa97c3314e0df05d02604b /gas | |
parent | e9edc8084b1987429153078e465b731dbb88b47d (diff) | |
download | gdb-2337eb33bbd1531861d20eec91b34186dd1dbe62.zip gdb-2337eb33bbd1531861d20eec91b34186dd1dbe62.tar.gz gdb-2337eb33bbd1531861d20eec91b34186dd1dbe62.tar.bz2 |
Bug gas/213
* config/tc-hppa.c (hppa_fix_adjustable): Allow reduction of fake
labels. Fix warning.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 6 | ||||
-rw-r--r-- | gas/config/tc-hppa.c | 11 |
2 files changed, 15 insertions, 2 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 3f4b71f..82915a5 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2004-06-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + Bug gas/213 + * config/tc-hppa.c (hppa_fix_adjustable): Allow reduction of fake + labels. Fix warning. + 2004-05-28 DJ Delorie <dj@redhat.com> * config/tc-mn10300.h (tc_fix_adjustable): Define. 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 |