------- Comment #5 from ro at techfak dot uni-bielefeld dot de  2009-05-13 
13:02 -------
Subject: Re:  [4.4/4.5 regression] i686-pc-solaris2.10 bootstrap fails using
Sun ld

jakub at gcc dot gnu dot org writes:

> Look for DEEP_BRANCH_PREDICTION in config/i386/*.  On i386/i486/i586 doing
> call 1f; 1:
> is just fine, but on several newer CPUs it confuses return prediction logic
> (more calls than rets), so when optimizing for those CPUs gcc calls a separate
> pad which just reads the return address from the stack and immediately 
> returns.
> This pad can be shared among all functions within the same binary or shared

Ok, thanks for the explanation.

> library.  If hidden linkonce doesn't work on some Solaris version, you should
> just make sure USE_HIDDEN_LINKONCE is 0 for that target.

Indeed: that far easier than determining which version of Sun ld has all
the necessary support.

Proposed patch here:

        http://gcc.gnu.org/ml/gcc-patches/2009-05/msg00723.html

Thanks.
        Rainer


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40027

Reply via email to