aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Jaeger <aj@suse.de>2001-02-28 12:49:40 +0000
committerAndreas Jaeger <aj@suse.de>2001-02-28 12:49:40 +0000
commit7c44d1d36023fecce76b8805c7349af3be41e0f2 (patch)
treef23400927793256dff285ac242d3834e61004ed7
parent5608e05bb4ef95fdd0051137ed7db8d1a29ee5ea (diff)
downloadgdb-7c44d1d36023fecce76b8805c7349af3be41e0f2.zip
gdb-7c44d1d36023fecce76b8805c7349af3be41e0f2.tar.gz
gdb-7c44d1d36023fecce76b8805c7349af3be41e0f2.tar.bz2
2001-02-28 Andreas Jaeger <aj@suse.de>, Bo Thorsen <bo@suse.de>
* config/tc-i386.c (tc_gen_reloc): Remove ugly hack which is not needed anymore since we use bfd_elf_generic_reloc now. (md_apply_fix3): Only apply hack for partial_inplace if not using RELA.
-rw-r--r--gas/ChangeLog10
-rw-r--r--gas/config/tc-i386.c11
2 files changed, 9 insertions, 12 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 712d237..879405e 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2001-02-28 Andreas Jaeger <aj@suse.de>, Bo Thorsen <bo@suse.de>
+
+ * config/tc-i386.c (tc_gen_reloc): Remove ugly hack which is not needed
+ anymore since we use bfd_elf_generic_reloc now.
+ (md_apply_fix3): Only apply hack for partial_inplace if not using RELA.
+
2001-02-27 Alan Modra <alan@linuxcare.com.au>
* configure.in (BFD_VERSION): New.
@@ -37,7 +43,7 @@
* Makefile.in: Regenerated.
* configure.in: Added configuration for ia64-*-aix*.
* configure: Regenerated.
-
+
2001-02-21 David Mosberger <davidm@hpl.hp.com>
* config/tc-ia64.c (enum operand_match_result): New type.
@@ -47,7 +53,7 @@
(parse_operands): New locals result, error_pos, out_of_range_pos,
curr_out_of_range_pos. Rewrite operand matching loop to give better
error messages.
-
+
2001-02-21 David Mosberger <davidm@hpl.hp.com>
* config/tc-ia64.c (struct unwind): Add member "prologue_count".
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 105848d..f3249ff 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -4197,7 +4197,7 @@ md_apply_fix3 (fixP, valp, seg)
if ((fixP->fx_r_type == BFD_RELOC_32_PCREL
|| fixP->fx_r_type == BFD_RELOC_16_PCREL
|| fixP->fx_r_type == BFD_RELOC_8_PCREL)
- && fixP->fx_addsy)
+ && fixP->fx_addsy && !use_rela_relocations)
{
#ifndef OBJ_AOUT
if (OUTPUT_FLAVOR == bfd_target_elf_flavour
@@ -4782,15 +4782,6 @@ tc_gen_reloc (section, fixp)
else
{
rel->addend = fixp->fx_offset;
-#ifdef OBJ_ELF
- /* Ohhh, this is ugly. The problem is that if this is a local global
- symbol, the relocation will entirely be performed at link time, not
- at assembly time. bfd_perform_reloc doesn't know about this sort
- of thing, and as a result we need to fake it out here. */
- if ((S_IS_EXTERN (fixp->fx_addsy) || S_IS_WEAK (fixp->fx_addsy))
- && !S_IS_COMMON (fixp->fx_addsy))
- rel->addend -= symbol_get_bfdsym (fixp->fx_addsy)->value;
-#endif
if (fixp->fx_pcrel)
rel->addend -= fixp->fx_size;
}