This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: linux 2.1.117 built with egcs-1.1 19980823
On Tue, Aug 25, 1998 at 06:15:50AM +0200, David S. Miller wrote:
> Date: Mon, 24 Aug 1998 22:07:49 -0600
> From: Jeffrey A Law <law@hurl.cygnus.com>
>
> It would probably be to our advantage if you could select one of
> the datapoints from the bloat-o-meter chart and analyze it. Even
> superficial like "more spills than before" would be worth knowing.
>
> Finding this wouldn't surprise me as in other areas the Haifa
> scheduler has been shown to extend register lifetimes unduly.
My tests don't use the Haifa scheduler (sorry, I should have said that)
The i386 port still defaults to the old scheduler, and I didn't enable
it explicitely because people told me earlier that the i386 port is not
tuned for Haifa yet.
>
> (Andi, as a fun experiment, rebuild the kernel with
> "-fno-schedule-insns -fschedule-insns2", this turns off
> the first scheduling pass, yet keeps the second pass enabled which
> runs after register allocation and therefore can't increase
> register pressure and create more spills)
I tried this, it seems to cut off another 4K:
Here is the summary so far:
text data bss dec hex filename
933404 95000 132368 1160772 11b644 vmlinux-2.7.2
2.7.2.3 options: -malign-{functions,loops,jumps}=2 -fno-strength-reduce -O2
-fomit-frame-pointer -m486
955025 99676 133412 1188113 122111 vmlinux
egcs-1.1-19980816 / no haifa options:
-O2 -fomit-frame-pointer -fno-exceptions -fno-schedule-insns -fschedule-insns2 -mpentiumpro -malign-{loops,functions,jumps}=2 -fno-gcse
I'll look at some more function diffs later today to see if I can spot
something obvious.
-Andi