On Wed, Jan 4, 2023 at 11:54 AM Nathan Chancellor <nathan@xxxxxxxxxx> wrote: > > When clang's -Qunused-arguments is dropped from KBUILD_CPPFLAGS, it > points out that KBUILD_AFLAGS contains a linker flag, which will be > used: > > clang: error: -Wl,-a32: 'linker' input unused [-Werror,-Wunused-command-line-argument] > > This was likely supposed to be '-Wa,-a$(BITS)'. However, this change is > unnecessary, as all supported versions of clang and gcc will pass '-a64' > or '-a32' to GNU as based on the value of '-m'; the behavior of the > latest stable release of the oldest supported major version of each > compiler is shown below and each compiler's latest release exhibits the > same behavior (GCC 12.2.0 and Clang 15.0.6). > > $ powerpc64-linux-gcc --version | head -1 > powerpc64-linux-gcc (GCC) 5.5.0 > > $ powerpc64-linux-gcc -m64 -### -x assembler-with-cpp -c -o /dev/null /dev/null &| grep 'as ' > .../as -a64 -mppc64 -many -mbig -o /dev/null /tmp/cctwuBzZ.s > > $ powerpc64-linux-gcc -m32 -### -x assembler-with-cpp -c -o /dev/null /dev/null &| grep 'as ' > .../as -a32 -mppc -many -mbig -o /dev/null /tmp/ccaZP4mF.sg > > $ clang --version | head -1 > Ubuntu clang version 11.1.0-++20211011094159+1fdec59bffc1-1~exp1~20211011214622.5 > > $ clang --target=powerpc64-linux-gnu -fno-integrated-as -m64 -### \ > -x assembler-with-cpp -c -o /dev/null /dev/null &| grep gnu-as > "/usr/bin/powerpc64-linux-gnu-as" "-a64" "-mppc64" "-many" "-o" "/dev/null" "/tmp/null-80267c.s" > > $ clang --target=powerpc64-linux-gnu -fno-integrated-as -m64 -### \ > -x assembler-with-cpp -c -o /dev/null /dev/null &| grep gnu-as > "/usr/bin/powerpc64-linux-gnu-as" "-a32" "-mppc" "-many" "-o" "/dev/null" "/tmp/null-ab8f8d.s" > > Remove this flag altogether to avoid future issues. > > Fixes: 1421dc6d4829 ("powerpc/kbuild: Use flags variables rather than overriding LD/CC/AS") > Signed-off-by: Nathan Chancellor <nathan@xxxxxxxxxx> Thanks for the patch! Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx> > --- > Cc: mpe@xxxxxxxxxxxxxx > Cc: npiggin@xxxxxxxxx > Cc: christophe.leroy@xxxxxxxxxx > Cc: linuxppc-dev@xxxxxxxxxxxxxxxx > --- > arch/powerpc/Makefile | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile > index dc4cbf0a5ca9..4fd630efe39d 100644 > --- a/arch/powerpc/Makefile > +++ b/arch/powerpc/Makefile > @@ -90,7 +90,7 @@ aflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -mlittle-endian > > ifeq ($(HAS_BIARCH),y) > KBUILD_CFLAGS += -m$(BITS) > -KBUILD_AFLAGS += -m$(BITS) -Wl,-a$(BITS) > +KBUILD_AFLAGS += -m$(BITS) > KBUILD_LDFLAGS += -m elf$(BITS)$(LDEMULATION) > endif > > > -- > 2.39.0 -- Thanks, ~Nick Desaulniers