http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52205
--- Comment #8 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot
Uni-Bielefeld.DE> 2012-02-14 18:39:32 UTC ---
> --- Comment #6 from Ian Lance Taylor <ian at airs dot com> 2012-02-12
> 19:52:02 UTC ---
> The patch fixes the test case and also passes some relevant Go tests.
>
> Rainer, if OK, I'd like to leave it to you to comment on the patch and do a
> full testsuite run.
I'm currently doing so, and preliminary results look good. I've got a
couple of comments on the patch as-is which I find harder than necessary
to read/understand:
* It uses far too magic numbers unnecessarily and/or without
explanation. E.g. looking for the caller frame with hardcoded offsets
(cuh_patter, sah_address) is unnecessary: just use struct frame in
<sys/frame.h> for that, where fr_savfp is the saved frame pointer at
that exact offset.
* All the patterns should be acompanied by the disassembly to make it
easier to compare with that you see e.g. in a debugger.
* Talking of Solaris 8 in Solaris Containers is unnecessary and
incomplete: this is just the Solaris 8 alternate thread library (in
/usr/lib/lwp) which is copied over /usr/lib/libthread.so.1 when
booting the branded zone, but is also used by gcc on Solaris 8 by
default. This alternate thread library became the default in Solaris
9, thus they are the same.
Rainer