diff options
author | DJ Delorie <dj@redhat.com> | 2000-07-20 23:38:05 +0000 |
---|---|---|
committer | DJ Delorie <dj@redhat.com> | 2000-07-20 23:38:05 +0000 |
commit | 5e0d736c33212f65c04257e70f4ea29bc194d22e (patch) | |
tree | 1d41a32ffac72a4d260f9718f39fe28c340f3edb /gas/config | |
parent | 699845ef7b7225a4de45fafc7e3641b6ac8d1a2b (diff) | |
download | gdb-5e0d736c33212f65c04257e70f4ea29bc194d22e.zip gdb-5e0d736c33212f65c04257e70f4ea29bc194d22e.tar.gz gdb-5e0d736c33212f65c04257e70f4ea29bc194d22e.tar.bz2 |
* config/obj-coff.c (obj_frob_symbol): revert previous change,
it breaks linking against DLLs.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/obj-coff.c | 26 |
1 files changed, 10 insertions, 16 deletions
diff --git a/gas/config/obj-coff.c b/gas/config/obj-coff.c index 6da6118..41fc595 100644 --- a/gas/config/obj-coff.c +++ b/gas/config/obj-coff.c @@ -1139,30 +1139,24 @@ coff_frob_symbol (symp, punt) symbolS *real; if (!SF_GET_LOCAL (symp) && !SF_GET_STATICS (symp) - && S_GET_STORAGE_CLASS (symp) != C_LABEL - && symbol_constant_p(symp) && (real = symbol_find_base (S_GET_NAME (symp), DO_NOT_STRIP)) && real != symp) { c_symbol_merge (symp, real); *punt = 1; } - if (S_GET_STORAGE_CLASS (symp) == C_NULL) + if (!S_IS_DEFINED (symp) && !SF_GET_LOCAL (symp)) { - if (!S_IS_DEFINED (symp) && !SF_GET_LOCAL (symp)) - { - assert (S_GET_VALUE (symp) == 0); - S_SET_EXTERNAL (symp); - } - else if (S_GET_SEGMENT (symp) == text_section - && symp != seg_info (text_section)->sym) - { - S_SET_STORAGE_CLASS (symp, C_LABEL); - } + assert (S_GET_VALUE (symp) == 0); + S_SET_EXTERNAL (symp); + } + else if (S_GET_STORAGE_CLASS (symp) == C_NULL) + { + if (S_GET_SEGMENT (symp) == text_section + && symp != seg_info (text_section)->sym) + S_SET_STORAGE_CLASS (symp, C_LABEL); else - { - S_SET_STORAGE_CLASS (symp, C_STAT); - } + S_SET_STORAGE_CLASS (symp, C_STAT); } if (SF_GET_PROCESS (symp)) { |