diff options
-rw-r--r-- | payloads/libpayload/arch/arm/head.S | 2 | ||||
-rw-r--r-- | payloads/libpayload/arch/arm/libpayload.ldscript | 14 | ||||
-rw-r--r-- | payloads/libpayload/arch/arm64/head.S | 2 | ||||
-rw-r--r-- | payloads/libpayload/arch/arm64/libpayload.ldscript | 14 | ||||
-rw-r--r-- | payloads/libpayload/arch/x86/head.S | 2 | ||||
-rw-r--r-- | payloads/libpayload/arch/x86/libpayload.ldscript | 14 |
6 files changed, 33 insertions, 15 deletions
diff --git a/payloads/libpayload/arch/arm/head.S b/payloads/libpayload/arch/arm/head.S index c9a97b53ed..0640c50e47 100644 --- a/payloads/libpayload/arch/arm/head.S +++ b/payloads/libpayload/arch/arm/head.S @@ -56,4 +56,4 @@ ENDPROC(_entry) 1: .word cb_header_ptr 2: -.word _stack +.word _estack diff --git a/payloads/libpayload/arch/arm/libpayload.ldscript b/payloads/libpayload/arch/arm/libpayload.ldscript index 5510218ca2..d60ba8afb8 100644 --- a/payloads/libpayload/arch/arm/libpayload.ldscript +++ b/payloads/libpayload/arch/arm/libpayload.ldscript @@ -40,29 +40,35 @@ SECTIONS _start = .; .text : { + _text = .; *(.text._entry) *(.text) *(.text.*) + _etext = .; } .rodata : { + _rodata = .; *(.rodata) *(.rodata.*) + _erodata = .; } .data : { + _data = .; *(.data) *(.data.*) + _edata = .; } - _edata = .; - .bss : { + _bss = .; *(.sbss) *(.sbss.*) *(.bss) *(.bss.*) *(COMMON) + _ebss = .; /* Stack and heap */ @@ -72,10 +78,10 @@ SECTIONS . = ALIGN(16); _eheap = .; - _estack = .; + _stack = .; . += CONFIG_LP_STACK_SIZE; . = ALIGN(16); - _stack = .; + _estack = .; } _end = .; diff --git a/payloads/libpayload/arch/arm64/head.S b/payloads/libpayload/arch/arm64/head.S index 0b26fe5bce..0ebadeae34 100644 --- a/payloads/libpayload/arch/arm64/head.S +++ b/payloads/libpayload/arch/arm64/head.S @@ -55,4 +55,4 @@ ENDPROC(_entry) 1: .quad cb_header_ptr 2: -.quad _stack +.quad _estack diff --git a/payloads/libpayload/arch/arm64/libpayload.ldscript b/payloads/libpayload/arch/arm64/libpayload.ldscript index e225aa8bca..c9881f7ec0 100644 --- a/payloads/libpayload/arch/arm64/libpayload.ldscript +++ b/payloads/libpayload/arch/arm64/libpayload.ldscript @@ -40,31 +40,37 @@ SECTIONS _start = .; .text : { + _text = .; *(.text._entry) *(.text) *(.text.*) + _etext = .; } .rodata : { + _rodata = .; *(.rodata) *(.rodata.*) + _erodata = .; } .data : { + _data = .; *(.data) *(.data.*) + _edata = .; } - _edata = .; - .bss : { *(.ttb_buffer) + _bss = .; *(.sbss) *(.sbss.*) *(.bss) *(.bss.*) *(COMMON) + _ebss = .; /* Stack and heap */ @@ -74,10 +80,10 @@ SECTIONS . = ALIGN(16); _eheap = .; - _estack = .; + _stack = .; . += CONFIG_LP_STACK_SIZE; . = ALIGN(16); - _stack = .; + _estack = .; } _end = .; diff --git a/payloads/libpayload/arch/x86/head.S b/payloads/libpayload/arch/x86/head.S index 87d0037a08..1e0e4a0d3d 100644 --- a/payloads/libpayload/arch/x86/head.S +++ b/payloads/libpayload/arch/x86/head.S @@ -73,7 +73,7 @@ _init: /* Store current stack pointer and set up new stack. */ movl %esp, %eax - movl $_stack, %esp + movl $_estack, %esp pushl %eax /* Enable special x86 functions if present. */ diff --git a/payloads/libpayload/arch/x86/libpayload.ldscript b/payloads/libpayload/arch/x86/libpayload.ldscript index 2d7e9129f7..0f27ed9233 100644 --- a/payloads/libpayload/arch/x86/libpayload.ldscript +++ b/payloads/libpayload/arch/x86/libpayload.ldscript @@ -39,29 +39,35 @@ SECTIONS _start = .; .text : { + _text = .; *(.text._entry) *(.text) *(.text.*) + _etext = .; } .rodata : { + _rodata = .; *(.rodata) *(.rodata.*) + _erodata = .; } .data : { + _data = .; *(.data) *(.data.*) + _edata = .; } - _edata = .; - .bss : { + _bss = .; *(.sbss) *(.sbss.*) *(.bss) *(.bss.*) *(COMMON) + _ebss = .; /* Stack and heap */ @@ -71,10 +77,10 @@ SECTIONS . = ALIGN(16); _eheap = .; - _estack = .; + _stack = .; . += CONFIG_LP_STACK_SIZE; . = ALIGN(16); - _stack = .; + _estack = .; } _end = .; |