[IR] Give catchret an optional 'return value' operand
authorDavid Majnemer <david.majnemer@gmail.com>
Sat, 15 Aug 2015 02:46:08 +0000 (02:46 +0000)
committerDavid Majnemer <david.majnemer@gmail.com>
Sat, 15 Aug 2015 02:46:08 +0000 (02:46 +0000)
commitde17e7736f6ca8c708acfcc297a466e786f38833
treef63e3fb71c19fc23a518636297df35704f6493c9
parent276ea22dc9394895602695c396844268c7d64a42
[IR] Give catchret an optional 'return value' operand

Some personality routines require funclet exit points to be clearly
marked, this is done by producing a token at the funclet pad and
consuming it at the corresponding ret instruction.  CleanupReturnInst
already had a spot for this operand but CatchReturnInst did not.
Other personality routines don't need to use this which is why it has
been made optional.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@245149 91177308-0d34-0410-b5e6-96231b3b80d8
16 files changed:
docs/LangRef.rst
include/llvm/IR/Instructions.h
lib/Analysis/CaptureTracking.cpp
lib/Analysis/InstructionSimplify.cpp
lib/Analysis/ScalarEvolutionExpander.cpp
lib/AsmParser/LLParser.cpp
lib/Bitcode/Reader/BitcodeReader.cpp
lib/Bitcode/Writer/BitcodeWriter.cpp
lib/IR/AsmWriter.cpp
lib/IR/Dominators.cpp
lib/IR/Instructions.cpp
lib/Transforms/Scalar/Reassociate.cpp
lib/Transforms/Utils/CodeExtractor.cpp
lib/Transforms/Utils/LCSSA.cpp
test/CodeGen/WinEH/wineh-demotion.ll
test/Feature/exception.ll