construct va_list from llvm::Instruction


I'm trying to write some forward constant propagation of sprintf and friends,
and I need a way to construct a (build) va_list from the IR of a
variadic function
so that I can evaluate it at build time.

I can't find a standard way of doing this.