Skip to content

Commit 0e9579c

Browse files
committed
[clang][test] Split invalid-cpu-note tests
This change does two kinds of splits: - Splits each target into a different file. Some targets are left in the same files, such as riscv32/64 and x86/_64 as these tests and lists are very similar. - Splits up the very long 'note:' lines which contain a list of CPUs, using `CHECK-SAME`. There was a note about this not being possible before, but with `--implicit-check-not`, this is now possible -- I have verified that this does the right thing if a single CPU anywhere in the list is left out. These tests had become quite annoying to change when adding a CPU, and I believe this change makes these easier to maintain, and should cut down on conflicts in these files (or at least makes conflicts easier to resolve). I apologise in advance for downstream conflicts, but hopefully that's a small amount of short term pain, in return for fewer conflicts in future.
1 parent e8e8887 commit 0e9579c

File tree

17 files changed

+1378
-96
lines changed

17 files changed

+1378
-96
lines changed

clang/test/Misc/target-invalid-cpu-note.c

Lines changed: 0 additions & 96 deletions
This file was deleted.
Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
// Use --implicit-check-not to ensure no additional CPUs are in this list
2+
3+
// RUN: not %clang_cc1 -triple arm64--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --implicit-check-not={{[a-zA-Z0-9]}}
4+
// RUN: not %clang_cc1 -triple arm64--- -tune-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --implicit-check-not={{[a-zA-Z0-9]}}
5+
6+
// CHECK: error: unknown target CPU 'not-a-cpu'
7+
// CHECK-NEXT: note: valid target CPU values are:
8+
// CHECK-SAME: a64fx,
9+
// CHECK-SAME: ampere1,
10+
// CHECK-SAME: ampere1a,
11+
// CHECK-SAME: ampere1b,
12+
// CHECK-SAME: apple-a10,
13+
// CHECK-SAME: apple-a11,
14+
// CHECK-SAME: apple-a12,
15+
// CHECK-SAME: apple-a13,
16+
// CHECK-SAME: apple-a14,
17+
// CHECK-SAME: apple-a15,
18+
// CHECK-SAME: apple-a16,
19+
// CHECK-SAME: apple-a17,
20+
// CHECK-SAME: apple-a7,
21+
// CHECK-SAME: apple-a8,
22+
// CHECK-SAME: apple-a9,
23+
// CHECK-SAME: apple-m1,
24+
// CHECK-SAME: apple-m2,
25+
// CHECK-SAME: apple-m3,
26+
// CHECK-SAME: apple-m4,
27+
// CHECK-SAME: apple-s4,
28+
// CHECK-SAME: apple-s5,
29+
// CHECK-SAME: carmel,
30+
// CHECK-SAME: cobalt-100,
31+
// CHECK-SAME: cortex-a34,
32+
// CHECK-SAME: cortex-a35,
33+
// CHECK-SAME: cortex-a510,
34+
// CHECK-SAME: cortex-a520,
35+
// CHECK-SAME: cortex-a520ae,
36+
// CHECK-SAME: cortex-a53,
37+
// CHECK-SAME: cortex-a55,
38+
// CHECK-SAME: cortex-a57,
39+
// CHECK-SAME: cortex-a65,
40+
// CHECK-SAME: cortex-a65ae,
41+
// CHECK-SAME: cortex-a710,
42+
// CHECK-SAME: cortex-a715,
43+
// CHECK-SAME: cortex-a72,
44+
// CHECK-SAME: cortex-a720,
45+
// CHECK-SAME: cortex-a720ae,
46+
// CHECK-SAME: cortex-a725,
47+
// CHECK-SAME: cortex-a73,
48+
// CHECK-SAME: cortex-a75,
49+
// CHECK-SAME: cortex-a76,
50+
// CHECK-SAME: cortex-a76ae,
51+
// CHECK-SAME: cortex-a77,
52+
// CHECK-SAME: cortex-a78,
53+
// CHECK-SAME: cortex-a78ae,
54+
// CHECK-SAME: cortex-a78c,
55+
// CHECK-SAME: cortex-r82,
56+
// CHECK-SAME: cortex-r82ae,
57+
// CHECK-SAME: cortex-x1,
58+
// CHECK-SAME: cortex-x1c,
59+
// CHECK-SAME: cortex-x2,
60+
// CHECK-SAME: cortex-x3,
61+
// CHECK-SAME: cortex-x4,
62+
// CHECK-SAME: cortex-x925,
63+
// CHECK-SAME: cyclone,
64+
// CHECK-SAME: exynos-m3,
65+
// CHECK-SAME: exynos-m4,
66+
// CHECK-SAME: exynos-m5,
67+
// CHECK-SAME: falkor,
68+
// CHECK-SAME: generic,
69+
// CHECK-SAME: grace,
70+
// CHECK-SAME: kryo,
71+
// CHECK-SAME: neoverse-512tvb,
72+
// CHECK-SAME: neoverse-e1,
73+
// CHECK-SAME: neoverse-n1,
74+
// CHECK-SAME: neoverse-n2,
75+
// CHECK-SAME: neoverse-n3,
76+
// CHECK-SAME: neoverse-v1,
77+
// CHECK-SAME: neoverse-v2,
78+
// CHECK-SAME: neoverse-v3,
79+
// CHECK-SAME: neoverse-v3ae,
80+
// CHECK-SAME: oryon-1,
81+
// CHECK-SAME: saphira,
82+
// CHECK-SAME: thunderx,
83+
// CHECK-SAME: thunderx2t99,
84+
// CHECK-SAME: thunderx3t110,
85+
// CHECK-SAME: thunderxt81,
86+
// CHECK-SAME: thunderxt83,
87+
// CHECK-SAME: thunderxt88,
88+
// CHECK-SAME: tsv110
89+
// CHECK-SAME: {{$}}
90+
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
// Use --implicit-check-not={{[a-zA-Z0-9]}} to ensure no additional CPUs are in this list
2+
3+
// RUN: not %clang_cc1 -triple amdgcn--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --implicit-check-not={{[a-zA-Z0-9]}}
4+
// CHECK: error: unknown target CPU 'not-a-cpu'
5+
// CHECK-NEXT: note: valid target CPU values are:
6+
// CHECK-SAME: gfx600,
7+
// CHECK-SAME: tahiti,
8+
// CHECK-SAME: gfx601,
9+
// CHECK-SAME: pitcairn,
10+
// CHECK-SAME: verde,
11+
// CHECK-SAME: gfx602,
12+
// CHECK-SAME: hainan,
13+
// CHECK-SAME: oland,
14+
// CHECK-SAME: gfx700,
15+
// CHECK-SAME: kaveri,
16+
// CHECK-SAME: gfx701,
17+
// CHECK-SAME: hawaii,
18+
// CHECK-SAME: gfx702,
19+
// CHECK-SAME: gfx703,
20+
// CHECK-SAME: kabini,
21+
// CHECK-SAME: mullins,
22+
// CHECK-SAME: gfx704,
23+
// CHECK-SAME: bonaire,
24+
// CHECK-SAME: gfx705,
25+
// CHECK-SAME: gfx801,
26+
// CHECK-SAME: carrizo,
27+
// CHECK-SAME: gfx802,
28+
// CHECK-SAME: iceland,
29+
// CHECK-SAME: tonga,
30+
// CHECK-SAME: gfx803,
31+
// CHECK-SAME: fiji,
32+
// CHECK-SAME: polaris10,
33+
// CHECK-SAME: polaris11,
34+
// CHECK-SAME: gfx805,
35+
// CHECK-SAME: tongapro,
36+
// CHECK-SAME: gfx810,
37+
// CHECK-SAME: stoney,
38+
// CHECK-SAME: gfx900,
39+
// CHECK-SAME: gfx902,
40+
// CHECK-SAME: gfx904,
41+
// CHECK-SAME: gfx906,
42+
// CHECK-SAME: gfx908,
43+
// CHECK-SAME: gfx909,
44+
// CHECK-SAME: gfx90a,
45+
// CHECK-SAME: gfx90c,
46+
// CHECK-SAME: gfx940,
47+
// CHECK-SAME: gfx941,
48+
// CHECK-SAME: gfx942,
49+
// CHECK-SAME: gfx1010,
50+
// CHECK-SAME: gfx1011,
51+
// CHECK-SAME: gfx1012,
52+
// CHECK-SAME: gfx1013,
53+
// CHECK-SAME: gfx1030,
54+
// CHECK-SAME: gfx1031,
55+
// CHECK-SAME: gfx1032,
56+
// CHECK-SAME: gfx1033,
57+
// CHECK-SAME: gfx1034,
58+
// CHECK-SAME: gfx1035,
59+
// CHECK-SAME: gfx1036,
60+
// CHECK-SAME: gfx1100,
61+
// CHECK-SAME: gfx1101,
62+
// CHECK-SAME: gfx1102,
63+
// CHECK-SAME: gfx1103,
64+
// CHECK-SAME: gfx1150,
65+
// CHECK-SAME: gfx1151,
66+
// CHECK-SAME: gfx1152,
67+
// CHECK-SAME: gfx1200,
68+
// CHECK-SAME: gfx1201,
69+
// CHECK-SAME: gfx9-generic,
70+
// CHECK-SAME: gfx10-1-generic,
71+
// CHECK-SAME: gfx10-3-generic,
72+
// CHECK-SAME: gfx11-generic,
73+
// CHECK-SAME: gfx12-generic
74+
// CHECK-SAME: {{$}}
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
// Use --implicit-check-not={{[a-zA-Z0-9]}} to ensure no additional CPUs are in this list
2+
3+
// RUN: not %clang_cc1 -triple armv5--- -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --implicit-check-not={{[a-zA-Z0-9]}}
4+
// CHECK: error: unknown target CPU 'not-a-cpu'
5+
// CHECK-NEXT: note: valid target CPU values are:
6+
// CHECK-SAME: arm8,
7+
// CHECK-SAME: arm810,
8+
// CHECK-SAME: strongarm,
9+
// CHECK-SAME: strongarm110,
10+
// CHECK-SAME: strongarm1100,
11+
// CHECK-SAME: strongarm1110,
12+
// CHECK-SAME: arm7tdmi,
13+
// CHECK-SAME: arm7tdmi-s,
14+
// CHECK-SAME: arm710t,
15+
// CHECK-SAME: arm720t,
16+
// CHECK-SAME: arm9,
17+
// CHECK-SAME: arm9tdmi,
18+
// CHECK-SAME: arm920,
19+
// CHECK-SAME: arm920t,
20+
// CHECK-SAME: arm922t,
21+
// CHECK-SAME: arm940t,
22+
// CHECK-SAME: ep9312,
23+
// CHECK-SAME: arm10tdmi,
24+
// CHECK-SAME: arm1020t,
25+
// CHECK-SAME: arm9e,
26+
// CHECK-SAME: arm946e-s,
27+
// CHECK-SAME: arm966e-s,
28+
// CHECK-SAME: arm968e-s,
29+
// CHECK-SAME: arm10e,
30+
// CHECK-SAME: arm1020e,
31+
// CHECK-SAME: arm1022e,
32+
// CHECK-SAME: arm926ej-s,
33+
// CHECK-SAME: arm1136j-s,
34+
// CHECK-SAME: arm1136jf-s,
35+
// CHECK-SAME: mpcore,
36+
// CHECK-SAME: mpcorenovfp,
37+
// CHECK-SAME: arm1176jz-s,
38+
// CHECK-SAME: arm1176jzf-s,
39+
// CHECK-SAME: arm1156t2-s,
40+
// CHECK-SAME: arm1156t2f-s,
41+
// CHECK-SAME: cortex-m0,
42+
// CHECK-SAME: cortex-m0plus,
43+
// CHECK-SAME: cortex-m1,
44+
// CHECK-SAME: sc000,
45+
// CHECK-SAME: cortex-a5,
46+
// CHECK-SAME: cortex-a7,
47+
// CHECK-SAME: cortex-a8,
48+
// CHECK-SAME: cortex-a9,
49+
// CHECK-SAME: cortex-a12,
50+
// CHECK-SAME: cortex-a15,
51+
// CHECK-SAME: cortex-a17,
52+
// CHECK-SAME: krait,
53+
// CHECK-SAME: cortex-r4,
54+
// CHECK-SAME: cortex-r4f,
55+
// CHECK-SAME: cortex-r5,
56+
// CHECK-SAME: cortex-r7,
57+
// CHECK-SAME: cortex-r8,
58+
// CHECK-SAME: cortex-r52,
59+
// CHECK-SAME: cortex-r52plus,
60+
// CHECK-SAME: sc300,
61+
// CHECK-SAME: cortex-m3,
62+
// CHECK-SAME: cortex-m4,
63+
// CHECK-SAME: cortex-m7,
64+
// CHECK-SAME: cortex-m23,
65+
// CHECK-SAME: cortex-m33,
66+
// CHECK-SAME: cortex-m35p,
67+
// CHECK-SAME: cortex-m55,
68+
// CHECK-SAME: cortex-m85,
69+
// CHECK-SAME: cortex-m52,
70+
// CHECK-SAME: cortex-a32,
71+
// CHECK-SAME: cortex-a35,
72+
// CHECK-SAME: cortex-a53,
73+
// CHECK-SAME: cortex-a55,
74+
// CHECK-SAME: cortex-a57,
75+
// CHECK-SAME: cortex-a72,
76+
// CHECK-SAME: cortex-a73,
77+
// CHECK-SAME: cortex-a75,
78+
// CHECK-SAME: cortex-a76,
79+
// CHECK-SAME: cortex-a76ae,
80+
// CHECK-SAME: cortex-a77,
81+
// CHECK-SAME: cortex-a78,
82+
// CHECK-SAME: cortex-a78ae,
83+
// CHECK-SAME: cortex-a78c,
84+
// CHECK-SAME: cortex-a710,
85+
// CHECK-SAME: cortex-x1,
86+
// CHECK-SAME: cortex-x1c,
87+
// CHECK-SAME: neoverse-n1,
88+
// CHECK-SAME: neoverse-n2,
89+
// CHECK-SAME: neoverse-v1,
90+
// CHECK-SAME: cyclone,
91+
// CHECK-SAME: exynos-m3,
92+
// CHECK-SAME: exynos-m4,
93+
// CHECK-SAME: exynos-m5,
94+
// CHECK-SAME: kryo,
95+
// CHECK-SAME: iwmmxt,
96+
// CHECK-SAME: xscale,
97+
// CHECK-SAME: swift
98+
// CHECK-SAME: {{$}}

0 commit comments

Comments
 (0)