[RFC PATCH] Don't use ELF weak for entities with vague linkage when COMDAT groups are available

Julian Brown julian@codesourcery.com
Fri Apr 8 21:51:00 GMT 2005


Hi,

This is a patch to disable ELF weak for entities with vague linkage when 
HAVE_GAS_COMDAT_GROUP is true. It was previously posted in two parts and 
applied, then reverted soon after for causing breakage:

elfos.h patch:
   http://gcc.gnu.org/ml/gcc-patches/2005-02/msg01624.html

Java patch:
   http://gcc.gnu.org/ml/gcc-patches/2005-03/msg00712.html

These patches caused two problems. The first was causing bootstrap 
failure on Darwin/ppc:

   http://gcc.gnu.org/ml/gcc-regression/2005-03/msg00060.html

And the other was causing lots of "size of symbol changed" regressions:

   http://gcc.gnu.org/ml/gcc-regression/2005-03/msg00056.html

I believe I have fixed the former problem with the attached patch, but I 
have been unable to reproduce the latter test failures. I have tried on 
various machines, including:

   i686-pc-linux-gnu, Red Hat 8.0, bundled binutils (2.16.90) (no COMDAT 
group support).

   i686-pc-linux-gnu, Red Hat 8.0, binutils from cvs (2.16.90 20050330) 
(with COMDAT support).

   powerpc-apple-darwin7.4.0, cctools-576 (no COMDAT support)

   i686-pc-linux-gnu, Debian testing, bundled binutils (2.15) (no COMDAT 
support)

I haven't seen any sign of "size of symbol changed"-type errors after 
running tests on any of these machines. They may have been indicative of 
a system which has COMDAT support in the assembler, but not the linker, 
for some reason.

If people would try this patch and run the testsuite on their machines, 
I'd be grateful. I'd appreciate it if you post information about 
failures which show up for you, with version numbers of binutils bits, 
so I can attempt to track down whatever broke before.

Thanks,

Julian
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: cpatch-2
URL: <http://gcc.gnu.org/pipermail/java-patches/attachments/20050408/fe4f1799/attachment.ksh>


More information about the Java-patches mailing list