fix(verify): arm64 stack save, adaptive canary and host gating
Assisted-by: GLM 5.3
This commit is contained in:
@@ -34,6 +34,9 @@ const stackPad = 64
|
||||
// Call invokes the assembled function at fnAddr with the given ABI0 argument
|
||||
// block. On arm64, the ABI0 convention places arguments on the stack starting
|
||||
// at [SP+8] (same as amd64 ABI0 in this project).
|
||||
//
|
||||
// Not safe for concurrent use: only one JIT call may be in flight at a
|
||||
// time, the trampolines keep the saved registers in package globals.
|
||||
func Call(fnAddr uintptr, args []byte) ([]byte, error) {
|
||||
stackSize := stackPad + 8 + len(args) + 64
|
||||
stackMem, err := syscall.Mmap(-1, 0, stackSize,
|
||||
|
||||
Reference in New Issue
Block a user