[clang] [llvm] [win][x64] Unwind v2 3/n: Add support for emitting unwind v2 information (equivalent to MSVC /d2epilogunwind) (PR #129142)
Pedro Miguel Justo via cfe-commits
cfe-commits at lists.llvm.org
Fri Feb 28 23:12:55 PST 2025
pmsjt wrote:
https://learn.microsoft.com/en-us/cpp/build/exception-handling-x64?view=msvc-170#chained-unwind-info-structures
I don't know what an "atend" is, but what you are describing doesn't seem to be a possible solution. Epilogs must be present in the main function entry. Only the main function entry can contain unwind opcodes which make changes to the stack pointer and return (or tail-call). Fragments can save and restore registers with mov but not push/pop. Think of fragments as extensions of the body, which can save and restore aditional registers, but they won't have prologs or epilogs of their own.
https://github.com/llvm/llvm-project/pull/129142
More information about the cfe-commits
mailing list