Excerpts from Daniel Axtens's message of February 25, 2021 1:10 pm: > LLVM's integrated assembler does not like either -Wa,-mpower4 > or -Wa,-many. So just don't pass them if they're not supported. > > Signed-off-by: Daniel Axtens <d...@axtens.net> > --- > arch/powerpc/Makefile | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile > index 08cf0eade56a..3e2c72d20bb8 100644 > --- a/arch/powerpc/Makefile > +++ b/arch/powerpc/Makefile > @@ -252,7 +252,9 @@ cpu-as-$(CONFIG_E500) += -Wa,-me500 > # When using '-many -mpower4' gas will first try and find a matching power4 > # mnemonic and failing that it will allow any valid mnemonic that GAS knows > # about. GCC will pass -many to GAS when assembling, clang does not. > -cpu-as-$(CONFIG_PPC_BOOK3S_64) += -Wa,-mpower4 -Wa,-many > +# LLVM IAS doesn't understand either flag: > https://github.com/ClangBuiltLinux/linux/issues/675 > +# but LLVM IAS only supports ISA >= 2.06 for Book3S 64 anyway... > +cpu-as-$(CONFIG_PPC_BOOK3S_64) += $(call > as-option,-Wa$(comma)-mpower4) $(call as-option,-Wa$(comma)-many) > cpu-as-$(CONFIG_PPC_E500MC) += $(call as-option,-Wa$(comma)-me500mc) > > KBUILD_AFLAGS += $(cpu-as-y)
I'm wondering why we even have this now. Kbuild's "AS" command goes through the C compiler now with relevant options like -mcpu. I assume it used to be useful for cross compiling when as was called directly but I'm not sure. Thanks, Nick