[clang] [llvm] [win][x64] Unwind v2 3/n: Add support for emitting unwind v2 information (equivalent to MSVC /d2epilogunwind) (PR #129142)

Eli Friedman via cfe-commits cfe-commits at lists.llvm.org
Fri Feb 28 11:13:40 PST 2025


efriedma-quic wrote:

> we can't have epilogs in chained unwind tables, since they are only for additional savereg codes.

How do epilogs work in chained unwind tables?  Do the epilog opcodes from the original table get ignored?  If they do get ignored, can you specify different opcodes in the chained table?  If they don't get ignored, are the specified offsets relative to the chained unwind table?

Also, you don't actually have to chain the unwind tables; you can just specify the prolog is size zero, I think?

> the only other place we'd need it is for functions with more than 256 unwind codes

I suspect you can hit the 4KB limit before you hit the opcode limit.

https://github.com/llvm/llvm-project/pull/129142


More information about the cfe-commits mailing list