Skip to content
  • Matthias Kaehlcke's avatar
    x86/build: Use __cc-option for boot code compiler options · 032a2c4f
    Matthias Kaehlcke authored and Masahiro Yamada's avatar Masahiro Yamada committed
    
    
    cc-option is used to enable compiler options for the boot code if they
    are available. The macro uses KBUILD_CFLAGS and KBUILD_CPPFLAGS for the
    check, however these flags aren't used to build the boot code, in
    consequence cc-option can yield wrong results. For example
    -mpreferred-stack-boundary=2 is never set with a 64-bit compiler,
    since the setting is only valid for 16 and 32-bit binaries. This
    is also the case for 32-bit kernel builds, because the option -m32 is
    added to KBUILD_CFLAGS after the assignment of REALMODE_CFLAGS.
    
    Use __cc-option instead of cc-option for the boot mode options.
    The macro receives the compiler options as parameter instead of using
    KBUILD_C*FLAGS, for the boot code we pass REALMODE_CFLAGS.
    
    Also use separate statements for the __cc-option checks instead
    of performing them in the initial assignment of REALMODE_CFLAGS since
    the variable is an input of the macro.
    
    Signed-off-by: default avatarMatthias Kaehlcke <mka@chromium.org>
    Acked-by: default avatarIngo Molnar <mingo@kernel.org>
    Signed-off-by: Masahiro Yamada's avatarMasahiro Yamada <yamada.masahiro@socionext.com>
    032a2c4f