fix(asm): place the arm64 literal pool the way the toolchain flushes it
Assisted-by: GLM 5.3
This commit is contained in:
1 parent
4fc96decc4
commit
405e2427ed
3 files changed
+215
-68
No files matched your search
@@ -495,6 +495,10 @@ func arm64GuardBytes(fi arm64FrameInfo, blockStart int) []byte {
|
||||
return a64WordsLE(ws...)
|
||||
}
|
||||
|
||||
// arm64MoreStackBlockLen is the byte length of arm64MoreStackBlock: the
|
||||
// saved LR, the BL and the branch back, three words whatever the target.
|
||||
const arm64MoreStackBlockLen = 12
|
||||
|
||||
// arm64MoreStackBlock emits the trailing block: MOVD R30, R3 (save LR),
|
||||
// BL runtime.morestack_noctxt, B back to the function start. The BL carries
|
||||
// the R_CALLARM64 relocation.
|
||||
|
||||
Reference in new issue
Block a user