Subject: Re: clang: error: unsupported argument '-mimplicit-it=always' to option 'Wa,'

From: Nathan Chancellor <[email-masked]>
Date: Thu, 16 Sep 2021 08:20:32 -0700

Hi Naresh,

On 9/16/2021 6:45 AM, Naresh Kamboju wrote:
> Following build warnings/ errors noticed while building linux next-20210916
> with clang-10, clang-11 and clang-12  for arm architecture.
>        - allnoconfig
>        - tinyconfig
> 
> But builds PASS with clang-13.
> 
> clang: error: unsupported argument '-mimplicit-it=always' to option 'Wa,'
> make[2]: *** [/builds/linux/scripts/Makefile.build:288:
> scripts/mod/empty.o] Error 1
> make[2]: Target '__build' not remade because of errors.
> make[1]: *** [/builds/linux/Makefile:1329: prepare0] Error 2
> make[1]: Target '__all' not remade because of errors.
> make: *** [Makefile:226: __sub-make] Error 2
> make: Target '__all' not remade because of errors.

Thank you for the report. This is caused by the implicit switch to the 
integrated assembler in commit f12b034afeb3 ("scripts/Makefile.clang: 
default to LLVM_IAS=1").

Prior to LLVM 13, -Wa,-mimplicit-it=... was not properly handled by the 
integrated assembler but Nick fixed that:

https://github.com/ClangBuiltLinux/linux/issues/1270

As noted in the above Linux commit, please adjust arm clang-10 through 
clang-12 builds with TuxSuite to pass 'LLVM_IAS=0' to make, which you 
can do with the 'make_variables' key:

https://github.com/ClangBuiltLinux/continuous-integration2/blob/a998b85bf1d2ce4150005b225f4cde535fe12af5/tuxsuite/android-mainline.tux.yml#L207

Sorry for not giving you guys more of a heads up about that switch.

Cheers,
Nathan