aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/Support/LLVMBuilder.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/llvm/Support/LLVMBuilder.h')
-rw-r--r--include/llvm/Support/LLVMBuilder.h23
1 files changed, 16 insertions, 7 deletions
diff --git a/include/llvm/Support/LLVMBuilder.h b/include/llvm/Support/LLVMBuilder.h
index 5a80e41..bd450dc 100644
--- a/include/llvm/Support/LLVMBuilder.h
+++ b/include/llvm/Support/LLVMBuilder.h
@@ -380,22 +380,31 @@ public:
}
CallInst *CreateCall(Value *Callee, const char *Name = "") {
- return Insert(new CallInst(Callee, (Value**)0, 0, Name));
+ return Insert(new CallInst(Callee, Name));
}
CallInst *CreateCall(Value *Callee, Value *Arg, const char *Name = "") {
- return Insert(new CallInst(Callee, &Arg, 1, Name));
+ return Insert(new CallInst(Callee, Arg, Name));
}
- CallInst *CreateCall(Value *Callee, Value *Arg0, Value *Arg1,
+
+ template<typename InputIterator>
+ CallInst *CreateCall(Value *Callee, InputIterator ArgBegin, InputIterator ArgEnd,
const char *Name = "") {
- Value *Args[] = { Arg0, Arg1 };
- return Insert(new CallInst(Callee, Args, 2, Name));
+ return(Insert(new CallInst(Callee, ArgBegin, ArgEnd, Name)));
}
-
+#if 0
+ CallInst *CreateCall(Value *Callee, Value *Arg0, Value *Arg1,
+ const char *Name = "") {
+ Value *Args[] = { Arg0, Arg1 };
+ return Insert(new CallInst(Callee, Args, Args+2, Name));
+ }
+
+ // Leave this here for llvm-gcc
CallInst *CreateCall(Value *Callee, Value* const *Args, unsigned NumArgs,
const char *Name = "") {
- return Insert(new CallInst(Callee, Args, NumArgs, Name));
+ return Insert(new CallInst(Callee, Args, Args+NumArgs, Name));
}
+#endif
SelectInst *CreateSelect(Value *C, Value *True, Value *False,
const char *Name = "") {