From 0b339e4d80eaae905f879e26de756b47415fdb02 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 llvm-svn: 343184 --- clang/lib/Sema/SemaChecking.cpp | 1 + clang/test/SemaCXX/microsoft-varargs.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp index c46468f..a258d34 100644 --- a/clang/lib/Sema/SemaChecking.cpp +++ b/clang/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/clang/test/SemaCXX/microsoft-varargs.cpp b/clang/test/SemaCXX/microsoft-varargs.cpp index 5b0f90e..311ce4a 100644 --- a/clang/test/SemaCXX/microsoft-varargs.cpp +++ b/clang/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.7.4