Message ID | 20221228-drop-qunused-arguments-v2-5-9adbddd20d86@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Remove clang's -Qunused-arguments from KBUILD_CPPFLAGS | expand |
Nathan Chancellor <nathan@kernel.org> writes: > When clang's -Qunused-arguments is dropped from KBUILD_CPPFLAGS, it > points out that KBUILD_AFLAGS contains a linker flag, which will be > used: Should that say "unused" ? > 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@kernel.org> > Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> > --- > Cc: mpe@ellerman.id.au Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc) cheers
On Wed, Jan 25, 2023 at 1:11 PM Michael Ellerman <mpe@ellerman.id.au> wrote: > > Nathan Chancellor <nathan@kernel.org> writes: > > When clang's -Qunused-arguments is dropped from KBUILD_CPPFLAGS, it > > points out that KBUILD_AFLAGS contains a linker flag, which will be > > used: > > Should that say "unused" ? Nathan, shall I fix it up locally? (it will change the commit hash, though.) > > > 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@kernel.org> > > Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> > > --- > > Cc: mpe@ellerman.id.au > > Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc) > > cheers
On Thu, Jan 26, 2023 at 10:29:54AM +0900, Masahiro Yamada wrote: > On Wed, Jan 25, 2023 at 1:11 PM Michael Ellerman <mpe@ellerman.id.au> wrote: > > > > Nathan Chancellor <nathan@kernel.org> writes: > > > When clang's -Qunused-arguments is dropped from KBUILD_CPPFLAGS, it > > > points out that KBUILD_AFLAGS contains a linker flag, which will be > > > used: > > > > Should that say "unused" ? > > > > Nathan, shall I fix it up locally? > (it will change the commit hash, though.) Yes please, if you would not mind. Sorry about that and thank you for spotting it Michael! Since you have to rebase to fix it, you can include Michael's acks? Cheers, Nathan > > > 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@kernel.org> > > > Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> > > > --- > > > Cc: mpe@ellerman.id.au > > > > Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc) > > > > cheers > > > > -- > Best Regards > Masahiro Yamada
On Thu, Jan 26, 2023 at 11:07 AM Nathan Chancellor <nathan@kernel.org> wrote: > > On Thu, Jan 26, 2023 at 10:29:54AM +0900, Masahiro Yamada wrote: > > On Wed, Jan 25, 2023 at 1:11 PM Michael Ellerman <mpe@ellerman.id.au> wrote: > > > > > > Nathan Chancellor <nathan@kernel.org> writes: > > > > When clang's -Qunused-arguments is dropped from KBUILD_CPPFLAGS, it > > > > points out that KBUILD_AFLAGS contains a linker flag, which will be > > > > used: > > > > > > Should that say "unused" ? > > > > > > > > Nathan, shall I fix it up locally? > > (it will change the commit hash, though.) > > Yes please, if you would not mind. Sorry about that and thank you for > spotting it Michael! > > Since you have to rebase to fix it, you can include Michael's acks? > > Cheers, > Nathan Done.
Masahiro Yamada <masahiroy@kernel.org> writes: > On Thu, Jan 26, 2023 at 11:07 AM Nathan Chancellor <nathan@kernel.org> wrote: >> >> On Thu, Jan 26, 2023 at 10:29:54AM +0900, Masahiro Yamada wrote: >> > On Wed, Jan 25, 2023 at 1:11 PM Michael Ellerman <mpe@ellerman.id.au> wrote: >> > > >> > > Nathan Chancellor <nathan@kernel.org> writes: >> > > > When clang's -Qunused-arguments is dropped from KBUILD_CPPFLAGS, it >> > > > points out that KBUILD_AFLAGS contains a linker flag, which will be >> > > > used: >> > > >> > > Should that say "unused" ? >> > >> > >> > >> > Nathan, shall I fix it up locally? >> > (it will change the commit hash, though.) >> >> Yes please, if you would not mind. Sorry about that and thank you for >> spotting it Michael! >> >> Since you have to rebase to fix it, you can include Michael's acks? >> >> Cheers, >> Nathan > > Done. Thanks. cheers
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