[PATCH] D13424: [WinEH] Create a separate MBB for funclet prologues
David Majnemer via llvm-commits
llvm-commits at lists.llvm.org
Sun Oct 4 11:47:37 PDT 2015
majnemer created this revision.
majnemer added reviewers: rnk, JosephTremoulet.
majnemer added a subscriber: llvm-commits.
Our current emission strategy is to emit the funclet prologue in the
CatchPad's normal destination. This is problematic because
intra-funclet control flow to the normal destination is not erroneous
and results in us reevaluating the prologue if said control flow is
taken.
Instead, use the CatchPad's location for the funclet prologue. This
correctly models our desire to have unwind edges evaluate the prologue
but edges to the normal destination result in typical control flow.
http://reviews.llvm.org/D13424
Files:
lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
lib/CodeGen/WinEHPrepare.cpp
test/CodeGen/X86/funclet-layout.ll
test/CodeGen/X86/seh-catchpad.ll
test/CodeGen/X86/win-catchpad-csrs.ll
test/CodeGen/X86/win-catchpad.ll
test/CodeGen/X86/win-funclet-cfi.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D13424.36472.patch
Type: text/x-patch
Size: 13427 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151004/9b11d983/attachment.bin>
More information about the llvm-commits
mailing list