diff options
author | Ian Lance Taylor <ian@airs.com> | 1998-01-28 18:49:01 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1998-01-28 18:49:01 +0000 |
commit | 8fb6931a285365089b3e285f13c2f54fcba2a41c (patch) | |
tree | a742fce8d2dc51e4a92d5cdd5b604aa3c1f4d57e /gas | |
parent | 36df40e0bfd939c01dd47e977853a7e67ce65976 (diff) | |
download | gdb-8fb6931a285365089b3e285f13c2f54fcba2a41c.zip gdb-8fb6931a285365089b3e285f13c2f54fcba2a41c.tar.gz gdb-8fb6931a285365089b3e285f13c2f54fcba2a41c.tar.bz2 |
* config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Define.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 4 | ||||
-rw-r--r-- | gas/config/obj-coff.h | 12 |
2 files changed, 16 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 67ed5c5..3d3edd3 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,7 @@ +Wed Jan 28 13:48:08 1998 Ian Lance Taylor <ian@cygnus.com> + + * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Define. + Fri Jan 28 10:18:06 1998 Bill Moyer <billm@cygnus.com> * as.h (flag_warn_instructionswap): added new flag variable. diff --git a/gas/config/obj-coff.h b/gas/config/obj-coff.h index ed41cd0..0148c63 100644 --- a/gas/config/obj-coff.h +++ b/gas/config/obj-coff.h @@ -795,6 +795,18 @@ extern void obj_coff_pe_handle_link_once (); #endif /* not BFD_ASSEMBLER */ +/* In COFF, if a symbol is defined using .def/.val SYM/.endef, it's OK + to redefine the symbol later on. This can happen if C symbols use + a prefix, and a symbol is defined both with and without the prefix, + as in start/_start/__start in gcc/libgcc1-test.c. */ +#define RESOLVE_SYMBOL_REDEFINITION(sym) \ +(SF_GET_GET_SEGMENT (sym) \ + ? (sym->sy_frag = frag_now, \ + S_SET_VALUE (sym, frag_now_fix ()), \ + S_SET_SEGMENT (sym, now_seg), \ + 0) \ + : 0) + /* Stabs in a coff file go into their own section. */ #define SEPARATE_STAB_SECTIONS 1 |