testsuite: Assert that testsuite ways are known
[ghc.git] / testsuite / tests / simplCore / should_compile / all.T
1 test('simpl001', normal, compile, [''])
2 test('simpl002', normal, compile, [''])
3 test('simpl003', normal, compile, [''])
4 test('simpl004', normal, compile, [''])
5 test('simpl005', normal, compile, [''])
6
7 # Missing:
8 # test('simpl006', normal, compile, [''])
9
10 test('simpl007', normal, compile, [''])
11 # Missing: simpl008
12 test('simpl009', normal, compile, [''])
13 test('simpl010', normal, compile, [''])
14 test('simpl011', normal, compile, [''])
15 test('simpl012', normal, compile, [''])
16 test('simpl013', normal, compile, [''])
17 test('simpl014', normal, compile, [''])
18 test('simpl016', normal, compile, ['-dsuppress-uniques -dsuppress-ticks'])
19 test('simpl017', normal, compile_fail, [''])
20 test('simpl018', normal, compile, [''])
21 test('simpl019', normal, compile, [''])
22 test('simpl020', [extra_files(['Simpl020_A.hs'])], multimod_compile, ['simpl020', '-v0'])
23
24 test('simpl-T1370', normal, compile, [''])
25 test('T2520', normal, compile, [''])
26
27 test('spec001', when(fast(), skip), compile, [''])
28 test('spec002', normal, compile, [''])
29 test('spec003', normal, compile, [''])
30
31 test('rule1', normal, compile, [''])
32 test('rule2', only_ways(['optasm']), compile, ['-dsuppress-uniques -dsuppress-ticks'])
33 test('T7162', normal, compile, [''])
34
35 test('dfun-loop', normal, compile, [''])
36 test('strict-float', normal, compile, [''])
37 test('T3118', normal, compile, [''])
38 test('T4203', normal, compile, [''])
39
40 # With -prof -fvia-C, this test makes gcc go out to lunch, and the
41 # testsuite driver times out.
42 test('T3016', when(fast(), skip), compile, [''])
43
44 test('T1647', normal, compile, ['-fdicts-strict -dcore-lint'])
45
46 test('T3234',
47      normal,
48      makefile_test, ['T3234'])
49
50 test('T3717', only_ways(['optasm']),
51               compile,
52               ['-ddump-simpl -dsuppress-uniques -dsuppress-ticks'])
53
54 test('spec-inline', only_ways(['optasm']),
55                     compile,
56                     ['-O2 -ddump-simpl -dsuppress-uniques -dsuppress-ticks'])
57 test('T4908', only_ways(['optasm']),
58               compile,
59               ['-O2 -ddump-simpl -dsuppress-uniques -dsuppress-ticks'])
60
61 test('T4930', only_ways(['optasm']),
62               compile,
63               ['-O -ddump-simpl -dsuppress-uniques -dsuppress-ticks'])
64
65 test('T3055', [], makefile_test, ['T3055'])
66
67 test('T4306',
68      normal,
69      makefile_test, ['T4306'])
70
71 test('T4201',
72      normal,
73      makefile_test, ['T4201'])
74
75 test('T3772',
76 #      only_ways(['optasm']),
77      extra_clean(['T3772_A.hi', 'T3772_A.o']),
78      makefile_test, ['T3772'])
79
80 test('EvalTest',
81      normal,
82      makefile_test, ['EvalTest'])
83
84 test('T3831', normal, compile, [''])
85 test('T4345', normal, compile, [''])
86 test('T4398', normal, compile, ['-dsuppress-uniques -dsuppress-ticks'])
87
88 test('T4903', [], makefile_test, ['T4903'])
89
90 test('T4918', [], makefile_test, ['T4918'])
91
92 # This test flips too and fro about whether it passes
93 # I'm not sure why it is so delicate, but it greps the
94 # result of -ddump-simpl, which is never advertised to
95 # be very stable
96 test('T4945',
97      normal,
98      makefile_test, ['T4945'])
99
100 test('T4957',
101      normal,
102      makefile_test, ['T4957'])
103
104 test('T5168',
105      normal,
106      makefile_test, ['T5168'])
107
108 test('T5329', normal, compile, [''])
109 test('T5303', normal, compile, [''])   # Coercion-optimisation test
110 test('T5342', normal, compile, [''])   # Lint error with -prof
111 test('T5359a', normal, compile, [''])  # Lint error with -O (OccurAnal)
112 test('T5359b', normal, compile, [''])  # Lint error with -O (OccurAnal)
113 test('T5458', normal, compile, [''])
114 test('simpl021', [extra_files(['Simpl021A.hs', 'Simpl021B.hs'])], makefile_test, ['simpl021'])
115 test('T5327', normal, makefile_test, ['T5327'])
116 test('T16254', normal, makefile_test, ['T16254'])
117 test('T5615', normal, makefile_test, ['T5615'])
118 test('T5623', normal, makefile_test, ['T5623'])
119 test('T13155', normal, makefile_test, ['T13155'])
120 test('T5658b',
121      normal,
122      makefile_test, ['T5658b'])
123 test('T5776',
124      normal,
125      makefile_test, ['T5776'])
126 test('T4138', [], makefile_test, ['T4138'])
127 test('T7088', normal, compile, [''])
128 test('T6082-RULE', normal, compile, [''])
129 test('T7165', [], makefile_test, ['T7165'])
130 test('T7287', normal, compile, [''])
131 test('T7360', only_ways(['optasm']), compile, ['-ddump-simpl -dsuppress-uniques -dsuppress-ticks'])
132 test('T5366',
133      normal,
134      makefile_test, ['T5366'])
135 test('T7796', [], makefile_test, ['T7796'])
136 test('T5550', omit_ways(prof_ways), compile, [''])
137 test('T7865', normal, makefile_test, ['T7865'])
138 test('T7785', only_ways(['optasm']), compile, ['-ddump-rules'])
139 test('T7702',
140      [extra_files(['T7702plugin']),
141       only_ways([config.ghc_plugin_way]),
142       pre_cmd('$MAKE -s --no-print-directory -C T7702plugin package.T7702 TOP={top}'),
143       # we say 18mb peak allocated +/- 70% because other compiler flags have
144       # a large effect on allocation which is hard to separate from the
145       # allocation done by the plugin... but a regression allocates > 90mb
146       collect_compiler_stats('peak_megabytes_allocated',70),
147       when(opsys('mingw'), expect_broken_for(16799, ['normal']))
148      ],
149      compile,
150      ['-v0 -package-db T7702plugin/pkg.T7702/local.package.conf -fplugin T7702Plugin -package T7702plugin ' + config.plugin_way_flags])
151
152 # we omit profasm because it doesn't bring much to the table but
153 # introduces its share of complexity, as the test as it is fails with
154 # profasm:
155 # T7944.hs:7:1: fatal:
156 #     Cannot load -prof objects when GHC is built with -dynamic
157 #     To fix this, either:
158 #       (1) Use -fexternal-interpreter, or
159 #       (2) Build the program twice: once with -dynamic, and then
160 #           with -prof using -osuf to set a different object file suffix.
161 test('T7944', omit_ways(['profasm']), compile, ['-O2'])
162 test('T7995',
163      # RULE doesn't seem to fire unless optimizations are turned on.
164      # This seems reasonable, so I've required it for the test. -- EZY 20130720
165      only_ways(['optasm']),
166      makefile_test, ['T7995'])
167
168 test('T8196', normal, compile, [''])
169 test('T8221b', normal, compile, [''])
170 test('T8221', [], makefile_test, ['T8221'])
171 test('T8274', normal, makefile_test, ['T8274'])
172 test('T8329', only_ways(['optasm']), multimod_compile, ['T8329','-v0 -O'])
173 test('T5996',
174      normal,
175      makefile_test, ['T5996'])
176 test('T8537', normal, compile, [''])
177 test('T8832',
178      normal,
179      run_command, ['$MAKE -s --no-print-directory T8832 T8832_WORDSIZE_OPTS=' +
180       ('-DT8832_WORDSIZE_64' if wordsize(64) else '')])
181 test('T8848', normal,
182      makefile_test, ['T8848'])
183 test('T8848a', only_ways(['optasm']), compile, ['-ddump-rules'])
184 test('T8331', only_ways(['optasm']), compile, ['-ddump-rules'])
185 test('T6056', only_ways(['optasm']), multimod_compile, ['T6056', '-v0 -ddump-rule-firings'])
186 test('T9400', only_ways(['optasm']), compile, ['-O0 -ddump-simpl -dsuppress-uniques -dsuppress-ticks'])
187 test('T9441a', [only_ways(['optasm']), check_errmsg(r'f1 = f2') ], compile, ['-ddump-simpl -dsuppress-ticks'])
188 test('T9441b', [only_ways(['optasm']), check_errmsg(r'Rec {') ], compile, ['-ddump-simpl'])
189 test('T9441c', [only_ways(['optasm']), check_errmsg(r'Rec {') ], compile, ['-ddump-simpl'])
190 test('T9583', only_ways(['optasm']), compile, [''])
191 test('T9565', only_ways(['optasm']), compile, [''])
192 test('T5821', only_ways(['optasm']), compile, [''])
193 test('T10176', only_ways(['optasm']), compile, [''])
194 test('T10180', only_ways(['optasm']), compile, [''])
195 test('T10602', only_ways(['optasm']), multimod_compile, ['T10602','-v0'])
196 test('T10627', only_ways(['optasm']), compile, [''])
197 test('T10181', [only_ways(['optasm'])], compile, [''])
198 test('T10083',
199      normal,
200      makefile_test, ['T10083'])
201 test('T10689', normal, compile, [''])
202 test('T11155',
203      normal,
204      makefile_test, ['T11155'])
205 test('T11232', normal, compile, ['-O2'])
206 test('T11562', normal, compile, ['-O2'])
207 test('T11742', normal, compile, ['-O2'])
208 test('T11644', normal, compile, ['-O2'])
209 test('T3990',
210      normal,
211      makefile_test, ['T3990'])
212
213 test('T12076', [], multimod_compile, ['T12076', '-v0'])
214 test('T12076lit', normal, compile, ['-O'])
215 test('T12076sat', normal, compile, ['-O'])
216 test('T12212', normal, compile, ['-O'])
217
218 test('noinline01', only_ways(['optasm']), compile, ['-ddump-stg -dsuppress-uniques -dsuppress-ticks -O'])
219 test('par01', only_ways(['optasm']), compile, ['-ddump-prep -dsuppress-uniques -dsuppress-ticks -O2'])
220 test('T12776', normal, compile, ['-O2'])
221 test('T9509',
222      normal,
223      makefile_test, ['T9509'])
224 test('T12603',
225      normal,
226      makefile_test, ['T12603'])
227 test('T12877', normal, makefile_test, ['T12877'])
228 test('T13027', normal, compile, [''])
229 test('T13025',
230      normal,
231      makefile_test, ['T13025'])
232 test('T13143', only_ways(['optasm']), compile, ['-O -ddump-simpl -dsuppress-uniques -dsuppress-ticks'])
233 test('T13156', normal, makefile_test, ['T13156'])
234 test('T11444', normal, compile, [''])
235 test('str-rules',
236      normal,
237      makefile_test, ['str-rules'])
238 test('T13170', only_ways(['optasm']), compile, ['-dcore-lint'])
239 test('T13317',
240      normal,
241      makefile_test, ['T13317'])
242 test('T13340', normal, makefile_test, ['T13340'])
243 test('T13338', only_ways(['optasm']), compile, ['-dcore-lint'])
244 test('T13367', normal, makefile_test, ['T13367'])
245 test('T13417', normal, compile, ['-O'])
246 test('T13413', normal, compile, [''])
247 test('T13410', normal, compile, ['-O2'])
248 test('T13468',
249      normal,
250      makefile_test, ['T13468'])
251 test('T13543', only_ways(['optasm']), compile, ['-ddump-str-signatures'])
252 test('T11272',
253      normal,
254      makefile_test, ['T11272'])
255 test('T12600',
256      normal,
257      makefile_test, ['T12600'])
258 test('T13658',
259      [when((arch('powerpc64') or arch('powerpc64le')), expect_broken(11261))],
260      compile, ['-dcore-lint'])
261 test('T14779a',
262      [when((arch('powerpc64') or arch('powerpc64le')), expect_broken(11261))],
263      compile, ['-dcore-lint'])
264 test('T14779b',
265      [when((arch('powerpc64') or arch('powerpc64le')), expect_broken(11261))],
266      compile, ['-dcore-lint'])
267 test('T13708', normal, compile, [''])
268
269 # thunk should inline here, so check whether or not it appears in the Core
270 # (we skip profasm because it might not inline there)
271 test('T14137', [ check_errmsg(r'thunk'), omit_ways(['profasm']) ], compile, ['-dsuppress-uniques -dsuppress-ticks -ddump-simpl'])
272 # bar and foo should CSEd here, so check for that in the Core
273 test('T14186', [ only_ways(['optasm']), check_errmsg(r'bar = foo') ], compile, ['-ddump-simpl -dsuppress-ticks'])
274
275 test('T14140',
276      normal,
277      makefile_test, ['T14140'])
278
279 test('T14272', normal, compile, [''])
280 test('T14270a', normal, compile, [''])
281 test('T14152', [ only_ways(['optasm']), check_errmsg(r'dead code') ], compile, ['-ddump-simpl'])
282 test('T14152a', [extra_files(['T14152.hs']), pre_cmd('cp T14152.hs T14152a.hs'),
283                  only_ways(['optasm']), check_errmsg(r'dead code') ],
284                 compile, ['-fno-exitification -ddump-simpl'])
285 test('T13990', normal, compile, ['-dcore-lint -O'])
286 test('T14650', normal, compile, ['-O2'])
287 test('T14959', normal, compile, ['-O'])
288 test('T14978',
289      normal,
290      makefile_test, ['T14978'])
291 test('T15002', [ req_profiling ], compile, ['-O -fprof-auto -prof'])
292 test('T15005', normal, compile, ['-O'])
293 # we omit profiling because it affects the optimiser and makes the test fail
294 test('T15056', [extra_files(['T15056a.hs']), omit_ways(['profasm'])], multimod_compile, ['T15056', '-O -v0 -ddump-rule-firings'])
295 test('T15186', normal, multimod_compile, ['T15186', '-v0'])
296 test('T15517', normal, compile, ['-O0'])
297 test('T15517a', normal, compile, ['-O0'])
298 test('T15453', normal, compile, ['-dcore-lint -O1'])
299 test('T15445', normal, multimod_compile, ['T15445', '-v0 -O -ddump-rule-firings'])
300 test('T15631',
301      normal,
302      makefile_test, ['T15631'])
303 test('T15673', normal, compile, ['-O'])
304 test('T16288', normal, multimod_compile, ['T16288B', '-O -dcore-lint -v0'])
305 test('T16348', normal, compile, ['-O'])
306 test('T16918', normal, compile, ['-O'])
307 test('T16918a', normal, compile, ['-O'])
308 test('T16978', normal, compile, ['-O'])
309 test('T16979a', normal, compile, ['-O'])
310 test('T16979b', normal, compile, ['-O'])
311 test('T17140',
312      [extra_files(['T17140a.hs'])],
313      makefile_test,
314      ['T17140'])