x86: Fix call64's section flags
When a section is not flagged with SHF_ALLOC, LLD's --gc-sections
algorithm fails to visit the sections that it references. As a result of
this, LLD was dropping the call64.o(.data) section, which is itself only
referenced by .text_call64.
This appears to be a bug in LLD, but the .section directive for
.text_call64 should really have the correct flags either way.
Add `"ax"` to mark the section as ALLOC ("supposed to be loaded") and
CODE ("supposed to be executed").
Fixes: 7dc82591d6
("x86: Move call64 into its own section")
Signed-off-by: Sam Edwards <CFSworks@gmail.com>
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
#include <asm/processor-flags.h>
|
#include <asm/processor-flags.h>
|
||||||
|
|
||||||
.code32
|
.code32
|
||||||
.section .text_call64
|
.section .text_call64, "ax"
|
||||||
.globl cpu_call64
|
.globl cpu_call64
|
||||||
cpu_call64:
|
cpu_call64:
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user