I think the answer is 'no' as long as LLVM handles variadic args the way it currently does. Currently, the fits_in_gp predicate is computed based on assumptions about the size of arguments on the stack. Anything that could change that will break variadic functions. http://reviews.llvm.org/D5055