fix(verify): fix non-amd64 JIT trampolines and validate under qemu
This commit is contained in:
@@ -37,8 +37,8 @@ TEXT ·enterJITChecked(SB), NOSPLIT, $0-16
|
||||
MOV $SENTINEL_G, g // sentinel in g
|
||||
MOV stack+8(FP), X6 // load prepared stack pointer (T1)
|
||||
LD 0(X6), X1 // load leaveJITCheckedRaw into RA
|
||||
ADD $8, X6, X6 // advance past the return slot
|
||||
MOV X6, X2 // switch to prepared stack (SP)
|
||||
MOV X6, X2 // SP stays on the leave slot: the kernel
|
||||
// reads its first argument at SP+8
|
||||
JALR X0, 0(X5) // jump to JIT function
|
||||
|
||||
// leaveJITCheckedRaw is the raw return trampoline. It has NO Go function
|
||||
|
||||
Reference in New Issue
Block a user