: TerminatorInst(Type::VoidTy, Instruction::Ret, &RetVal, 0, InsertAtEnd) {
}
-ReturnInst::ReturnInst(const std::vector<Value *> &retVals,
+ReturnInst::ReturnInst(Value * const* retVals, unsigned N,
Instruction *InsertBefore)
- : TerminatorInst(Type::VoidTy, Instruction::Ret, &RetVal, retVals.size(),
- InsertBefore) {
- if (!retVals.empty())
- init(&retVals[0], retVals.size());
+ : TerminatorInst(Type::VoidTy, Instruction::Ret, &RetVal, N, InsertBefore) {
+ if (N != 0)
+ init(retVals, N);
}
-ReturnInst::ReturnInst(const std::vector<Value *> &retVals,
+ReturnInst::ReturnInst(Value * const* retVals, unsigned N,
BasicBlock *InsertAtEnd)
- : TerminatorInst(Type::VoidTy, Instruction::Ret, &RetVal, retVals.size(),
- InsertAtEnd) {
- if (!retVals.empty())
- init(&retVals[0], retVals.size());
+ : TerminatorInst(Type::VoidTy, Instruction::Ret, &RetVal, N, InsertAtEnd) {
+ if (N != 0)
+ init(retVals, N);
}
-ReturnInst::ReturnInst(const std::vector<Value *> &retVals)
- : TerminatorInst(Type::VoidTy, Instruction::Ret, &RetVal, retVals.size()) {
- if (!retVals.empty())
- init(&retVals[0], retVals.size());
+ReturnInst::ReturnInst(Value * const* retVals, unsigned N)
+ : TerminatorInst(Type::VoidTy, Instruction::Ret, &RetVal, N) {
+ if (N != 0)
+ init(retVals, N);
}
void ReturnInst::init(Value * const* retVals, unsigned N) {
-
assert (N > 0 && "Invalid operands numbers in ReturnInst init");
NumOperands = N;