|
1 | 1 | // Check behaviour of -fvisibility-from-dllstorageclass options for PS4/PS5. |
2 | 2 |
|
3 | 3 | // DEFINE: %{triple} = |
| 4 | +// DEFINE: %{prefix} = |
4 | 5 | // DEFINE: %{run} = \ |
5 | 6 | // DEFINE: %clang -### -target %{triple} %s -Werror -o - 2>&1 | \ |
6 | | -// DEFINE: FileCheck %s --check-prefix=DEFAULTS \ |
| 7 | +// DEFINE: FileCheck %s --check-prefixes=DEFAULTS,%{prefix} \ |
7 | 8 | // DEFINE: --implicit-check-not=-fvisibility-from-dllstorageclass \ |
8 | 9 | // DEFINE: --implicit-check-not=-fvisibility-dllexport \ |
9 | 10 | // DEFINE: --implicit-check-not=-fvisibility-nodllstorageclass \ |
10 | 11 | // DEFINE: --implicit-check-not=-fvisibility-externs-dllimport \ |
11 | 12 | // DEFINE: --implicit-check-not=-fvisibility-externs-nodllstorageclass |
| 13 | +// REDEFINE: %{prefix} = DEFAULTS-PS4 |
12 | 14 | // REDEFINE: %{triple} = x86_64-scei-ps4 |
13 | 15 | // RUN: %{run} |
| 16 | +// REDEFINE: %{prefix} = DEFAULTS-PS5 |
14 | 17 | // REDEFINE: %{triple} = x86_64-sie-ps5 |
15 | 18 | // RUN: %{run} |
16 | 19 | // |
|
20 | 23 | // REDEFINE: -fvisibility-from-dllstorageclass \ |
21 | 24 | // REDEFINE: -Werror \ |
22 | 25 | // REDEFINE: %s -o - 2>&1 | \ |
23 | | -// REDEFINE: FileCheck %s --check-prefix=DEFAULTS \ |
| 26 | +// REDEFINE: FileCheck %s --check-prefixes=DEFAULTS,%{prefix} \ |
24 | 27 | // REDEFINE: --implicit-check-not=-fvisibility-from-dllstorageclass \ |
25 | 28 | // REDEFINE: --implicit-check-not=-fvisibility-dllexport \ |
26 | 29 | // REDEFINE: --implicit-check-not=-fvisibility-nodllstorageclass \ |
27 | 30 | // REDEFINE: --implicit-check-not=-fvisibility-externs-dllimport \ |
28 | 31 | // REDEFINE: --implicit-check-not=-fvisibility-externs-nodllstorageclass |
| 32 | +// REDEFINE: %{prefix} = DEFAULTS-PS4 |
29 | 33 | // REDEFINE: %{triple} = x86_64-scei-ps4 |
30 | 34 | // RUN: %{run} |
| 35 | +// REDEFINE: %{prefix} = DEFAULTS-PS5 |
31 | 36 | // REDEFINE: %{triple} = x86_64-sie-ps5 |
32 | 37 | // RUN: %{run} |
33 | 38 |
|
34 | 39 | // DEFAULTS: "-fvisibility-from-dllstorageclass" |
35 | 40 | // DEFAULTS-SAME: "-fvisibility-dllexport=protected" |
36 | | -// DEFAULTS-SAME: "-fvisibility-nodllstorageclass=hidden" |
| 41 | +// DEFAULTS-PS4-SAME: "-fvisibility-nodllstorageclass=hidden" |
| 42 | +// DEFAULTS-PS5-SAME: "-fvisibility-nodllstorageclass=keep" |
37 | 43 | // DEFAULTS-SAME: "-fvisibility-externs-dllimport=default" |
38 | | -// DEFAULTS-SAME: "-fvisibility-externs-nodllstorageclass=default" |
| 44 | +// DEFAULTS-PS4-SAME: "-fvisibility-externs-nodllstorageclass=default" |
| 45 | +// DEFAULTS-PS5-SAME: "-fvisibility-externs-nodllstorageclass=keep" |
39 | 46 |
|
40 | 47 | // REDEFINE: %{run} = \ |
41 | | -// REDEFINE: %clang -### -target x86_64-scei-ps4 \ |
| 48 | +// REDEFINE: %clang -### -target %{triple} \ |
42 | 49 | // REDEFINE: -fvisibility-from-dllstorageclass \ |
43 | 50 | // REDEFINE: -fvisibility-dllexport=hidden \ |
44 | 51 | // REDEFINE: -fvisibility-nodllstorageclass=protected \ |
|
64 | 71 | // UNUSED-NEXT: warning: argument unused during compilation: '-fvisibility-externs-nodllstorageclass=protected' |
65 | 72 |
|
66 | 73 | // REDEFINE: %{run} = \ |
67 | | -// REDEFINE: %clang -### -target x86_64-scei-ps4 \ |
| 74 | +// REDEFINE: %clang -### -target %{triple} \ |
68 | 75 | // REDEFINE: -fvisibility-nodllstorageclass=protected \ |
69 | 76 | // REDEFINE: -fvisibility-externs-dllimport=hidden \ |
70 | 77 | // REDEFINE: -Werror \ |
71 | 78 | // REDEFINE: %s -o - 2>&1 | \ |
72 | | -// REDEFINE: FileCheck %s -check-prefix=SOME \ |
| 79 | +// REDEFINE: FileCheck %s -check-prefixes=SOME,%{prefix} \ |
73 | 80 | // REDEFINE: --implicit-check-not=-fvisibility-from-dllstorageclass \ |
74 | 81 | // REDEFINE: --implicit-check-not=-fvisibility-dllexport \ |
75 | 82 | // REDEFINE: --implicit-check-not=-fvisibility-nodllstorageclass \ |
76 | 83 | // REDEFINE: --implicit-check-not=-fvisibility-externs-dllimport \ |
77 | 84 | // REDEFINE: --implicit-check-not=-fvisibility-externs-nodllstorageclass |
| 85 | +// REDEFINE: %{prefix} = SOME-PS4 |
78 | 86 | // REDEFINE: %{triple} = x86_64-scei-ps4 |
79 | 87 | // RUN: %{run} |
| 88 | +// REDEFINE: %{prefix} = SOME-PS5 |
80 | 89 | // REDEFINE: %{triple} = x86_64-sie-ps5 |
81 | 90 | // RUN: %{run} |
82 | 91 |
|
83 | 92 | // REDEFINE: %{run} = \ |
84 | | -// REDEFINE: %clang -### -target x86_64-scei-ps4 \ |
| 93 | +// REDEFINE: %clang -### -target %{triple} \ |
85 | 94 | // REDEFINE: -fvisibility-from-dllstorageclass \ |
86 | 95 | // REDEFINE: -fvisibility-nodllstorageclass=protected \ |
87 | 96 | // REDEFINE: -fvisibility-externs-dllimport=hidden \ |
88 | 97 | // REDEFINE: -Werror \ |
89 | 98 | // REDEFINE: %s -o - 2>&1 | \ |
90 | | -// REDEFINE: FileCheck %s -check-prefix=SOME \ |
| 99 | +// REDEFINE: FileCheck %s -check-prefixes=SOME,%{prefix} \ |
91 | 100 | // REDEFINE: --implicit-check-not=-fvisibility-from-dllstorageclass \ |
92 | 101 | // REDEFINE: --implicit-check-not=-fvisibility-dllexport \ |
93 | 102 | // REDEFINE: --implicit-check-not=-fvisibility-nodllstorageclass \ |
94 | 103 | // REDEFINE: --implicit-check-not=-fvisibility-externs-dllimport \ |
95 | 104 | // REDEFINE: --implicit-check-not=-fvisibility-externs-nodllstorageclass |
| 105 | +// REDEFINE: %{prefix} = SOME-PS4 |
96 | 106 | // REDEFINE: %{triple} = x86_64-scei-ps4 |
97 | 107 | // RUN: %{run} |
| 108 | +// REDEFINE: %{prefix} = SOME-PS5 |
98 | 109 | // REDEFINE: %{triple} = x86_64-sie-ps5 |
99 | 110 | // RUN: %{run} |
100 | 111 |
|
101 | 112 | // SOME: "-fvisibility-from-dllstorageclass" |
102 | 113 | // SOME-SAME: "-fvisibility-dllexport=protected" |
103 | 114 | // SOME-SAME: "-fvisibility-nodllstorageclass=protected" |
104 | 115 | // SOME-SAME: "-fvisibility-externs-dllimport=hidden" |
105 | | -// SOME-SAME: "-fvisibility-externs-nodllstorageclass=default" |
| 116 | +// SOME-PS4-SAME: "-fvisibility-externs-nodllstorageclass=default" |
| 117 | +// SOME-PS5-SAME: "-fvisibility-externs-nodllstorageclass=keep" |
106 | 118 |
|
107 | 119 | // REDEFINE: %{run} = \ |
108 | | -// REDEFINE: %clang -### -target x86_64-scei-ps4 \ |
| 120 | +// REDEFINE: %clang -### -target %{triple} \ |
109 | 121 | // REDEFINE: -fvisibility-dllexport=default \ |
110 | 122 | // REDEFINE: -fvisibility-dllexport=hidden \ |
111 | 123 | // REDEFINE: -fvisibility-nodllstorageclass=default \ |
|
121 | 133 | // REDEFINE: --implicit-check-not=-fvisibility-dllexport \ |
122 | 134 | // REDEFINE: --implicit-check-not=-fvisibility-nodllstorageclass \ |
123 | 135 | // REDEFINE: --implicit-check-not=-fvisibility-externs-dllimport \ |
124 | | -// REDEFINE: --implicit-check-not=-fvisibility-externs-nodllstorageclass |
| 136 | +// REDEFINE: --implicit-check-not=-fvisibility-externs-nodllstorageclass \ |
| 137 | +// REDEFINE: --implicit-check-not="warning: argument unused" |
125 | 138 | // REDEFINE: %{triple} = x86_64-scei-ps4 |
126 | 139 | // RUN: %{run} |
127 | 140 | // REDEFINE: %{triple} = x86_64-sie-ps5 |
128 | 141 | // RUN: %{run} |
129 | 142 |
|
130 | 143 | // REDEFINE: %{run} = \ |
131 | | -// REDEFINE: %clang -### -target x86_64-scei-ps4 \ |
| 144 | +// REDEFINE: %clang -### -target %{triple} \ |
132 | 145 | // REDEFINE: -fvisibility-from-dllstorageclass \ |
133 | 146 | // REDEFINE: -fvisibility-dllexport=default \ |
134 | 147 | // REDEFINE: -fvisibility-dllexport=hidden \ |
|
0 commit comments