efriedma added inline comments.
================ Comment at: test/Sema/ms-forceinline-on-variadic.cpp:14 + __builtin_va_end(ap); +} + ---------------- compnerd wrote: > DHowett-MSFT wrote: > > compnerd wrote: > > > Would be nice to have a second test that uses the Microsoft definitions > > > (`char *` and the offsetting handling for the `va_list` since when > > > building against the Windows SDK, that is the way that `va_list` and the > > > `va_*` family of functions will get handled. > > Should/do those still result in the intrinsic being emitted? If not, LLVM > > shouldn't have trouble during instruction scheduling, but inlining may > > still be broken. Regardless, though, this test exists only to make sure the > > function doesn't end up truly inlined, regardless of its contents. > That would still be lowered with the intrinsics. The intent is to make sure > that the different implementation does get lowered appropriately. To get correct lowering in LLVM, the va_start macro *must* be translated to __builtin_va_start(); otherwise, the generated IR is nonsense and you'll miscompile. (See also https://bugs.llvm.org/show_bug.cgi?id=24320 .) Repository: rC Clang https://reviews.llvm.org/D44646 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits