9os

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit c3938efaed94cbf4c42fe54478f54d4baba2c7b0
parent ab6318eaa3c4be6440b9df264aa5a194d2ca9e48
Author: Dimitris Papastamos <dimitris.papastamos@arm.com>
Date:   Mon, 15 Oct 2018 12:30:31 +0100

[arm64] Terminate stackframe by zeroing frame pointer

Change-Id: I2a1a9b0cd468b3050b72f12694a1fb6151032736
Signed-off-by: Dimitris Papastamos <dimitris.papastamos@arm.com>

Diffstat:
March/arm64/arch.s | 2++
March/arm64/crt-none.s | 12++++++------
2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/arch/arm64/arch.s b/arch/arm64/arch.s @@ -180,6 +180,8 @@ _synchdl: mov x0,sp /* x0 = trapframe */ msr spsel,#0 + stp xzr,xzr,[sp,#-16]! + mov x29,sp bl synchdl adr x0,outsync b panic diff --git a/arch/arm64/crt-none.s b/arch/arm64/crt-none.s @@ -9,18 +9,18 @@ _start: getpc: sub x30,x30,4 + adr x0,vectbl + msr S3_6_C12_C0_6,x0 /* VBAR_R */ + isb + msr spsel,#0 ldr x0,=SRAMADDR - mov x1,#(SRAMSIZE-16) /* Stack grows down towards BSS */ + mov x1,#SRAMSIZE /* Stack grows down towards BSS */ add x0,x0,x1 mov sp,x0 + stp xzr,xzr,[sp,#-16]! mov x29,sp - adr x0,vectbl - msr S3_6_C12_C0_6,x0 /* VBAR_R */ - isb - - stp xzr,xzr,[x29] /* zero FP/LR to terminate backtrace */ mov x0,x30 ldr x1,=SRAMADDR mov x2,#SRAMSIZE