]> Cypherpunks repositories - gostls13.git/commit
runtime: factor out windows sigtramp
authorqmuntal <quimmuntal@gmail.com>
Fri, 16 Dec 2022 15:54:03 +0000 (16:54 +0100)
committerQuim Muntal <quimmuntal@gmail.com>
Tue, 24 Jan 2023 12:05:07 +0000 (12:05 +0000)
commitcf9263dee1bb160f013a080bbda3532a7d35da15
treec6743f75c942150fb1685ec1da9f6e874762eae3
parente39c7a37f0f1a992eb65202d05c3148524c5c0ef
runtime: factor out windows sigtramp

This CL factors out part of the Windows sigtramp implementation, which
was duplicated in all four architectures. The new common code is
implemented in Go rather than in assembly, which will make Windows
error handling easier to reason and maintain.

While here, implement the control flow guard workaround on
windows/386, which almost comes for free.

Change-Id: I0bf38c28c54793225126e161bd95527a62de05e0
Reviewed-on: https://go-review.googlesource.com/c/go/+/458135
Run-TryBot: Quim Muntal <quimmuntal@gmail.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Bryan Mills <bcmills@google.com>
Reviewed-by: Michael Pratt <mpratt@google.com>
src/runtime/defs_windows.go
src/runtime/defs_windows_386.go
src/runtime/defs_windows_amd64.go
src/runtime/defs_windows_arm.go
src/runtime/defs_windows_arm64.go
src/runtime/signal_windows.go
src/runtime/sys_windows_386.s
src/runtime/sys_windows_amd64.s
src/runtime/sys_windows_arm.s
src/runtime/sys_windows_arm64.s