Clang feature fix for v5.13-rc6

- Handle changes to needed LTO flags in Clang 13 (Tor Vic)
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEpcP2jyKd1g9yPm4TiXL039xtwCYFAmDDqR0ACgkQiXL039xt
 wCaeWA/6As2Bo1hj5tK6i2PfXKzY6X6swPJ7QnEGA8g82nvuhhOIJwJXigBR5qBi
 1JQX+w6ihx082MIYnUU2pl8byL4x3A4nxk4NSjVTYd/Bh5M270rMif3epFnsI+QM
 0QZuykL88wNksANHzYXXeRzPY4/afP5HNESqTjBU8ydLN3p4CWJOJT5GRb9c4Wbw
 lpKwMSUV1QLQJbMNdnDlIHSAI02EAi4ST9wVAeZTtKSD9PFNwPY9CS852LQoshX3
 UbRc6/b/R8fAjmBsHcAyrjW2qMS5FJlBxpczZb+O7bh4brrFDoDBU8TqovPfcTt0
 N/UP4Dz+V9DNgQxxLz5W2V5hhLRiKq/Cnx5gGrpJY3hSMqwrM2sRoep/GgpQSwpU
 wPfiqp75RUWTiN+l8nftfNCQhoUtDa4mU378tNyWhAX3kuShT0SsLBxhs4Vzvfdw
 pj+0tgWCyYxIcxy+gZzfv81XDOHTpcWOiUlgao2589YS5SsVd+lCq0sTP63kL/S/
 WTkNnucebzXHJXEC/CrpvJhNXIRElVEayAcF5QTLJfSLxkMZvDczf/s5osQK3S0d
 Fr5nzbmcCkbX/xODmfZ+egbpvv4XkLCNShGOW2OksqQEG3kephzRxsTXr0dVnDfv
 rj1WqlrCqC2ABJ+0C9Fi4+fSU7InEV0pRdDLVkJ8LZf505/J5qI=
 =3Bs0
 -----END PGP SIGNATURE-----

Merge tag 'clang-features-v5.13-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux

Pull clang LTO fix from Kees Cook:
 "Clang 13 fixed some IR behavior for LTO, but this broke work-arounds
  used in the kernel.

  Handle changes to needed LTO flags in Clang 13 (Tor Vic)"

* tag 'clang-features-v5.13-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
  x86, lto: Pass -stack-alignment only on LLD < 13.0.0
This commit is contained in:
Linus Torvalds 2021-06-11 16:29:53 -07:00
commit 548843c096

View File

@ -200,8 +200,9 @@ endif
KBUILD_LDFLAGS += -m elf_$(UTS_MACHINE)
ifdef CONFIG_LTO_CLANG
KBUILD_LDFLAGS += -plugin-opt=-code-model=kernel \
-plugin-opt=-stack-alignment=$(if $(CONFIG_X86_32),4,8)
ifeq ($(shell test $(CONFIG_LLD_VERSION) -lt 130000; echo $$?),0)
KBUILD_LDFLAGS += -plugin-opt=-stack-alignment=$(if $(CONFIG_X86_32),4,8)
endif
endif
ifdef CONFIG_X86_NEED_RELOCS