Make llvm.eh.begincatch use an outparam
authorReid Kleckner <reid@kleckner.net>
Tue, 3 Mar 2015 17:41:09 +0000 (17:41 +0000)
committerReid Kleckner <reid@kleckner.net>
Tue, 3 Mar 2015 17:41:09 +0000 (17:41 +0000)
commit2f05d4c91f2020dd4cfff4f66ff77366bd56f246
tree647149cca04d44442297dee366058c6c4e4e456a
parent8e38f30e49f323a78c27083004c8651525e1bbfd
Make llvm.eh.begincatch use an outparam

Ultimately, __CxxFrameHandler3 needs us to put a stack offset in a
table, and it will take responsibility for copying the exception object
into that slot. Modelling the exception object as an SSA value returned
by begincatch isn't going to work in general, so make it use an output
parameter.

Reviewers: andrew.w.kaylor

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

llvm-svn: 231086
llvm/docs/ExceptionHandling.rst
llvm/include/llvm/IR/Intrinsics.td
llvm/test/Analysis/Lint/cppeh-catch-intrinsics-clean.ll
llvm/test/Analysis/Lint/cppeh-catch-intrinsics.ll
llvm/test/CodeGen/X86/cppeh-catch-all.ll
llvm/test/CodeGen/X86/cppeh-catch-scalar.ll
llvm/test/CodeGen/X86/cppeh-frame-vars.ll
llvm/test/CodeGen/X86/cppeh-inalloca.ll
llvm/test/CodeGen/X86/cppeh-nonalloca-frame-values.ll