This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC PATCH] Don't use ELF weak for entities with vague linkagewhen COMDAT groups are available


Eric Botcazou wrote:
This part of the patch has been reverted again for now, pending further
investigation on ppc64 Linux, where it was causing libstdc++ build failure.


FWIW I see these failures on x86_64-suse-linux (SuSE 9.2 Professional):

/usr/bin/ld: Warning: size of symbol `__gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, true>::_S_destroy_thread_key(void*)' changed from 21 in testsuite_abi.o to 217 in testsuite_character.o
/usr/bin/ld: Warning: size of symbol

Would you check to see that these symbols are indeed in COMDAT groups in both files? If so, then the linker is being silly. That would confirm my hypothesis that the problem is due to situations where the compiler supports COMDAT, but the linker doesn't actually support it. In that case, we should soup up HAVE_GAS_COMDAT to check the linker too (and rename it to just HAVE_COMDAT).


--
Mark Mitchell
CodeSourcery, LLC
mark@codesourcery.com
(916) 791-8304


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]