From bd826630b1258af33355c6d6906ce42111b2f8fb Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Sun, 8 Aug 1999 16:50:27 +0000 Subject: 1999-08-08 Mumit Khan * section.c (SEC_SHARED): Define. * coffcode.h (sec_to_styp_flags): Handle SEC_SHARED. (styp_to_sec_flags): Likewise. * peicode.h (coff_swap_scnhdr_out): Likewise. * bfd-in2.h: Rebuild. 1999-08-08 Ian Lance Taylor * coffcode.h (coff_classify_symbol): Comment out part of 1999-08-05 change which breaks cygwin DLLs. --- bfd/coffcode.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'bfd/coffcode.h') diff --git a/bfd/coffcode.h b/bfd/coffcode.h index cc7b148..301e5f7 100644 --- a/bfd/coffcode.h +++ b/bfd/coffcode.h @@ -445,6 +445,8 @@ sec_to_styp_flags (sec_name, sec_flags) #ifdef COFF_WITH_PE if (sec_flags & SEC_LINK_ONCE) styp_flags |= IMAGE_SCN_LNK_COMDAT; + if (sec_flags & SEC_SHARED) + styp_flags |= IMAGE_SCN_MEM_SHARED; #endif return (styp_flags); @@ -579,6 +581,9 @@ styp_to_sec_flags (abfd, hdr, name) if (styp_flags & IMAGE_SCN_LNK_REMOVE) sec_flags |= SEC_EXCLUDE; + if (styp_flags & IMAGE_SCN_MEM_SHARED) + sec_flags |= SEC_SHARED; + if (styp_flags & IMAGE_SCN_LNK_COMDAT) { sec_flags |= SEC_LINK_ONCE; @@ -3911,6 +3916,10 @@ coff_classify_symbol (abfd, syment) return COFF_SYMBOL_LOCAL; } +#if 0 + /* This is correct for Microsoft generated objects, but it + breaks gas generated objects. */ + if (syment->n_value == 0) { asection *sec; @@ -3923,6 +3932,7 @@ coff_classify_symbol (abfd, syment) == 0)) return COFF_SYMBOL_PE_SECTION; } +#endif return COFF_SYMBOL_LOCAL; } -- cgit v1.1