]> granicus.if.org Git - clang/commit
[SEH] Implement filter capturing in CodeGen
authorReid Kleckner <reid@kleckner.net>
Mon, 6 Apr 2015 23:51:44 +0000 (23:51 +0000)
committerReid Kleckner <reid@kleckner.net>
Mon, 6 Apr 2015 23:51:44 +0000 (23:51 +0000)
commitc02f5c94f3a803dc5a812b1854fea33ca60bcbf0
tree270755f2bb204a83eee4953971d35fccf834025e
parentb32dd42dbb0a364559d70729e2fce415c77c66d1
[SEH] Implement filter capturing in CodeGen

While capturing filters aren't very common, we'd like to outline
__finally blocks in the frontend to simplify -O0 EH preparation and
reduce code size. Finally blocks are usually have captures, and this is
the first step towards that.

Currently we don't support capturing 'this' or VLAs.

Reviewers: majnemer

Differential Revision: http://reviews.llvm.org/D8825

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@234261 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CGException.cpp
lib/CodeGen/CodeGenFunction.cpp
lib/CodeGen/CodeGenFunction.h
test/CodeGenCXX/exceptions-seh-filter-captures.cpp [new file with mode: 0644]