varargs heads up

Sometime this weekend (or today) vararg support will change. vanext
will go away, and the intrinsic signatures will change. Backwards
compatibility code will be included so front ends won't need to change
initially (after that code is tested, then we will upgrade llvm-gcc).

What should work after the transition:
All Pattern based ISels (default on x86, PPC, Alpha, IA64)
Existing .bc and .ll files

What will break:
SparcV9
SparcV8 (which doesn't currently support varargs, so not a big deal)
Simple ISels for x86 and PPC (not the default codegen, so shouldn't
really affect anybody)

If you read a .ll or .bc file it will be converted to the new format and
any file written will use the new instructions and intrinsics. And yes,
the conversion produces horibly ugly code, but oh well.

This all sounds good, except that it is not acceptable to break SparcV9 until we have a replacement... :frowning:

I can update the X86 simple isel later and nate can update the PPC one if he wants, so I'm not worried about those [like you said, they are disabled by default now anyway].

-Chris