Inserting a varargs function declaration with getOrInsertFunction()?

I need to insert a varargs function declaration from within an LLVM pass. getOrInsertFunction() allows an arbitrary list of type parameters for function arguments to be passed in, but as far as I can tell there is no LLVM "type" to represent the variable-length portion of a function argument list. How is this normally done?

--Patrick

I am not sure how it is normally done, but I have used
getOrInsertFunction to insert function calls with variable arguments
and FunctionType::get to build my function type. Check out
DerivedTypes.h and look at the get methods (there are options with
isVarArg as a parameter).

Scott

Hi Patrick,

I need to insert a varargs function declaration from within an LLVM
pass. getOrInsertFunction() allows an arbitrary list of type parameters
for function arguments to be passed in, but as far as I can tell there
is no LLVM "type" to represent the variable-length portion of a function
argument list. How is this normally done?

when you create a FunctionType you can specify whether it is varargs or not.

Ciao,

Duncan.