|To:||"Maciej W. Rozycki" <email@example.com>|
|Subject:||Re: [SPAM?] Re: [PATCH] mm/pg-r4k.c: Dump the generated code|
|From:||Nigel Stephens <firstname.lastname@example.org>|
|Date:||Wed, 10 Oct 2007 13:08:46 +0100|
|Cc:||Franck Bui-Huu <email@example.com>, Ralf Baechle <firstname.lastname@example.org>, Thiemo Seufer <email@example.com>, firstname.lastname@example.org|
|References:||<Pine.LNX.4.64N.email@example.com> <20071002141125.GC16772@networkno.de> <20071002154918.GA11312@linux-mips.org> <firstname.lastname@example.org> <20071003131158.GL16772@networkno.de> <4703F155.email@example.com> <20071003201800.GP16772@networkno.de> <firstname.lastname@example.org> <20071004121557.GA28928@linux-mips.org> <4705004C.email@example.com> <Pine.LNX.4.64N.firstname.lastname@example.org> <4705EFE5.email@example.com> <Pine.LNX.4.64N.firstname.lastname@example.org> <470A4349.email@example.com> <Pine.LNX.4.64N.firstname.lastname@example.org> <470BE1F4.email@example.com> <Pine.LNX.4.64N.firstname.lastname@example.org>|
|User-agent:||IceDove 184.108.40.206 (X11/20070606)|
Maciej W. Rozycki wrote:
On Tue, 9 Oct 2007, Franck Bui-Huu wrote:What would be the gain for the kernel from using "-march=4ksd" rather than "-march=mips32r2"?It actually results in a kernel image ~30kbytes smaller for the former case. It has been discussed sometimes ago on this list. I'm sorry but I don't know why...Perhaps the pipeline description for the 4KSd CPU is different from the default for the MIPS32r2 ISA. Barring a study of GCC sources, if that really troubles you, you could build the same version of the kernel with these options:1. "-march=mips32r2" 2. "-march=4ksd" 3. "-march=mips32r2 -mtune=4ksd"and compare the results.
I expect the results of #2 and #3 to be the same and it would just back up my suggestion about keeping CPU-specific optimisations separate from the CPU selection.
Actually the -march=4ksd option will allow gcc to use of the SmartMIPS lwxs (indexed load) instruction, which could save a few instructions here and there.
Please also note that our optimisation model is for speed (-O2) rather than size (-Os), so if "-mtune=4ksd" yields smaller code than "-mtune=mips32r2", it just means it is safe for this CPU to shrink code where appropriate without losing performance. One obvious place for such a choice is the use of the hardware multiplier vs shifts and additions where one multiplicand is a constant.
Yes, that's also worth testing. Nigel
|<Prev in Thread]||Current Thread||[Next in Thread>|
|Previous by Date:||Re: [PATCH] mm/pg-r4k.c: Dump the generated code, Maciej W. Rozycki|
|Next by Date:||Re: [PATCH] mm/pg-r4k.c: Dump the generated code, Maciej W. Rozycki|
|Previous by Thread:||Re: [PATCH] mm/pg-r4k.c: Dump the generated code, Maciej W. Rozycki|
|Next by Thread:||Re: [SPAM?] Re: [PATCH] mm/pg-r4k.c: Dump the generated code, Maciej W. Rozycki|
|Indexes:||[Date] [Thread] [Top] [All Lists]|