kbuild: Add CLANG_FLAGS to as-instr
authorNathan Chancellor <nathan@kernel.org>
Thu, 1 Jun 2023 19:50:39 +0000 (12:50 -0700)
committerMasahiro Yamada <masahiroy@kernel.org>
Mon, 5 Jun 2023 00:49:58 +0000 (09:49 +0900)
commitcff6e7f50bd315e5b39c4e46c704ac587ceb965f
treef98bd476d58d4387ef9cf0ffcdd3916a039a99aa
parenta7e5eb53bf9b800d086e2ebcfebd9a3bb16bd1b0
kbuild: Add CLANG_FLAGS to as-instr

A future change will move CLANG_FLAGS from KBUILD_{A,C}FLAGS to
KBUILD_CPPFLAGS so that '--target' is available while preprocessing.
When that occurs, the following errors appear multiple times when
building ARCH=powerpc powernv_defconfig:

  ld.lld: error: vmlinux.a(arch/powerpc/kernel/head_64.o):(.text+0x12d4): relocation R_PPC64_ADDR16_HI out of range: -4611686018409717520 is not in [-21474836482147483647]; references '__start___soft_mask_table'
  ld.lld: error: vmlinux.a(arch/powerpc/kernel/head_64.o):(.text+0x12e8): relocation R_PPC64_ADDR16_HI out of range: -4611686018409717392 is not in [-21474836482147483647]; references '__stop___soft_mask_table'

Diffing the .o.cmd files reveals that -DHAVE_AS_ATHIGH=1 is not present
anymore, because as-instr only uses KBUILD_AFLAGS, which will no longer
contain '--target'.

Mirror Kconfig's as-instr and add CLANG_FLAGS explicitly to the
invocation to ensure the target information is always present.

Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
scripts/Makefile.compiler