diff options
| author | qmuntal <quimmuntal@gmail.com> | 2026-03-11 13:14:41 +0100 |
|---|---|---|
| committer | Quim Muntal <quimmuntal@gmail.com> | 2026-03-25 22:41:27 -0700 |
| commit | a6500456f3dff5a8b69e5961ee58fe341ae8b30a (patch) | |
| tree | 3d03c68d60de4324d0f5a7e9d7c46e99cfd559a4 /src/encoding | |
| parent | c173b531342b05d14877a95a4186cc234edc9b9c (diff) | |
| download | go-a6500456f3dff5a8b69e5961ee58fe341ae8b30a.tar.xz | |
cmd/link: fix host object's .pdata entries order
Host objects are expected to have their .pdata entries in the correct
order, but the Go internal linker might reorder some of the functions
associated with the .pdata entries. This causes the .pdata section
in the final binary to have entries in the wrong order, and therefore
issues with unwinding on Windows.
The fix is to treat the .pdata entries of host objects as individual
symbols that will be retained only if the function they are associated
with is retained. Also, those entries will be sorted together with the
.pdata entries emitted by the Go compiler, ensuring the correct order
in the final binary.
Fixes #65116
Change-Id: I421471b2aef519b0c20707a40c4b7957db5d2ed5
Reviewed-on: https://go-review.googlesource.com/c/go/+/754080
Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Diffstat (limited to 'src/encoding')
0 files changed, 0 insertions, 0 deletions
