1651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// RUN: %clang_cc1 -emit-llvm %s -o - -triple=i386-pc-win32 | FileCheck %s
2d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// RUN: %clang_cc1 -emit-llvm %s -o - -triple=i386-mingw32 | FileCheck %s
3d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola
4d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindolavoid __stdcall f1(void) {}
5d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// CHECK: define x86_stdcallcc void @"\01_f1@0"
6d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola
7d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindolavoid __fastcall f2(void) {}
8d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// CHECK: define x86_fastcallcc void @"\01@f2@0"
9d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola
10d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindolavoid __stdcall f3() {}
11d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// CHECK: define x86_stdcallcc void @"\01_f3@0"
12d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola
13d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindolavoid __fastcall f4(char a) {}
14d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// CHECK: define x86_fastcallcc void @"\01@f4@4"
15d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola
16d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindolavoid __fastcall f5(short a) {}
17d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// CHECK: define x86_fastcallcc void @"\01@f5@4"
18d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola
19d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindolavoid __fastcall f6(int a) {}
20d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// CHECK: define x86_fastcallcc void @"\01@f6@4"
21d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola
22d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindolavoid __fastcall f7(long a) {}
23d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// CHECK: define x86_fastcallcc void @"\01@f7@4"
24d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola
25d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindolavoid __fastcall f8(long long a) {}
26d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// CHECK: define x86_fastcallcc void @"\01@f8@8"
27d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola
28d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindolavoid __fastcall f9(long long a, char b, char c, short d) {}
29d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// CHECK: define x86_fastcallcc void @"\01@f9@20"(i64 %a, i8 signext %b, i8
30d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// signext %c, i16 signext %d)
31d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola
32d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindolavoid f12(void) {}
33d6be277ba4bf271c6de8ffcc8c46f060c8cbd4d5Rafael Espindola// CHECK: define void @f12(
34