• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // RUN: not %clang_cc1 -triple armv5--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix ARM
2 // ARM: error: unknown target CPU 'not-a-cpu'
3 // ARM: note: valid target CPU values are:
4 // ARM-SAME: arm2
5 
6 // RUN: not %clang_cc1 -triple arm64--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix AARCH64
7 // AARCH64: error: unknown target CPU 'not-a-cpu'
8 // AARCH64: note: valid target CPU values are:
9 // AARCH64-SAME: cortex-a35,
10 
11 // RUN: not %clang_cc1 -triple arm64--- -tune-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix TUNE_AARCH64
12 // TUNE_AARCH64: error: unknown target CPU 'not-a-cpu'
13 // TUNE_AARCH64: note: valid target CPU values are:
14 // TUNE_AARCH64-SAME: cortex-a35,
15 
16 // RUN: not %clang_cc1 -triple i386--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix X86
17 // X86: error: unknown target CPU 'not-a-cpu'
18 // X86: note: valid target CPU values are: i386, i486, winchip-c6, winchip2, c3,
19 // X86-SAME: i586, pentium, pentium-mmx, pentiumpro, i686, pentium2, pentium3,
20 // X86-SAME: pentium3m, pentium-m, c3-2, yonah, pentium4, pentium4m, prescott,
21 // X86-SAME: nocona, core2, penryn, bonnell, atom, silvermont, slm, goldmont, goldmont-plus, tremont,
22 // X86-SAME: nehalem, corei7, westmere, sandybridge, corei7-avx, ivybridge,
23 // X86-SAME: core-avx-i, haswell, core-avx2, broadwell, skylake, skylake-avx512,
24 // X86-SAME: skx, cascadelake, cooperlake, cannonlake, icelake-client, icelake-server, tigerlake, sapphirerapids, alderlake, knl, knm, lakemont, k6, k6-2, k6-3,
25 // X86-SAME: athlon, athlon-tbird, athlon-xp, athlon-mp, athlon-4, k8, athlon64,
26 // X86-SAME: athlon-fx, opteron, k8-sse3, athlon64-sse3, opteron-sse3, amdfam10,
27 // X86-SAME: barcelona, btver1, btver2, bdver1, bdver2, bdver3, bdver4, znver1, znver2, znver3,
28 // X86-SAME: x86-64, x86-64-v2, x86-64-v3, x86-64-v4, geode{{$}}
29 
30 // RUN: not %clang_cc1 -triple x86_64--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix X86_64
31 // X86_64: error: unknown target CPU 'not-a-cpu'
32 // X86_64: note: valid target CPU values are: nocona, core2, penryn, bonnell,
33 // X86_64-SAME: atom, silvermont, slm, goldmont, goldmont-plus, tremont, nehalem, corei7, westmere,
34 // X86_64-SAME: sandybridge, corei7-avx, ivybridge, core-avx-i, haswell,
35 // X86_64-SAME: core-avx2, broadwell, skylake, skylake-avx512, skx, cascadelake, cooperlake, cannonlake,
36 // X86_64-SAME: icelake-client, icelake-server, tigerlake, sapphirerapids, alderlake, knl, knm, k8, athlon64, athlon-fx, opteron, k8-sse3,
37 // X86_64-SAME: athlon64-sse3, opteron-sse3, amdfam10, barcelona, btver1,
38 // X86_64-SAME: btver2, bdver1, bdver2, bdver3, bdver4, znver1, znver2, znver3,
39 // X86_64-SAME: x86-64, x86-64-v2, x86-64-v3, x86-64-v4{{$}}
40 
41 // RUN: not %clang_cc1 -triple i386--- -tune-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix TUNE_X86
42 // TUNE_X86: error: unknown target CPU 'not-a-cpu'
43 // TUNE_X86: note: valid target CPU values are: i386, i486, winchip-c6, winchip2, c3,
44 // TUNE_X86-SAME: i586, pentium, pentium-mmx, pentiumpro, i686, pentium2, pentium3,
45 // TUNE_X86-SAME: pentium3m, pentium-m, c3-2, yonah, pentium4, pentium4m, prescott,
46 // TUNE_X86-SAME: nocona, core2, penryn, bonnell, atom, silvermont, slm, goldmont, goldmont-plus, tremont,
47 // TUNE_X86-SAME: nehalem, corei7, westmere, sandybridge, corei7-avx, ivybridge,
48 // TUNE_X86-SAME: core-avx-i, haswell, core-avx2, broadwell, skylake, skylake-avx512,
49 // TUNE_X86-SAME: skx, cascadelake, cooperlake, cannonlake, icelake-client, icelake-server, tigerlake, sapphirerapids, alderlake, knl, knm, lakemont, k6, k6-2, k6-3,
50 // TUNE_X86-SAME: athlon, athlon-tbird, athlon-xp, athlon-mp, athlon-4, k8, athlon64,
51 // TUNE_X86-SAME: athlon-fx, opteron, k8-sse3, athlon64-sse3, opteron-sse3, amdfam10,
52 // TUNE_X86-SAME: barcelona, btver1, btver2, bdver1, bdver2, bdver3, bdver4, znver1, znver2, znver3,
53 // TUNE_X86-SAME: x86-64, geode{{$}}
54 
55 // RUN: not %clang_cc1 -triple x86_64--- -tune-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix TUNE_X86_64
56 // TUNE_X86_64: error: unknown target CPU 'not-a-cpu'
57 // TUNE_X86_64: note: valid target CPU values are: i386, i486, winchip-c6, winchip2, c3,
58 // TUNE_X86_64-SAME: i586, pentium, pentium-mmx, pentiumpro, i686, pentium2, pentium3,
59 // TUNE_X86_64-SAME: pentium3m, pentium-m, c3-2, yonah, pentium4, pentium4m, prescott,
60 // TUNE_X86_64-SAME: nocona, core2, penryn, bonnell, atom, silvermont, slm, goldmont, goldmont-plus, tremont,
61 // TUNE_X86_64-SAME: nehalem, corei7, westmere, sandybridge, corei7-avx, ivybridge,
62 // TUNE_X86_64-SAME: core-avx-i, haswell, core-avx2, broadwell, skylake, skylake-avx512,
63 // TUNE_X86_64-SAME: skx, cascadelake, cooperlake, cannonlake, icelake-client, icelake-server, tigerlake, sapphirerapids, alderlake, knl, knm, lakemont, k6, k6-2, k6-3,
64 // TUNE_X86_64-SAME: athlon, athlon-tbird, athlon-xp, athlon-mp, athlon-4, k8, athlon64,
65 // TUNE_X86_64-SAME: athlon-fx, opteron, k8-sse3, athlon64-sse3, opteron-sse3, amdfam10,
66 // TUNE_X86_64-SAME: barcelona, btver1, btver2, bdver1, bdver2, bdver3, bdver4, znver1, znver2, znver3,
67 // TUNE_X86_64-SAME: x86-64, geode{{$}}
68 
69 // RUN: not %clang_cc1 -triple nvptx--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix NVPTX
70 // NVPTX: error: unknown target CPU 'not-a-cpu'
71 // NVPTX: note: valid target CPU values are: sm_20, sm_21, sm_30, sm_32, sm_35,
72 // NVPTX-SAME: sm_37, sm_50, sm_52, sm_53, sm_60, sm_61, sm_62, sm_70, sm_72
73 
74 // RUN: not %clang_cc1 -triple r600--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix R600
75 // R600: error: unknown target CPU 'not-a-cpu'
76 // R600: note: valid target CPU values are: r600, rv630, rv635, r630, rs780,
77 // R600-SAME: rs880, rv610, rv620, rv670, rv710, rv730, rv740, rv770, cedar,
78 // R600-SAME: palm, cypress, hemlock, juniper, redwood, sumo, sumo2, barts,
79 // R600-SAME: caicos, aruba, cayman, turks
80 
81 
82 // RUN: not %clang_cc1 -triple amdgcn--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix AMDGCN
83 // AMDGCN: error: unknown target CPU 'not-a-cpu'
84 // AMDGCN: note: valid target CPU values are: gfx600, tahiti, gfx601, pitcairn, verde,
85 // AMDGCN-SAME: gfx602, hainan, oland, gfx700, kaveri, gfx701, hawaii, gfx702,
86 // AMDGCN-SAME: gfx703, kabini, mullins, gfx704, bonaire, gfx705, gfx801, carrizo,
87 // AMDGCN-SAME: gfx802, iceland, tonga, gfx803, fiji, polaris10, polaris11,
88 // AMDGCN-SAME: gfx805, tongapro, gfx810, stoney, gfx900, gfx902
89 
90 // RUN: not %clang_cc1 -triple wasm64--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix WEBASM
91 // WEBASM: error: unknown target CPU 'not-a-cpu'
92 // WEBASM: note: valid target CPU values are: mvp, bleeding-edge, generic
93 
94 // RUN: not %clang_cc1 -triple systemz--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix SYSTEMZ
95 // SYSTEMZ: error: unknown target CPU 'not-a-cpu'
96 // SYSTEMZ: note: valid target CPU values are: arch8, z10, arch9, z196, arch10,
97 // SYSTEMZ-SAME: zEC12, arch11, z13, arch12, z14, arch13, z15
98 
99 // RUN: not %clang_cc1 -triple sparc--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix SPARC
100 // SPARC: error: unknown target CPU 'not-a-cpu'
101 // SPARC: note: valid target CPU values are: v8, supersparc, sparclite, f934,
102 // SPARC-SAME: hypersparc, sparclite86x, sparclet, tsc701, v9, ultrasparc,
103 // SPARC-SAME: ultrasparc3, niagara, niagara2, niagara3, niagara4, ma2100,
104 // SPARC-SAME: ma2150, ma2155, ma2450, ma2455, ma2x5x, ma2080, ma2085, ma2480,
105 // SPARC-SAME: ma2485, ma2x8x, myriad2, myriad2.1, myriad2.2, myriad2.3, leon2,
106 // SPARC-SAME: at697e, at697f, leon3, ut699, gr712rc, leon4, gr740
107 
108 // RUN: not %clang_cc1 -triple sparcv9--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix SPARCV9
109 // SPARCV9: error: unknown target CPU 'not-a-cpu'
110 // SPARCV9: note: valid target CPU values are: v9, ultrasparc, ultrasparc3, niagara, niagara2, niagara3, niagara4
111 
112 // RUN: not %clang_cc1 -triple powerpc--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix PPC
113 // PPC: error: unknown target CPU 'not-a-cpu'
114 // PPC: note: valid target CPU values are: generic, 440, 450, 601, 602, 603,
115 // PPC-SAME: 603e, 603ev, 604, 604e, 620, 630, g3, 7400, g4, 7450, g4+, 750,
116 // PPC-SAME: 8548, 970, g5, a2, e500, e500mc, e5500, power3, pwr3, power4,
117 // PPC-SAME: pwr4, power5, pwr5, power5x, pwr5x, power6, pwr6, power6x, pwr6x,
118 // PPC-SAME: power7, pwr7, power8, pwr8, power9, pwr9, power10, pwr10, powerpc, ppc, powerpc64,
119 // PPC-SAME: ppc64, powerpc64le, ppc64le, future
120 
121 // RUN: not %clang_cc1 -triple mips--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix MIPS
122 // MIPS: error: unknown target CPU 'not-a-cpu'
123 // MIPS: note: valid target CPU values are: mips1, mips2, mips3, mips4, mips5,
124 // MIPS-SAME: mips32, mips32r2, mips32r3, mips32r5, mips32r6, mips64, mips64r2,
125 // MIPS-SAME: mips64r3, mips64r5, mips64r6, octeon, octeon+, p5600
126 
127 // RUN: not %clang_cc1 -triple lanai--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix LANAI
128 // LANAI: error: unknown target CPU 'not-a-cpu'
129 // LANAI: note: valid target CPU values are: v11
130 
131 // RUN: not %clang_cc1 -triple hexagon--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix HEXAGON
132 // HEXAGON: error: unknown target CPU 'not-a-cpu'
133 // HEXAGON: note: valid target CPU values are: hexagonv5, hexagonv55,
134 // HEXAGON-SAME: hexagonv60, hexagonv62, hexagonv65
135 
136 // RUN: not %clang_cc1 -triple bpf--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix BPF
137 // BPF: error: unknown target CPU 'not-a-cpu'
138 // BPF: note: valid target CPU values are: generic, v1, v2, v3, probe
139 
140 // RUN: not %clang_cc1 -triple avr--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix AVR
141 // AVR: error: unknown target CPU 'not-a-cpu'
142 // AVR: note: valid target CPU values are: avr1, avr2, avr25, avr3, avr31,
143 // AVR-SAME: avr35, avr4, avr5, avr51, avr6, avrxmega1, avrxmega2, avrxmega3,
144 // AVR-SAME: avrxmega4, avrxmega5, avrxmega6, avrxmega7, avrtiny, at90s1200,
145 // AVR-SAME: attiny11, attiny12, attiny15, attiny28, at90s2313, at90s2323,
146 // AVR-SAME: at90s2333, at90s2343, attiny22, attiny26, at86rf401, at90s4414,
147 // AVR-SAME: at90s4433, at90s4434, at90s8515, at90c8534, at90s8535, ata5272,
148 // AVR-SAME: attiny13, attiny13a, attiny2313, attiny2313a, attiny24, attiny24a,
149 // AVR-SAME: attiny4313, attiny44, attiny44a, attiny84, attiny84a, attiny25,
150 // AVR-SAME: attiny45, attiny85, attiny261, attiny261a, attiny441, attiny461,
151 // AVR-SAME: attiny461a, attiny841, attiny861, attiny861a, attiny87, attiny43u,
152 // AVR-SAME: attiny48, attiny88, attiny828, at43usb355, at76c711, atmega103,
153 // AVR-SAME: at43usb320, attiny167, at90usb82, at90usb162, ata5505, atmega8u2,
154 // AVR-SAME: atmega16u2, atmega32u2, attiny1634, atmega8, ata6289, atmega8a,
155 // AVR-SAME: ata6285, ata6286, atmega48, atmega48a, atmega48pa, atmega48pb,
156 // AVR-SAME: atmega48p, atmega88, atmega88a, atmega88p, atmega88pa, atmega88pb,
157 // AVR-SAME: atmega8515, atmega8535, atmega8hva, at90pwm1, at90pwm2, at90pwm2b,
158 // AVR-SAME: at90pwm3, at90pwm3b, at90pwm81, ata5790, ata5795, atmega16,
159 // AVR-SAME: atmega16a, atmega161, atmega162, atmega163, atmega164a, atmega164p,
160 // AVR-SAME: atmega164pa, atmega165, atmega165a, atmega165p, atmega165pa,
161 // AVR-SAME: atmega168, atmega168a, atmega168p, atmega168pa, atmega168pb,
162 // AVR-SAME: atmega169, atmega169a, atmega169p, atmega169pa, atmega32, atmega32a,
163 // AVR-SAME: atmega323, atmega324a, atmega324p, atmega324pa, atmega324pb,
164 // AVR-SAME: atmega325, atmega325a, atmega325p, atmega325pa, atmega3250,
165 // AVR-SAME: atmega3250a, atmega3250p, atmega3250pa, atmega328, atmega328p,
166 // AVR-SAME: atmega328pb, atmega329, atmega329a, atmega329p, atmega329pa,
167 // AVR-SAME: atmega3290, atmega3290a, atmega3290p, atmega3290pa, atmega406,
168 // AVR-SAME: atmega64, atmega64a, atmega640, atmega644, atmega644a, atmega644p,
169 // AVR-SAME: atmega644pa, atmega645, atmega645a, atmega645p, atmega649, atmega649a,
170 // AVR-SAME: atmega649p, atmega6450, atmega6450a, atmega6450p, atmega6490,
171 // AVR-SAME: atmega6490a, atmega6490p, atmega64rfr2, atmega644rfr2, atmega16hva,
172 // AVR-SAME: atmega16hva2, atmega16hvb, atmega16hvbrevb, atmega32hvb,
173 // AVR-SAME: atmega32hvbrevb, atmega64hve, at90can32, at90can64, at90pwm161,
174 // AVR-SAME: at90pwm216, at90pwm316, atmega32c1, atmega64c1, atmega16m1, atmega32m1,
175 // AVR-SAME: atmega64m1, atmega16u4, atmega32u4, atmega32u6, at90usb646, at90usb647,
176 // AVR-SAME: at90scr100, at94k, m3000, atmega128, atmega128a, atmega1280, atmega1281,
177 // AVR-SAME: atmega1284, atmega1284p, atmega128rfa1, atmega128rfr2, atmega1284rfr2,
178 // AVR-SAME: at90can128, at90usb1286, at90usb1287, atmega2560, atmega2561,
179 // AVR-SAME: atmega256rfr2, atmega2564rfr2, atxmega16a4, atxmega16a4u, atxmega16c4,
180 // AVR-SAME: atxmega16d4, atxmega32a4, atxmega32a4u, atxmega32c4, atxmega32d4,
181 // AVR-SAME: atxmega32e5, atxmega16e5, atxmega8e5, atxmega32x1, atxmega64a3,
182 // AVR-SAME: atxmega64a3u, atxmega64a4u, atxmega64b1, atxmega64b3, atxmega64c3,
183 // AVR-SAME: atxmega64d3, atxmega64d4, atxmega64a1, atxmega64a1u, atxmega128a3,
184 // AVR-SAME: atxmega128a3u, atxmega128b1, atxmega128b3, atxmega128c3, atxmega128d3,
185 // AVR-SAME: atxmega128d4, atxmega192a3, atxmega192a3u, atxmega192c3, atxmega192d3,
186 // AVR-SAME: atxmega256a3, atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega256c3,
187 // AVR-SAME: atxmega256d3, atxmega384c3, atxmega384d3, atxmega128a1, atxmega128a1u,
188 // AVR-SAME: atxmega128a4u, attiny4, attiny5, attiny9, attiny10, attiny20, attiny40,
189 // AVR-SAME: attiny102, attiny104
190 
191 // RUN: not %clang_cc1 -triple riscv32 -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix RISCV32
192 // RISCV32: error: unknown target CPU 'not-a-cpu'
193 // RISCV32: note: valid target CPU values are: generic-rv32, rocket-rv32, sifive-7-rv32, sifive-e31, sifive-e76
194 
195 // RUN: not %clang_cc1 -triple riscv64 -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix RISCV64
196 // RISCV64: error: unknown target CPU 'not-a-cpu'
197 // RISCV64: note: valid target CPU values are: generic-rv64, rocket-rv64, sifive-7-rv64, sifive-u54, sifive-u74
198 
199 // RUN: not %clang_cc1 -triple riscv32 -tune-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix TUNE-RISCV32
200 // TUNE-RISCV32: error: unknown target CPU 'not-a-cpu'
201 // TUNE-RISCV32: note: valid target CPU values are: generic-rv32, rocket-rv32, sifive-7-rv32, sifive-e31, sifive-e76, generic, rocket, sifive-7-series
202 
203 // RUN: not %clang_cc1 -triple riscv64 -tune-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix TUNE-RISCV64
204 // TUNE-RISCV64: error: unknown target CPU 'not-a-cpu'
205 // TUNE-RISCV64: note: valid target CPU values are: generic-rv64, rocket-rv64, sifive-7-rv64, sifive-u54, sifive-u74, generic, rocket, sifive-7-series
206