• Nick Desaulniers's avatar
    Makefile: remove stale cc-option checks · 7d73c3e9
    Nick Desaulniers authored
    cc-option, cc-option-yn, and cc-disable-warning all invoke the compiler
    during build time, and can slow down the build when these checks become
    stale for our supported compilers, whose minimally supported versions
    increases over time. See Documentation/process/changes.rst for the
    current supported minimal versions (GCC 4.9+, clang 10.0.1+). Compiler
    version support for these flags may be verified on godbolt.org.
    
    The following flags are GCC only and supported since at least GCC 4.9.
    Remove cc-option and cc-disable-warning tests.
    * -fno-tree-loop-im
    * -Wno-maybe-uninitialized
    * -fno-reorder-blocks
    * -fno-ipa-cp-clone
    * -fno-partial-inlining
    * -femit-struct-debug-baseonly
    * -fno-inline-functions-called-once
    * -fconserve-stack
    
    The following flags are supported by all supported versions of GCC and
    Clang. Remove their cc-option, cc-option-yn, and cc-disable-warning tests.
    * -fno-delete-null-pointer-checks
    * -fno-var-tracking
    * -Wno-array-bounds
    
    The following configs are made dependent on GCC, since they use GCC
    specific flags.
    * READABLE_ASM
    * DEBUG_SECTION_MISMATCH
    
    -mfentry was not supported by s390-linux-gnu-gcc until gcc-9+, add a
    comment.
    
    --param=allow-store-data-races=0 was renamed to -fno-allow-store-data-races
    in the GCC 10 release; add a comment.
    
    -Wmaybe-uninitialized (GCC specific) was being added for CONFIG_GCOV,
    then again unconditionally; add it only once.
    
    Also, base RETPOLINE_CFLAGS and RETPOLINE_VDSO_CFLAGS on CONFIC_CC_IS_*
    then remove cc-option tests for Clang.
    
    Link: https://github.com/ClangBuiltLinux/linux/issues/1436Acked-by: default avatarMiguel Ojeda <ojeda@kernel.org>
    Reviewed-by: default avatarNathan Chancellor <nathan@kernel.org>
    Signed-off-by: default avatarNick Desaulniers <ndesaulniers@google.com>
    Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
    7d73c3e9
Kconfig.debug 86.5 KB