Ralf Baechle wrote: > On Fri, Dec 06, 2002 at 05:45:58PM +0100, Thiemo Seufer wrote: > > > > If we want to preserve the setup cleanly, we > > > probably need yet another ABI model in gcc (especially in the face of the > > > coming changes to get rid of assembly macros), with sign-extended 32-bit > > > pointers for accessing program segments and 64-bit ones for the remaining > > > addresses. > > > > Do you think this is worth the hassle? N64 offers better flexibility in > > the large memory case at some performance cost, and it's conceptionally > > cleaner. > > Absolutely: > > [ralf@dea linux-sgi-2.4]$ mips64-linux-size vmlinux > text data bss dec hex filename > 1978296 317344 156224 2451864 256998 vmlinux > [ralf@dea linux-sgi-2.4]$ mips64-linux-size vmlinux > text data bss dec hex filename > 1761168 317344 156224 2234736 221970 vmlinux > > The first kernel was built as 64-bit ELF using 64-bit pointer and everything > 64-bit. The second kernel was built using the -Wa,-32 trick. That's over > 12% of bloat for full 64-bitiness which brings zero gain. I found that in the first case the text segment of my linux kernels has trailing garbage in it, which can explain most of the difference. I haven't looked into it yet, it seems to be harmless besides of increasing file and memory size. Could you have a look at the disassembly, I guess your kernels suffer the same effect. Thiemo