blob: 9db23a074d8532d3d21694e94fdd56da366f58c5 [file] [log] [blame]
Rafael Espindolaa7b96982012-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 Espindolac3264272012-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 Grosbach82eee262013-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 Dunbar6cc525b2009-12-08 19:49:51 +000026
Rafael Espindolaccaa3b62012-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 Dunbar6c536aa2009-12-11 23:00:49 +000029// ARMV7_DEFAULT: clang
30// ARMV7_DEFAULT: "-cc1"
Daniel Dunbar6cc525b2009-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 Espindolaccaa3b62012-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 Dunbar6c536aa2009-12-11 23:00:49 +000038// ARMV7_SOFTFLOAT: clang
39// ARMV7_SOFTFLOAT: "-cc1"
Daniel Dunbarb1db4b62011-03-17 00:07:34 +000040// ARMV7_SOFTFLOAT: "-target-feature"
41// ARMV7_SOFTFLOAT: "-neon"
Rafael Espindola28e1f4b2013-08-21 16:39:20 +000042// ARMV7_SOFTFLOAT: "-msoft-float"
43// ARMV7_SOFTFLOAT: "-mfloat-abi" "soft"
Daniel Dunbar6cc525b2009-12-08 19:49:51 +000044// ARMV7_SOFTFLOAT: "-x" "c"
45
Rafael Espindolaccaa3b62012-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 Dunbar6c536aa2009-12-11 23:00:49 +000048// ARMV7_HARDFLOAT: clang
49// ARMV7_HARDFLOAT: "-cc1"
Daniel Dunbar6cc525b2009-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 Stepanov78eaa2c2012-04-25 08:35:56 +000054
Rafael Espindolaccaa3b62012-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 Stepanov78eaa2c2012-04-25 08:35:56 +000057// ARMV5E: clang
58// ARMV5E: "-cc1"
59// ARMV5E: "-target-cpu" "arm1022e"
Hal Finkel8eb59282012-06-11 22:35:19 +000060
Rafael Espindolafc3fc0c2012-10-09 20:46:28 +000061// RUN: %clang -target powerpc64-unknown-linux-gnu \
Rafael Espindolaccaa3b62012-09-22 22:51:00 +000062// RUN: -### -S %s -mcpu=G5 2>&1 | FileCheck -check-prefix=PPCG5 %s
Hal Finkel8eb59282012-06-11 22:35:19 +000063// PPCG5: clang
64// PPCG5: "-cc1"
65// PPCG5: "-target-cpu" "g5"
66
Rafael Espindolafc3fc0c2012-10-09 20:46:28 +000067// RUN: %clang -target powerpc64-unknown-linux-gnu \
Rafael Espindolaccaa3b62012-09-22 22:51:00 +000068// RUN: -### -S %s -mcpu=power7 2>&1 | FileCheck -check-prefix=PPCPWR7 %s
Hal Finkel8eb59282012-06-11 22:35:19 +000069// PPCPWR7: clang
70// PPCPWR7: "-cc1"
71// PPCPWR7: "-target-cpu" "pwr7"
72
Rafael Espindolafc3fc0c2012-10-09 20:46:28 +000073// RUN: %clang -target powerpc64-unknown-linux-gnu \
Will Schmidtf0487512014-06-26 13:34:10 +000074// 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 Finkeldf1e4bf2013-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 Schmidt38378a02013-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 Espindolaccaa3b62012-09-22 22:51:00 +0000182// RUN: -### -S %s 2>&1 | FileCheck -check-prefix=PPC64NS %s
Hal Finkel8eb59282012-06-11 22:35:19 +0000183// PPC64NS: clang
184// PPC64NS: "-cc1"
185// PPC64NS: "-target-cpu" "ppc64"
Hal Finkelf6d6cb02012-09-18 22:25:03 +0000186
Rafael Espindolafc3fc0c2012-10-09 20:46:28 +0000187// RUN: %clang -target powerpc-fsl-linux -### -S %s \
Rafael Espindolaccaa3b62012-09-22 22:51:00 +0000188// RUN: -mcpu=e500mc 2>&1 | FileCheck -check-prefix=PPCE500MC %s
Hal Finkelf6d6cb02012-09-18 22:25:03 +0000189// PPCE500MC: clang
190// PPCE500MC: "-cc1"
191// PPCE500MC: "-target-cpu" "e500mc"
192
Rafael Espindolafc3fc0c2012-10-09 20:46:28 +0000193// RUN: %clang -target powerpc64-fsl-linux -### -S \
Rafael Espindolaccaa3b62012-09-22 22:51:00 +0000194// RUN: %s -mcpu=e5500 2>&1 | FileCheck -check-prefix=PPCE5500 %s
Hal Finkelf6d6cb02012-09-18 22:25:03 +0000195// PPCE5500: clang
196// PPCE5500: "-cc1"
197// PPCE5500: "-target-cpu" "e5500"
198
Rafael Espindola08f1ebb2012-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 Espindolae8bd4e52012-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"
Saleem Abdulrasool377066a2014-03-27 22:50:18 +0000212// AMD64-MINGW: "amd64--windows-gnu"
Rafael Espindolae8bd4e52012-10-07 03:23:40 +0000213// AMD64-MINGW: "-munwind-tables"
Rafael Espindola7df35012012-11-02 20:41:30 +0000214
Alexey Bataev75db8c32014-01-13 03:49:38 +0000215// RUN: %clang -target i686-linux-android -### -S %s 2>&1 \
Rafael Espindola7df35012012-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
Alexey Bataev286d1b92014-01-31 04:07:13 +0000219// ANDROID-X86: "-target-cpu" "i686"
Alexey Volkov54ff0802014-06-25 12:15:36 +0000220// ANDROID-X86: "-target-feature" "+ssse3"
Alexey Bataevcf7ae302014-01-23 09:08:32 +0000221
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
Alexey Bataev286d1b92014-01-31 04:07:13 +0000226// ANDROID-X86_64: "-target-cpu" "x86-64"
Alexey Volkov54ff0802014-06-25 12:15:36 +0000227// ANDROID-X86_64: "-target-feature" "+sse4.2"
228// ANDROID-X86_64: "-target-feature" "+popcnt"
Simon Atanasyan264b2982014-01-25 16:03:59 +0000229
230// RUN: %clang -target mips-linux-gnu -### -S %s 2>&1 | \
231// RUN: FileCheck -check-prefix=MIPS %s
232// MIPS: clang
233// MIPS: "-cc1"
Simon Atanasyan1a3665b62014-01-27 13:59:04 +0000234// MIPS: "-target-cpu" "mips32r2"
Simon Atanasyan264b2982014-01-25 16:03:59 +0000235// 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"
Simon Atanasyan1a3665b62014-01-27 13:59:04 +0000241// MIPSEL: "-target-cpu" "mips32r2"
Simon Atanasyan264b2982014-01-25 16:03:59 +0000242// 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"
Simon Atanasyan1a3665b62014-01-27 13:59:04 +0000248// MIPSEL-ANDROID: "-target-cpu" "mips32r2"
Simon Atanasyan264b2982014-01-25 16:03:59 +0000249// 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"
Simon Atanasyan1a3665b62014-01-27 13:59:04 +0000255// MIPS64: "-target-cpu" "mips64r2"
Simon Atanasyan264b2982014-01-25 16:03:59 +0000256// 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"
Simon Atanasyan1a3665b62014-01-27 13:59:04 +0000262// MIPS64EL: "-target-cpu" "mips64r2"
Simon Atanasyan264b2982014-01-25 16:03:59 +0000263// MIPS64EL: "-mfloat-abi" "hard"
Simon Atanasyan68855fe32014-01-25 16:04:08 +0000264
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"
Simon Atanasyan1a3665b62014-01-27 13:59:04 +0000269// MIPS64EL-ANDROID: "-target-cpu" "mips64r2"
Simon Atanasyan68855fe32014-01-25 16:04:08 +0000270// MIPS64EL-ANDROID: "-mfloat-abi" "hard"