rnk added a comment. We can easily codegen `__builtin_ms_va_start()` and `end()` to `llvm.vastart` / `llvm.vaend`, because the first *has* to live in the win64 function and the second is a no-op. We should remove the FIXME about lowering `__builtin_ms_va_arg()` in LLVM instead of clang, because you can use it from a SysV function and it should work: consider implementing Win64 printf by calling an internal SysV vfprintf implementation. We also need to implement `__builtin_ms_va_copy()` in Clang for the same reason, but that's easy, since it's always a simple pointer load and store.
Charles, are you actively working on this or should I just fix up the patch and submit it? http://reviews.llvm.org/D1623 _______________________________________________ cfe-commits mailing list cfe-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits