blob: 9db23a074d8532d3d21694e94fdd56da366f58c5 [file] [log] [blame]
Rafael Espindola0d8ecf32012-09-22 15:26:38 +00001// RUN: %clang -target i386-unknown-unknown -### -S -O0 -Os %s -o %t.s -fverbose-asm -funwind-tables -fvisibility=hidden 2>&1 | FileCheck -check-prefix=I386 %s
2// I386: "-triple" "i386-unknown-unknown"
3// I386: "-S"
4// I386: "-disable-free"
5// I386: "-mrelocation-model" "static"
6// I386: "-mdisable-fp-elim"
7// I386: "-masm-verbose"
8// I386: "-munwind-tables"
9// I386: "-Os"
10// I386: "-fvisibility"
11// I386: "hidden"
12// I386: "-o"
13// I386: clang-translation
Rafael Espindolad0364fb2012-09-22 22:30:04 +000014// RUN: %clang -target i386-apple-darwin9 -### -S %s -o %t.s 2>&1 | \
15// RUN: FileCheck -check-prefix=YONAH %s
16// YONAH: "-target-cpu"
17// YONAH: "yonah"
18// RUN: %clang -target x86_64-apple-darwin9 -### -S %s -o %t.s 2>&1 | \
19// RUN: FileCheck -check-prefix=CORE2 %s
20// CORE2: "-target-cpu"
21// CORE2: "core2"
Jim Grosbach32ca73e2013-11-16 00:53:35 +000022// RUN: %clang -target x86_64h-apple-darwin -### -S %s -o %t.s 2>&1 | \
23// RUN: FileCheck -check-prefix=AVX2 %s
24// AVX2: "-target-cpu"
25// AVX2: "core-avx2"
Daniel Dunbar87667aa2009-12-08 19:49:51 +000026
Rafael Espindola77072622012-09-22 22:51:00 +000027// RUN: %clang -target x86_64-apple-darwin10 -### -S %s -arch armv7 2>&1 | \
28// RUN: FileCheck -check-prefix=ARMV7_DEFAULT %s
Daniel Dunbar8ff5b282009-12-11 23:00:49 +000029// ARMV7_DEFAULT: clang
30// ARMV7_DEFAULT: "-cc1"
Daniel Dunbar87667aa2009-12-08 19:49:51 +000031// ARMV7_DEFAULT-NOT: "-msoft-float"
32// ARMV7_DEFAULT: "-mfloat-abi" "soft"
33// ARMV7_DEFAULT-NOT: "-msoft-float"
34// ARMV7_DEFAULT: "-x" "c"
35
Rafael Espindola77072622012-09-22 22:51:00 +000036// RUN: %clang -target x86_64-apple-darwin10 -### -S %s -arch armv7 \
37// RUN: -msoft-float 2>&1 | FileCheck -check-prefix=ARMV7_SOFTFLOAT %s
Daniel Dunbar8ff5b282009-12-11 23:00:49 +000038// ARMV7_SOFTFLOAT: clang
39// ARMV7_SOFTFLOAT: "-cc1"
Daniel Dunbar7187fac2011-03-17 00:07:34 +000040// ARMV7_SOFTFLOAT: "-target-feature"
41// ARMV7_SOFTFLOAT: "-neon"
Rafael Espindola146dbbf2013-08-21 16:39:20 +000042// ARMV7_SOFTFLOAT: "-msoft-float"
43// ARMV7_SOFTFLOAT: "-mfloat-abi" "soft"
Daniel Dunbar87667aa2009-12-08 19:49:51 +000044// ARMV7_SOFTFLOAT: "-x" "c"
45
Rafael Espindola77072622012-09-22 22:51:00 +000046// RUN: %clang -target x86_64-apple-darwin10 -### -S %s -arch armv7 \
47// RUN: -mhard-float 2>&1 | FileCheck -check-prefix=ARMV7_HARDFLOAT %s
Daniel Dunbar8ff5b282009-12-11 23:00:49 +000048// ARMV7_HARDFLOAT: clang
49// ARMV7_HARDFLOAT: "-cc1"
Daniel Dunbar87667aa2009-12-08 19:49:51 +000050// ARMV7_HARDFLOAT-NOT: "-msoft-float"
51// ARMV7_HARDFLOAT: "-mfloat-abi" "hard"
52// ARMV7_HARDFLOAT-NOT: "-msoft-float"
53// ARMV7_HARDFLOAT: "-x" "c"
Evgeniy Stepanov4add84f2012-04-25 08:35:56 +000054
Rafael Espindola77072622012-09-22 22:51:00 +000055// RUN: %clang -target arm-linux -### -S %s -march=armv5e 2>&1 | \
56// RUN: FileCheck -check-prefix=ARMV5E %s
Evgeniy Stepanov4add84f2012-04-25 08:35:56 +000057// ARMV5E: clang
58// ARMV5E: "-cc1"
59// ARMV5E: "-target-cpu" "arm1022e"
Hal Finkel02a84272012-06-11 22:35:19 +000060
Rafael Espindola238b6a92012-10-09 20:46:28 +000061// RUN: %clang -target powerpc64-unknown-linux-gnu \
Rafael Espindola77072622012-09-22 22:51:00 +000062// RUN: -### -S %s -mcpu=G5 2>&1 | FileCheck -check-prefix=PPCG5 %s
Hal Finkel02a84272012-06-11 22:35:19 +000063// PPCG5: clang
64// PPCG5: "-cc1"
65// PPCG5: "-target-cpu" "g5"
66
Rafael Espindola238b6a92012-10-09 20:46:28 +000067// RUN: %clang -target powerpc64-unknown-linux-gnu \
Rafael Espindola77072622012-09-22 22:51:00 +000068// RUN: -### -S %s -mcpu=power7 2>&1 | FileCheck -check-prefix=PPCPWR7 %s
Hal Finkel02a84272012-06-11 22:35:19 +000069// PPCPWR7: clang
70// PPCPWR7: "-cc1"
71// PPCPWR7: "-target-cpu" "pwr7"
72
Rafael Espindola238b6a92012-10-09 20:46:28 +000073// RUN: %clang -target powerpc64-unknown-linux-gnu \
Stephen Hinesc568f1e2014-07-21 00:47:37 -070074// RUN: -### -S %s -mcpu=power8 2>&1 | FileCheck -check-prefix=PPCPWR8 %s
75// PPCPWR8: clang
76// PPCPWR8: "-cc1"
77// PPCPWR8: "-target-cpu" "pwr8"
78
79// RUN: %clang -target powerpc64-unknown-linux-gnu \
Hal Finkel5ccd3d02013-02-01 05:53:33 +000080// RUN: -### -S %s -mcpu=a2q 2>&1 | FileCheck -check-prefix=PPCA2Q %s
81// PPCA2Q: clang
82// PPCA2Q: "-cc1"
83// PPCA2Q: "-target-cpu" "a2q"
84
85// RUN: %clang -target powerpc64-unknown-linux-gnu \
Bill Schmidt2821e182013-02-01 20:23:10 +000086// RUN: -### -S %s -mcpu=630 2>&1 | FileCheck -check-prefix=PPC630 %s
87// PPC630: clang
88// PPC630: "-cc1"
89// PPC630: "-target-cpu" "pwr3"
90
91// RUN: %clang -target powerpc64-unknown-linux-gnu \
92// RUN: -### -S %s -mcpu=power3 2>&1 | FileCheck -check-prefix=PPCPOWER3 %s
93// PPCPOWER3: clang
94// PPCPOWER3: "-cc1"
95// PPCPOWER3: "-target-cpu" "pwr3"
96
97// RUN: %clang -target powerpc64-unknown-linux-gnu \
98// RUN: -### -S %s -mcpu=pwr3 2>&1 | FileCheck -check-prefix=PPCPWR3 %s
99// PPCPWR3: clang
100// PPCPWR3: "-cc1"
101// PPCPWR3: "-target-cpu" "pwr3"
102
103// RUN: %clang -target powerpc64-unknown-linux-gnu \
104// RUN: -### -S %s -mcpu=power4 2>&1 | FileCheck -check-prefix=PPCPOWER4 %s
105// PPCPOWER4: clang
106// PPCPOWER4: "-cc1"
107// PPCPOWER4: "-target-cpu" "pwr4"
108
109// RUN: %clang -target powerpc64-unknown-linux-gnu \
110// RUN: -### -S %s -mcpu=pwr4 2>&1 | FileCheck -check-prefix=PPCPWR4 %s
111// PPCPWR4: clang
112// PPCPWR4: "-cc1"
113// PPCPWR4: "-target-cpu" "pwr4"
114
115// RUN: %clang -target powerpc64-unknown-linux-gnu \
116// RUN: -### -S %s -mcpu=power5 2>&1 | FileCheck -check-prefix=PPCPOWER5 %s
117// PPCPOWER5: clang
118// PPCPOWER5: "-cc1"
119// PPCPOWER5: "-target-cpu" "pwr5"
120
121// RUN: %clang -target powerpc64-unknown-linux-gnu \
122// RUN: -### -S %s -mcpu=pwr5 2>&1 | FileCheck -check-prefix=PPCPWR5 %s
123// PPCPWR5: clang
124// PPCPWR5: "-cc1"
125// PPCPWR5: "-target-cpu" "pwr5"
126
127// RUN: %clang -target powerpc64-unknown-linux-gnu \
128// RUN: -### -S %s -mcpu=power5x 2>&1 | FileCheck -check-prefix=PPCPOWER5X %s
129// PPCPOWER5X: clang
130// PPCPOWER5X: "-cc1"
131// PPCPOWER5X: "-target-cpu" "pwr5x"
132
133// RUN: %clang -target powerpc64-unknown-linux-gnu \
134// RUN: -### -S %s -mcpu=pwr5x 2>&1 | FileCheck -check-prefix=PPCPWR5X %s
135// PPCPWR5X: clang
136// PPCPWR5X: "-cc1"
137// PPCPWR5X: "-target-cpu" "pwr5x"
138
139// RUN: %clang -target powerpc64-unknown-linux-gnu \
140// RUN: -### -S %s -mcpu=power6 2>&1 | FileCheck -check-prefix=PPCPOWER6 %s
141// PPCPOWER6: clang
142// PPCPOWER6: "-cc1"
143// PPCPOWER6: "-target-cpu" "pwr6"
144
145// RUN: %clang -target powerpc64-unknown-linux-gnu \
146// RUN: -### -S %s -mcpu=pwr6 2>&1 | FileCheck -check-prefix=PPCPWR6 %s
147// PPCPWR6: clang
148// PPCPWR6: "-cc1"
149// PPCPWR6: "-target-cpu" "pwr6"
150
151// RUN: %clang -target powerpc64-unknown-linux-gnu \
152// RUN: -### -S %s -mcpu=power6x 2>&1 | FileCheck -check-prefix=PPCPOWER6X %s
153// PPCPOWER6X: clang
154// PPCPOWER6X: "-cc1"
155// PPCPOWER6X: "-target-cpu" "pwr6x"
156
157// RUN: %clang -target powerpc64-unknown-linux-gnu \
158// RUN: -### -S %s -mcpu=pwr6x 2>&1 | FileCheck -check-prefix=PPCPWR6X %s
159// PPCPWR6X: clang
160// PPCPWR6X: "-cc1"
161// PPCPWR6X: "-target-cpu" "pwr6x"
162
163// RUN: %clang -target powerpc64-unknown-linux-gnu \
164// RUN: -### -S %s -mcpu=power7 2>&1 | FileCheck -check-prefix=PPCPOWER7 %s
165// PPCPOWER7: clang
166// PPCPOWER7: "-cc1"
167// PPCPOWER7: "-target-cpu" "pwr7"
168
169// RUN: %clang -target powerpc64-unknown-linux-gnu \
170// RUN: -### -S %s -mcpu=powerpc 2>&1 | FileCheck -check-prefix=PPCPOWERPC %s
171// PPCPOWERPC: clang
172// PPCPOWERPC: "-cc1"
173// PPCPOWERPC: "-target-cpu" "ppc"
174
175// RUN: %clang -target powerpc64-unknown-linux-gnu \
176// RUN: -### -S %s -mcpu=powerpc64 2>&1 | FileCheck -check-prefix=PPCPOWERPC64 %s
177// PPCPOWERPC64: clang
178// PPCPOWERPC64: "-cc1"
179// PPCPOWERPC64: "-target-cpu" "ppc64"
180
181// RUN: %clang -target powerpc64-unknown-linux-gnu \
Rafael Espindola77072622012-09-22 22:51:00 +0000182// RUN: -### -S %s 2>&1 | FileCheck -check-prefix=PPC64NS %s
Hal Finkel02a84272012-06-11 22:35:19 +0000183// PPC64NS: clang
184// PPC64NS: "-cc1"
185// PPC64NS: "-target-cpu" "ppc64"
Hal Finkel7de32962012-09-18 22:25:03 +0000186
Rafael Espindola238b6a92012-10-09 20:46:28 +0000187// RUN: %clang -target powerpc-fsl-linux -### -S %s \
Rafael Espindola77072622012-09-22 22:51:00 +0000188// RUN: -mcpu=e500mc 2>&1 | FileCheck -check-prefix=PPCE500MC %s
Hal Finkel7de32962012-09-18 22:25:03 +0000189// PPCE500MC: clang
190// PPCE500MC: "-cc1"
191// PPCE500MC: "-target-cpu" "e500mc"
192
Rafael Espindola238b6a92012-10-09 20:46:28 +0000193// RUN: %clang -target powerpc64-fsl-linux -### -S \
Rafael Espindola77072622012-09-22 22:51:00 +0000194// RUN: %s -mcpu=e5500 2>&1 | FileCheck -check-prefix=PPCE5500 %s
Hal Finkel7de32962012-09-18 22:25:03 +0000195// PPCE5500: clang
196// PPCE5500: "-cc1"
197// PPCE5500: "-target-cpu" "e5500"
198
Rafael Espindola6f009b62012-09-22 15:04:11 +0000199// RUN: %clang -target amd64-unknown-openbsd5.2 -### -S %s 2>&1 | \
200// RUN: FileCheck -check-prefix=AMD64 %s
201// AMD64: clang
202// AMD64: "-cc1"
203// AMD64: "-triple"
204// AMD64: "amd64-unknown-openbsd5.2"
205// AMD64: "-munwind-tables"
Rafael Espindolaa4a809e2012-10-07 03:23:40 +0000206
207// RUN: %clang -target amd64--mingw32 -### -S %s 2>&1 | \
208// RUN: FileCheck -check-prefix=AMD64-MINGW %s
209// AMD64-MINGW: clang
210// AMD64-MINGW: "-cc1"
211// AMD64-MINGW: "-triple"
Stephen Hines651f13c2014-04-23 16:59:28 -0700212// AMD64-MINGW: "amd64--windows-gnu"
Rafael Espindolaa4a809e2012-10-07 03:23:40 +0000213// AMD64-MINGW: "-munwind-tables"
Rafael Espindola715852c2012-11-02 20:41:30 +0000214
Stephen Hines651f13c2014-04-23 16:59:28 -0700215// RUN: %clang -target i686-linux-android -### -S %s 2>&1 \
Rafael Espindola715852c2012-11-02 20:41:30 +0000216// RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \
217// RUN: | FileCheck --check-prefix=ANDROID-X86 %s
218// ANDROID-X86: clang
Stephen Hines651f13c2014-04-23 16:59:28 -0700219// ANDROID-X86: "-target-cpu" "i686"
Stephen Hinesc568f1e2014-07-21 00:47:37 -0700220// ANDROID-X86: "-target-feature" "+ssse3"
Stephen Hines651f13c2014-04-23 16:59:28 -0700221
222// RUN: %clang -target x86_64-linux-android -### -S %s 2>&1 \
223// RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \
224// RUN: | FileCheck --check-prefix=ANDROID-X86_64 %s
225// ANDROID-X86_64: clang
226// ANDROID-X86_64: "-target-cpu" "x86-64"
Stephen Hinesc568f1e2014-07-21 00:47:37 -0700227// ANDROID-X86_64: "-target-feature" "+sse4.2"
228// ANDROID-X86_64: "-target-feature" "+popcnt"
Stephen Hines651f13c2014-04-23 16:59:28 -0700229
230// RUN: %clang -target mips-linux-gnu -### -S %s 2>&1 | \
231// RUN: FileCheck -check-prefix=MIPS %s
232// MIPS: clang
233// MIPS: "-cc1"
234// MIPS: "-target-cpu" "mips32r2"
235// MIPS: "-mfloat-abi" "hard"
236
237// RUN: %clang -target mipsel-linux-gnu -### -S %s 2>&1 | \
238// RUN: FileCheck -check-prefix=MIPSEL %s
239// MIPSEL: clang
240// MIPSEL: "-cc1"
241// MIPSEL: "-target-cpu" "mips32r2"
242// MIPSEL: "-mfloat-abi" "hard"
243
244// RUN: %clang -target mipsel-linux-android -### -S %s 2>&1 | \
245// RUN: FileCheck -check-prefix=MIPSEL-ANDROID %s
246// MIPSEL-ANDROID: clang
247// MIPSEL-ANDROID: "-cc1"
248// MIPSEL-ANDROID: "-target-cpu" "mips32r2"
249// MIPSEL-ANDROID: "-mfloat-abi" "hard"
250
251// RUN: %clang -target mips64-linux-gnu -### -S %s 2>&1 | \
252// RUN: FileCheck -check-prefix=MIPS64 %s
253// MIPS64: clang
254// MIPS64: "-cc1"
255// MIPS64: "-target-cpu" "mips64r2"
256// MIPS64: "-mfloat-abi" "hard"
257
258// RUN: %clang -target mips64el-linux-gnu -### -S %s 2>&1 | \
259// RUN: FileCheck -check-prefix=MIPS64EL %s
260// MIPS64EL: clang
261// MIPS64EL: "-cc1"
262// MIPS64EL: "-target-cpu" "mips64r2"
263// MIPS64EL: "-mfloat-abi" "hard"
264
265// RUN: %clang -target mips64el-linux-android -### -S %s 2>&1 | \
266// RUN: FileCheck -check-prefix=MIPS64EL-ANDROID %s
267// MIPS64EL-ANDROID: clang
268// MIPS64EL-ANDROID: "-cc1"
269// MIPS64EL-ANDROID: "-target-cpu" "mips64r2"
270// MIPS64EL-ANDROID: "-mfloat-abi" "hard"