[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. llvm-svn: 245149
This commit is contained in:
@@ -1867,6 +1867,8 @@ static void WriteInstruction(const Instruction &I, unsigned InstID,
|
||||
Code = bitc::FUNC_CODE_INST_CATCHRET;
|
||||
const auto &CRI = cast<CatchReturnInst>(I);
|
||||
Vals.push_back(VE.getValueID(CRI.getSuccessor()));
|
||||
if (CRI.hasReturnValue())
|
||||
PushValueAndType(CRI.getReturnValue(), InstID, Vals, VE);
|
||||
break;
|
||||
}
|
||||
case Instruction::CatchPad: {
|
||||
|
||||
Reference in New Issue
Block a user