kbuild: Switch to 'f' variants of integrated assembler flag
authorNathan Chancellor <nathan@kernel.org>
Mon, 16 Aug 2021 20:52:47 +0000 (13:52 -0700)
committerMasahiro Yamada <masahiroy@kernel.org>
Thu, 2 Sep 2021 23:17:20 +0000 (08:17 +0900)
It has been brought up a few times in various code reviews that clang
3.5 introduced -f{,no-}integrated-as as the preferred way to enable and
disable the integrated assembler, mentioning that -{no-,}integrated-as
are now considered legacy flags.

Switch the kernel over to using those variants in case there is ever a
time where clang decides to remove the non-'f' variants of the flag.

Also, fix a typo in a comment ("intergrated" -> "integrated").

Link: https://releases.llvm.org/3.5.0/tools/clang/docs/ReleaseNotes.html#new-compiler-flags
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
scripts/Makefile.clang
scripts/as-version.sh

index 3ae63bd..4cce8fd 100644 (file)
@@ -23,11 +23,11 @@ CLANG_FLAGS += --target=$(notdir $(CROSS_COMPILE:%-=%))
 endif # CROSS_COMPILE
 
 ifeq ($(LLVM_IAS),0)
-CLANG_FLAGS    += -no-integrated-as
+CLANG_FLAGS    += -fno-integrated-as
 GCC_TOOLCHAIN_DIR := $(dir $(shell which $(CROSS_COMPILE)elfedit))
 CLANG_FLAGS    += --prefix=$(GCC_TOOLCHAIN_DIR)$(notdir $(CROSS_COMPILE))
 else
-CLANG_FLAGS    += -integrated-as
+CLANG_FLAGS    += -fintegrated-as
 endif
 CLANG_FLAGS    += -Werror=unknown-warning-option
 KBUILD_CFLAGS  += $(CLANG_FLAGS)
index 8b9410e..1a21495 100755 (executable)
@@ -21,14 +21,14 @@ get_canonical_version()
        echo $((10000 * $1 + 100 * ${2:-0} + ${3:-0}))
 }
 
-# Clang fails to handle -Wa,--version unless -no-integrated-as is given.
-# We check -(f)integrated-as, expecting it is explicitly passed in for the
+# Clang fails to handle -Wa,--version unless -fno-integrated-as is given.
+# We check -fintegrated-as, expecting it is explicitly passed in for the
 # integrated assembler case.
 check_integrated_as()
 {
        while [ $# -gt 0 ]; do
-               if [ "$1" = -integrated-as -o "$1" = -fintegrated-as ]; then
-                       # For the intergrated assembler, we do not check the
+               if [ "$1" = -fintegrated-as ]; then
+                       # For the integrated assembler, we do not check the
                        # version here. It is the same as the clang version, and
                        # it has been already checked by scripts/cc-version.sh.
                        echo LLVM 0