From 8406fb4e271d2f47a3a73f24500912aec2896806 Mon Sep 17 00:00:00 2001 From: Arthur Heymans Date: Fri, 5 Apr 2024 09:00:06 +0200 Subject: lib/program.ld: Account for large code model sections Starting with version 18 LLVM puts code and data generated with -ffunction-section -mcmodel=large inside sections with an 'l' prefix. Change-Id: Ib755673dfa9e71172bbef0a5aec075154c89a97b Signed-off-by: Arthur Heymans Reviewed-on: https://review.coreboot.org/c/coreboot/+/81675 Reviewed-by: Elyes Haouas Reviewed-by: Felix Singer Reviewed-by: Julius Werner Tested-by: build bot (Jenkins) --- src/arch/x86/car.ld | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/arch/x86') diff --git a/src/arch/x86/car.ld b/src/arch/x86/car.ld index 8e1af15df3..f99304f396 100644 --- a/src/arch/x86/car.ld +++ b/src/arch/x86/car.ld @@ -72,6 +72,8 @@ /* Allow global uninitialized variables for stages without CAR teardown. */ *(.bss) *(.bss.*) + *(.lbss) + *(.lbss.*) *(.sbss) *(.sbss.*) . = ALIGN(ARCH_POINTER_ALIGN_SIZE); @@ -97,6 +99,8 @@ _bogus = ASSERT(_etext == ALIGN(_etext, ARCH_POINTER_ALIGN_SIZE), "Cache-As-RAM _data = .; *(.data); *(.data.*); + *(.ldata); + *(.ldata.*); *(.sdata); *(.sdata.*); . = ALIGN(ARCH_POINTER_ALIGN_SIZE); -- cgit v1.2.3