Skip to content

Commit 36168e3

Browse files
nathanchancetorvalds
authored andcommitted
ARM: Do not use NOCROSSREFS directive with ld.lld
ld.lld does not support the NOCROSSREFS directive at the moment, which breaks the build after commit b9baf5c ("ARM: Spectre-BHB workaround"): ld.lld: error: ./arch/arm/kernel/vmlinux.lds:34: AT expected, but got NOCROSSREFS Support for this directive will eventually be implemented, at which point a version check can be added. To avoid breaking the build in the meantime, just define NOCROSSREFS to nothing when using ld.lld, with a link to the issue for tracking. Cc: [email protected] Fixes: b9baf5c ("ARM: Spectre-BHB workaround") Link: ClangBuiltLinux#1609 Signed-off-by: Nathan Chancellor <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
1 parent 37c333a commit 36168e3

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

arch/arm/include/asm/vmlinux.lds.h

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,14 @@
2626
#define ARM_MMU_DISCARD(x) x
2727
#endif
2828

29+
/*
30+
* ld.lld does not support NOCROSSREFS:
31+
* https://github.com/ClangBuiltLinux/linux/issues/1609
32+
*/
33+
#ifdef CONFIG_LD_IS_LLD
34+
#define NOCROSSREFS
35+
#endif
36+
2937
/* Set start/end symbol names to the LMA for the section */
3038
#define ARM_LMA(sym, section) \
3139
sym##_start = LOADADDR(section); \

0 commit comments

Comments
 (0)