[all-commits] [llvm/llvm-project] 99c634: [win] Fix EH Cont Guard targets when SEH personali...
Daniel Paoliello via All-commits
all-commits at lists.llvm.org
Fri Mar 7 09:08:09 PST 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 99c6342b5e71098197f12066fd628865793e6300
https://github.com/llvm/llvm-project/commit/99c6342b5e71098197f12066fd628865793e6300
Author: Daniel Paoliello <danpao at microsoft.com>
Date: 2025-03-07 (Fri, 07 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/WinException.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/test/CodeGen/AArch64/arm64ec-eh.ll
M llvm/test/CodeGen/AArch64/landingpad-ifcvt.ll
M llvm/test/CodeGen/X86/seh-except-restore.ll
M llvm/test/CodeGen/X86/win32-seh-catchpad.ll
Log Message:
-----------
[win] Fix EH Cont Guard targets when SEH personality is used (#129612)
There were two issues when `/guard:ehcont` is enabled with the SEH
personality on Windows:
1. As @namazso correctly identified, we bail out of
`WinException::endFunction` early for `MSVC_TableSEH` with funclets,
expecting the exception data to be emitted in `endFunclet`, but
`endFunclet` didn't copy the EHCont metadata from the function to the
module.
2. The SEH personality requires that the basic block containing the
`catchpad` is the target, not the `catchret`.
Fixes #64585
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list