1*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c99 -x c %s -triple aarch64-linux -o - | FileCheck %s --check-prefix=AARCH64-C
2*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c++17 -x c++ %s -triple aarch64-linux -o - | FileCheck %s --check-prefix=AARCH64-CXX
3*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c99 -x c %s -triple x86_64-linux -o - | FileCheck %s --check-prefix=X86_64-C
4*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c++17 -x c++ %s -triple x86_64-linux -o - | FileCheck %s --check-prefix=X86_64-CXX
5*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c99 -x c %s -triple ppc64-linux -o - | FileCheck %s --check-prefix=PPC64-C
6*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c++17 -x c++ %s -triple ppc64-linux -o - | FileCheck %s --check-prefix=PPC64-CXX
7*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c99 -x c %s -triple armv7-apple-darwin9 -target-abi aapcs -o - | FileCheck %s --check-prefix=AAPCS-C
8*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c++17 -x c++ %s -triple armv7-apple-darwin9 -target-abi aapcs -o - | FileCheck %s --check-prefix=AAPCS-CXX
9*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c99 -x c %s -triple s390x-linux -o - | FileCheck %s --check-prefix=SYSTEMZ-C
10*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c++17 -x c++ %s -triple s390x-linux -o - | FileCheck %s --check-prefix=SYSTEMZ-CXX
11*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c99 -x c %s -triple i686-linux -o - | FileCheck %s --check-prefix=CHARPTR-C
12*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c++17 -x c++ %s -triple i686-linux -o - | FileCheck %s --check-prefix=CHARPTR-CXX
13*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c99 -x c %s -triple xcore -o - | FileCheck %s --check-prefix=VOIDPTR-C
14*9466b491SNikita Popov // RUN: %clang_cc1 -emit-llvm -std=c++17 -x c++ %s -triple xcore -o - | FileCheck %s --check-prefix=VOIDPTR-CXX
15c38d51f8SRichard Smith
16c38d51f8SRichard Smith #include <stdarg.h>
17c38d51f8SRichard Smith
18*9466b491SNikita Popov // AARCH64-C: define {{.*}} @f(i32 noundef %n, ptr noundef %list)
19*9466b491SNikita Popov // AARCH64-CXX: define {{.*}} @_Z1fiSt9__va_list(i32 noundef %n, ptr noundef %list)
20*9466b491SNikita Popov // X86_64-C: define {{.*}} @f(i32 noundef %n, ptr noundef %list)
21*9466b491SNikita Popov // X86_64-CXX: define {{.*}} @_Z1fiP13__va_list_tag(i32 noundef %n, ptr noundef %list)
22*9466b491SNikita Popov // PPC64-C: define {{.*}} @f(i32 noundef signext %n, ptr noundef %list)
23*9466b491SNikita Popov // PPC64-CXX: define {{.*}} @_Z1fiPc(i32 noundef signext %n, ptr noundef %list)
241b1c8d83Shyeongyu kim // AAPCS-C: define {{.*}} @f(i32 noundef %n, [1 x i32] %list.coerce)
251b1c8d83Shyeongyu kim // AAPCS-CXX: define {{.*}} @_Z1fiSt9__va_list(i32 noundef %n, [1 x i32] %list.coerce)
26*9466b491SNikita Popov // SYSTEMZ-C: define {{.*}} @f(i32 noundef signext %n, ptr noundef %list)
27*9466b491SNikita Popov // SYSTEMZ-CXX: define {{.*}} @_Z1fiP13__va_list_tag(i32 noundef signext %n, ptr noundef %list)
28*9466b491SNikita Popov // CHARPTR-C: define {{.*}} @f(i32 noundef %n, ptr noundef %list)
29*9466b491SNikita Popov // CHARPTR-CXX: define {{.*}} @_Z1fiPc(i32 noundef %n, ptr noundef %list)
30*9466b491SNikita Popov // VOIDPTR-C: define {{.*}} @f(i32 noundef %n, ptr noundef %list)
31*9466b491SNikita Popov // VOIDPTR-CXX: define {{.*}} @_Z1fiPv(i32 noundef %n, ptr noundef %list)
f(int n,va_list list)32c38d51f8SRichard Smith void f(int n, va_list list) {}
33