Don't insert lifetime end markers on deoptimizing returns
authorSanjoy Das <sanjoy@playingwithpointers.com>
Fri, 1 Apr 2016 02:51:26 +0000 (02:51 +0000)
committerSanjoy Das <sanjoy@playingwithpointers.com>
Fri, 1 Apr 2016 02:51:26 +0000 (02:51 +0000)
commit18b92968eabd0c3c79417e29d97e9ab502143ed3
tree3178d09354a7505ce3f8ddb479d25ec950e97b2d
parent9d41a8f269a284cf1b08c0cd37d3c38be6f0d2a2
Don't insert lifetime end markers on deoptimizing returns

They're not necessary (since the lifetime of the alloca is trivially
over due to the return), and the way LLVM inserts the lifetime.end
markers breaks the IR (we get a lifetime end marker between the
deoptimize call and the return).

llvm-svn: 265100
llvm/lib/Transforms/Utils/InlineFunction.cpp
llvm/test/Transforms/Inline/deoptimize-intrinsic.ll