]> Cypherpunks.ru repositories - gostls13.git/commit
[release-branch.go1.21] cmd/internal/obj/arm64: fix frame pointer restore in epilogue
authorKeith Randall <khr@golang.org>
Mon, 30 Oct 2023 20:23:00 +0000 (13:23 -0700)
committerMichael Knyszek <mknyszek@google.com>
Fri, 2 Feb 2024 16:26:24 +0000 (16:26 +0000)
commit2fdad8af6daf385ab688ba5465442fe943187b84
treeb8f635afe54555d5286cf8c18cdc475981e4b8d7
parent01c93ad0498b4bc337ced16f4a4b8b65f255189c
[release-branch.go1.21] cmd/internal/obj/arm64: fix frame pointer restore in epilogue

For leaf but nonzero-frame functions.

Currently we're not restoring it properly. We also need to restore
it before popping the stack frame, so that the frame won't get
clobbered by a signal handler in the meantime.

For #63830
Fixes #65449

Needs a test, but I'm not at all sure how we would actually do that. Leaving for inspiration.

Change-Id: I273a25f2a838f05a959c810145cccc5428eaf164
Reviewed-on: https://go-review.googlesource.com/c/go/+/538635
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Eric Fang <eric.fang@arm.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: David Chase <drchase@google.com>
(cherry picked from commit c9888bdfe2cdd85d14d7d184863d2e8bc42ff73c)
Reviewed-on: https://go-review.googlesource.com/c/go/+/560735
TryBot-Bypass: Michael Knyszek <mknyszek@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
src/cmd/internal/obj/arm64/obj7.go