wow64: Use the right SEH opcode in raise_exception on arm64.
On ARM and ARM64, each SEH opcode is supposed to map to exactly one
instruction; the operation of writing x29+x30 with a stack offset
with writeback is called ".seh_save_fplr_x".
Using the right opcode would fix inconsistent unwinding if we would
unwind from near the end of the prologue (which is implausible here).
However, clang/LLVM might also get checking for mismatches between
SEH opcodes and the prolog/epilog ranges
(https://reviews.llvm.org/D131394), mainly to guard against
inconsistencies in the unwind info generated by the compiler, but
that would trigger on this handwritten function too.
Showing
Please
register
or
sign in
to comment