diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2004-11-09 01:01:17 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2004-11-09 01:01:17 +0000 |
commit | a77a9021ea85cf83d077a32391e682c6320adc88 (patch) | |
tree | bef95fc39fbd99b17987e219ffb381be9be38a85 | |
parent | 3b78cdbb321bb2d9904f8671eba09ac0ffab1f3b (diff) | |
download | gdb-a77a9021ea85cf83d077a32391e682c6320adc88.zip gdb-a77a9021ea85cf83d077a32391e682c6320adc88.tar.gz gdb-a77a9021ea85cf83d077a32391e682c6320adc88.tar.bz2 |
2004-11-08 H.J. Lu <hongjiu.lu@intel.com>
PR 528
* symbols.c (resolve_symbol_value): Convert weak symbols only
for Windows PECOFF.
(symbol_equated_reloc_p): Don't equate weaks when relocating
only for Windows PECOFF.
-rw-r--r-- | gas/ChangeLog | 10 | ||||
-rw-r--r-- | gas/symbols.c | 4 |
2 files changed, 11 insertions, 3 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 46acfb7..808fe69 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,11 @@ +2004-11-08 H.J. Lu <hongjiu.lu@intel.com> + + PR 528 + * symbols.c (resolve_symbol_value): Convert weak symbols only + for Windows PECOFF. + (symbol_equated_reloc_p): Don't equate weaks when relocating + only for Windows PECOFF. + 2004-11-08 Tomer Levi <Tomer.Levi@nsc.com> * config/tc-crx.c (print_insn): Check and set insn_addr. @@ -16,7 +24,7 @@ 2004-11-08 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com> * symbols.c (any_external_name): Define. - (resolve_symbol_value): Do not convert weak symbols. + (resolve_symbol_value): Convert weak symbols. (S_SET_EXTERNAL): Support any_external_name. (S_SET_NAME): Qualify parameter const. (symbol_equated_reloc_p): Don't equate weaks when relocating. diff --git a/gas/symbols.c b/gas/symbols.c index 135c7ef..04e239a 100644 --- a/gas/symbols.c +++ b/gas/symbols.c @@ -995,7 +995,7 @@ resolve_symbol_value (symbolS *symp) relocation to be against the symbol to which this symbol is equated. */ if (! S_IS_DEFINED (add_symbol) -#if defined(BFD_ASSEMBLER) || defined(S_IS_WEAK) +#if defined (OBJ_COFF) && defined (TE_PE) && (defined(BFD_ASSEMBLER) || defined(S_IS_WEAK)) || S_IS_WEAK (add_symbol) #endif || S_IS_COMMON (add_symbol)) @@ -2239,7 +2239,7 @@ symbol_equated_reloc_p (symbolS *s) resolve_symbol_value to flag expression syms that have been equated. */ return (s->sy_value.X_op == O_symbol -#if defined(BFD_ASSEMBLER) || defined(S_IS_WEAK) +#if defined (OBJ_COFF) && defined (TE_PE) && (defined(BFD_ASSEMBLER) || defined(S_IS_WEAK)) && ! S_IS_WEAK (s) #endif && ((s->sy_resolved && s->sy_value.X_op_symbol != NULL) |