]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
x86: enable ARCH_USE_BUILTIN_BSWAP
authorDavid Woodhouse <David.Woodhouse@intel.com>
Mon, 3 Dec 2012 16:50:01 +0000 (16:50 +0000)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Thu, 20 Dec 2012 01:05:25 +0000 (01:05 +0000)
With -mmovbe enabled (implicit with -march=atom), this allows the
compiler to use the movbe instruction. This doesn't have a significant
effect on code size (unlike on PowerPC), because the movbe instruction
actually takes as many bytes to encode as a simple mov and a bswap. But
for Atom in particular I believe it should give a performance win over
the mov+bswap alternative. That was kind of why movbe was invented in
the first place, after all...

I've done basic functionality testing with IPv6 and Legacy IP, but no
performance testing. The EFI firmware on my test box unfortunately no
longer starts up.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Acked-by: H. Peter Anvin <hpa@linux.intel.com>
arch/x86/Kconfig

index 97f8c5ad8c2ddff2449da615e46c2faab3b9d067..2ab0f0c60ffe15d259b2f411717a97750b337c54 100644 (file)
@@ -115,6 +115,7 @@ config X86
        select MODULES_USE_ELF_REL if X86_32
        select MODULES_USE_ELF_RELA if X86_64
        select CLONE_BACKWARDS if X86_32
+       select ARCH_USE_BUILTIN_BSWAP
 
 config INSTRUCTION_DECODER
        def_bool y