summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGExprAgg.cpp
diff options
context:
space:
mode:
authorCharles Davis <cdavis5x@gmail.com>2015-09-17 20:55:33 +0000
committerCharles Davis <cdavis5x@gmail.com>2015-09-17 20:55:33 +0000
commitc7d5c94f78c71d7369c5e3a55daf4d819943c15b (patch)
tree699d74797a9eb67c9d86736b349df7eb84c3d929 /clang/lib/CodeGen/CGExprAgg.cpp
parent1bbfa7f9d7e33babe186b046b6719da55deaf4af (diff)
downloadbcm5719-llvm-c7d5c94f78c71d7369c5e3a55daf4d819943c15b.tar.gz
bcm5719-llvm-c7d5c94f78c71d7369c5e3a55daf4d819943c15b.zip
Support __builtin_ms_va_list.
Summary: This change adds support for `__builtin_ms_va_list`, a GCC extension for variadic `ms_abi` functions. The existing `__builtin_va_list` support is inadequate for this because `va_list` is defined differently in the Win64 ABI vs. the System V/AMD64 ABI. Depends on D1622. Reviewers: rsmith, rnk, rjmccall CC: cfe-commits Differential Revision: http://reviews.llvm.org/D1623 llvm-svn: 247941
Diffstat (limited to 'clang/lib/CodeGen/CGExprAgg.cpp')
-rw-r--r--clang/lib/CodeGen/CGExprAgg.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/CodeGen/CGExprAgg.cpp b/clang/lib/CodeGen/CGExprAgg.cpp
index 1ab9e022c84..a229d94ad9e 100644
--- a/clang/lib/CodeGen/CGExprAgg.cpp
+++ b/clang/lib/CodeGen/CGExprAgg.cpp
@@ -960,8 +960,8 @@ void AggExprEmitter::VisitChooseExpr(const ChooseExpr *CE) {
}
void AggExprEmitter::VisitVAArgExpr(VAArgExpr *VE) {
- Address ArgValue = CGF.EmitVAListRef(VE->getSubExpr());
- Address ArgPtr = CGF.EmitVAArg(ArgValue, VE->getType());
+ Address ArgValue = Address::invalid();
+ Address ArgPtr = CGF.EmitVAArg(VE, ArgValue);
if (!ArgPtr.isValid()) {
// If EmitVAArg fails, we fall back to the LLVM instruction.
OpenPOWER on IntegriCloud