From 4d8a679e365fd96e5bcd0d097268ed803ce842cf Mon Sep 17 00:00:00 2001 From: Martin Storsjo Date: Thu, 27 Sep 2018 08:24:15 +0000 Subject: [PATCH] [Sema] Handle __va_start for Windows/ARM64 in the same way as for ARM This fixes PR39090. Differential Revision: https://reviews.llvm.org/D52571 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@343184 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Sema/SemaChecking.cpp | 1 + test/SemaCXX/microsoft-varargs.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/lib/Sema/SemaChecking.cpp b/lib/Sema/SemaChecking.cpp index c46468f1c7..a258d349c6 100644 --- a/lib/Sema/SemaChecking.cpp +++ b/lib/Sema/SemaChecking.cpp @@ -929,6 +929,7 @@ Sema::CheckBuiltinFunctionCall(FunctionDecl *FDecl, unsigned BuiltinID, break; case Builtin::BI__va_start: { switch (Context.getTargetInfo().getTriple().getArch()) { + case llvm::Triple::aarch64: case llvm::Triple::arm: case llvm::Triple::thumb: if (SemaBuiltinVAStartARMMicrosoft(TheCall)) diff --git a/test/SemaCXX/microsoft-varargs.cpp b/test/SemaCXX/microsoft-varargs.cpp index 5b0f90eb5c..311ce4a54f 100644 --- a/test/SemaCXX/microsoft-varargs.cpp +++ b/test/SemaCXX/microsoft-varargs.cpp @@ -1,4 +1,5 @@ // RUN: %clang_cc1 -triple thumbv7-windows -fms-compatibility -fsyntax-only %s -verify +// RUN: %clang_cc1 -triple aarch64-windows -fms-compatibility -fsyntax-only %s -verify // expected-no-diagnostics extern "C" { -- 2.40.0