mirror of
https://github.com/golang/go
synced 2024-11-17 18:04:48 -07:00
runtime: fix invalid pointer in windows/arm64 badsignal2
Initializes the R3 register with an available address in the stack. The addressed location is used to receive the number of bytes written by WriteFile.
Fixes #56080
Change-Id: I0368eb7a31d2d6a098fa9c26e074eb1114a92704
GitHub-Last-Rev: 23dbdb5378
GitHub-Pull-Request: golang/go#56153
Reviewed-on: https://go-review.googlesource.com/c/go/+/442216
Reviewed-by: Cherry Mui <cherryyz@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Cherry Mui <cherryyz@google.com>
Reviewed-by: Bryan Mills <bcmills@google.com>
This commit is contained in:
parent
5bef938125
commit
4a4de14166
@ -113,7 +113,8 @@ TEXT runtime·badsignal2(SB),NOSPLIT,$16-0
|
||||
MOVD $runtime·badsignalmsg(SB), R1 // lpBuffer
|
||||
MOVD $runtime·badsignallen(SB), R2 // lpNumberOfBytesToWrite
|
||||
MOVD (R2), R2
|
||||
MOVD R13, R3 // lpNumberOfBytesWritten
|
||||
// point R3 to stack local that will receive number of bytes written
|
||||
ADD $16, RSP, R3 // lpNumberOfBytesWritten
|
||||
MOVD $0, R4 // lpOverlapped
|
||||
MOVD runtime·_WriteFile(SB), R12
|
||||
SUB $16, RSP // skip over saved frame pointer below RSP
|
||||
|
Loading…
Reference in New Issue
Block a user