Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys/arch/mips/conf



Module Name:    src
Committed By:   matt
Date:           Sun Aug 27 21:44:15 UTC 2006

Modified Files:
        src/sys/arch/mips/conf: Makefile.mips

Log Message:
Add -msym32 to CFLAGS when MACHINE_ARCH is mips64e[bl].

Since kernels are always run out of KSEG0 (0xffffffff.8xxxxxxx), we can
take advantage of that if we load a 32 bit address (0x8xxxxxxx) that it
will be sign-extended to 64 bits (0xffffffff.8xxxxxxx).

So instead of 6 instructions (2 lui, 2 daddiu, dsll32, daddu) to load an
address, the normal number of 2 instructions (lui, daddiu) will be used.

Thus telling gcc/gas that symbols will always be 32 bits significantly
shrinks (by 10%) and speeds up a MIPS64 kernel.


To generate a diff of this commit:
cvs rdiff -r1.43 -r1.44 src/sys/arch/mips/conf/Makefile.mips

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index