x86/efi: Optimize away setup_gop32/64 if unused
authorLukas Wunner <lukas@wunner.de>
Tue, 6 Sep 2016 06:05:32 +0000 (08:05 +0200)
committerMatt Fleming <matt@codeblueprint.co.uk>
Fri, 9 Sep 2016 15:08:56 +0000 (16:08 +0100)
commit27571616385af9c2d6a3e570b06baf86f5aa04b1
tree25c32ac6b28e4e672ff3cda676902145e3887142
parent20ebc15e6c8f9772804fa10110bf074a7b1d25fa
x86/efi: Optimize away setup_gop32/64 if unused

Commit 2c23b73c2d02 ("x86/efi: Prepare GOP handling code for reuse
as generic code") introduced an efi_is_64bit() macro to x86 which
previously only existed for arm arches.  The macro is used to
choose between the 64 bit or 32 bit code path in gop.c at runtime.

However the code path that's going to be taken is known at compile
time when compiling for x86_32 or for x86_64 with mixed mode disabled.
Amend the macro to eliminate the unused code path in those cases.

Size of gop.o text section:
CONFIG_X86_32:                         1758 before, 1299 after
CONFIG_X86_64 && !CONFIG_EFI_MIXED:    2201 before, 1406 after
CONFIG_X86_64 &&  CONFIG_EFI_MIXED:    2201 before and after

Signed-off-by: Lukas Wunner <lukas@wunner.de>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Matt Fleming <matt@codeblueprint.co.uk>
arch/x86/include/asm/efi.h