Fix inlining to not lose the "cleanup" clause from landingpads
authorMark Seaborn <mseaborn@chromium.org>
Sun, 8 Dec 2013 00:51:21 +0000 (00:51 +0000)
committerMark Seaborn <mseaborn@chromium.org>
Sun, 8 Dec 2013 00:51:21 +0000 (00:51 +0000)
commit34005c92bb2feacee642f54f7a8fa1e6df49403c
tree05ed05a78621191e19bd88b5fe9109a90be16eca
parent615f9b7162ac6444c9e45042477634b73ba8850a
Fix inlining to not lose the "cleanup" clause from landingpads

This fixes PR17872.  This bug can lead to C++ destructors not being
called when they should be, when an exception is thrown.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196711 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Utils/InlineFunction.cpp
test/Transforms/Inline/invoke-cleanup.ll [new file with mode: 0644]