Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mobile
Path: blob/master/test/hotspot/jtreg/vmTestbase/jit/description.txt
40943 views
1
Copyright (c) 2008, 2018, Oracle and/or its affiliates. All rights reserved.
2
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
3
4
This code is free software; you can redistribute it and/or modify it
5
under the terms of the GNU General Public License version 2 only, as
6
published by the Free Software Foundation.
7
8
This code is distributed in the hope that it will be useful, but WITHOUT
9
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
11
version 2 for more details (a copy is included in the LICENSE file that
12
accompanied this code).
13
14
You should have received a copy of the GNU General Public License version
15
2 along with this work; if not, write to the Free Software Foundation,
16
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
17
18
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
19
or visit www.oracle.com if you need additional information or have any
20
questions.
21
22
* common/ArrayBounds
23
24
Checks whether the compiler makes incorrect array bounds removal optimizations.
25
26
* common/ArrayTests
27
28
Checks whether array stores and reads are correct for integral types and floating points.
29
30
* common/bounds
31
32
Makes sure that array bounds checking is enabled with the JIT on
33
34
* common/CEETest
35
36
Checks whether comparision operations work properly.
37
38
* common/collapse
39
40
Checks constatnt propagation facilities of the JIT compiler.
41
42
* common/CondExpr
43
44
Checks that code for conditional expressions is generated properly.
45
46
* common/deoptimization/test01
47
* common/deoptimization/test02
48
* common/deoptimization/test03
49
* common/deoptimization/test04
50
* common/deoptimization/test05
51
* common/deoptimization/test06
52
* common/deoptimization/test07
53
* common/deoptimization/test08
54
55
Check compiler deoptimization facilities.
56
57
* common/DivTest
58
59
Checks some special cases of divide operation.
60
61
* common/exception
62
63
This JIT buster test checks to see if a JIT doing register allocation
64
on a machine with a callees saves ABI for non-volatile registers can
65
get the exception handling correct. Intel and PowerPC are both such
66
machines.
67
68
* common/exceptiontest
69
70
Does exactly the same as common/exception
71
72
* common/ExcOpt
73
74
Tests exception handler inside optimizable loop and around it.
75
76
* common/FPCompare/TestFPBinop
77
78
Tests floating point binary operations.
79
80
* common/FPCompare/TestFPCompare
81
82
Test of floating point comparison.
83
84
* common/gen_math/Filtering
85
* common/gen_math/Loops_1
86
* common/gen_math/Loops_2
87
* common/gen_math/Loops_3
88
* common/gen_math/Loops_4
89
* common/gen_math/Loops_5
90
* common/gen_math/Loops_6
91
* common/gen_math/Loops_7
92
* common/gen_math/Matrix_3d
93
* common/gen_math/Summ
94
95
These tests check math preciction stuff.
96
97
* common/gen_math/ShortCircuitTest
98
99
A complete set of tests for the binary Java operators {&&, ||, &, |} to
100
ensure that (C-style) short circuit evaluation is used where required, and
101
also is not used where prohibited. Checks has been constructed carefully to
102
be independent of the operators under scrutiny, so that passing these tests
103
constitutes validation of those operators.
104
105
* common/graph
106
107
The test checks the dynamic class creation and method invokation reflection features. A number of threads is created. They call
108
methods dynamically and recursively. Also, exceptions, thrown from the dynamically called methods are checked.
109
110
* common/inittest
111
112
Checks correctness of class initialization order.
113
114
* common/inittest2
115
116
Checks that JIT doesn't perform an initialization of class which is never used.
117
118
* common/inline001
119
120
This test is valid in JDK 1.1.4 and in prior JDKs. It
121
ceased to work in JDK 1.2e. The test relied on the JIT
122
to inline some final methods and to never inline non-final
123
methods.
124
125
* common/inline002
126
127
Look for inlined final methods in java.Math. Do this by comparing
128
execution times against estimates of call overheads for various
129
method signatures.
130
131
The current (08/04/97) list of inlined methods is short:
132
abs(float)
133
abs(double)
134
sqrt(double) [i386 only]
135
If new methods are inlined or dropped from the list of inlined
136
codes, record this fact by changing the value of an element of the
137
array expectInline. This is done in the method result().
138
139
This test will fail if the JIT is disabled. There are two modes
140
of operation. The first is to merely record a pass/fail for each
141
method tested. This output should be machine independent and
142
suitable for a golden file.
143
java -Djava.compiler=sunwjit inline002
144
The other mode is a report generation mode. It reports the
145
number of iterations, call overhead in nanoseconds, and a judgement
146
as to whether a method was inlined or not.
147
java -Djava.compiler=sunwjit inline002 -report
148
149
* common/inline003
150
* common/inline004
151
152
Check inlining of final methods.
153
154
* common/inline005
155
156
Checks correctness of evaluation order in inlined math functions (?).
157
158
* common/inline006
159
* common/inline007
160
161
Checks access to final class fields.
162
163
* common/JITSuite
164
165
Does exactly the same as common/inittest2
166
167
* common/jtest
168
169
Does some client-server communications via sockets. Not actually a JIT test!
170
171
* common/Linpack
172
173
Math presiction test.
174
175
* common/loops/arg01
176
* common/loops/arg03
177
178
Fill arrays in a loops and then makes a number of checks (?)
179
180
* common/loops/arg04
181
182
Checks correctness of interprocedural data flow analysis, tests for recognition of
183
loop independent dependences between statements in mutually exclusive regions, checks
184
global data flow analysis.
185
186
* common/loops/arg05
187
188
Checks loop vectorization stuff.
189
190
* common/loops/arg06
191
192
Checks statement reordering, loop distribution, partial loop vectorization, recurrence
193
in the middle of the loop.
194
195
* common/loops/arg07
196
197
Checks loop interchange, node splitting.
198
199
* common/loops/arg08
200
201
Checks scalar and array expansion.
202
203
* common/loops/arg09
204
205
Checks scalar and array expansion, control flow (loop with independent conditional).
206
207
* common/loops/arg10
208
209
Some control flow-related checks.
210
211
* common/loops/dec01
212
* common/loops/dec02
213
* common/loops/dec03
214
* common/loops/dec04
215
* common/loops/dec05
216
* common/loops/dec06
217
* common/loops/dec07
218
* common/loops/dec08
219
* common/loops/dec09
220
* common/loops/dec10
221
* common/loops/dec11
222
223
Some aritmetic operations within loops and a number of comparisions (?).
224
225
* common/loops/fuse1
226
* common/loops/fuse10
227
* common/loops/fuse101
228
* common/loops/fuse102
229
* common/loops/fuse103
230
* common/loops/fuse105
231
* common/loops/fuse106
232
* common/loops/fuse108
233
* common/loops/fuse11
234
* common/loops/fuse111
235
* common/loops/fuse113
236
* common/loops/fuse116
237
* common/loops/fuse117
238
* common/loops/fuse12
239
* common/loops/fuse13
240
* common/loops/fuse14
241
* common/loops/fuse16
242
* common/loops/fuse17
243
* common/loops/fuse18
244
* common/loops/fuse2
245
* common/loops/fuse3
246
* common/loops/fuse4
247
* common/loops/fuse5
248
* common/loops/fuse6
249
* common/loops/fuse8
250
251
Check correctness of loop fusion.
252
253
* common/loops/fuse107
254
* common/loops/fuse109
255
* common/loops/fuse15
256
* common/loops/fuse19
257
* common/loops/fuse7
258
* common/loops/fuse9
259
260
Construct a number of loops and make some calculations. These tests seems to be
261
incomplete (incorrectly translated from Fortran).
262
263
* common/loops/private1
264
265
Single dimensional private array, with no carried dependence in the inner
266
loop - simple subscripts.
267
268
* common/loops/private2
269
270
Single dimensional private array, with no carried dependence in the inner
271
loop - non-simple subscripts (test incomplete).
272
273
* common/loops/private3
274
275
Single dimensional private array, with no carried dependence
276
in the inner loop (test incomplete).
277
278
* common/loops/private4
279
280
Loop with condionals, both arms of the conditional cover the entire array
281
which is private.
282
283
* common/loops/private5
284
285
Single dimensional private array, 2 inner loops; all uses of array in the 2nd loop are
286
covered by defs in the 1st one.
287
288
* common/loops/private6
289
290
Single dimensional private array; all uses of array in the inner loop are
291
covered by defs in the outer one.
292
293
* common/loops/private7
294
295
Single dimensional private array, 3 inner loops; all uses of array in the 3rd loop are
296
covered by defs in the 1st and 2nd one.
297
298
* common/loops/private8
299
300
Single dimensional private array, 3 inner loops; the defs of array in the 2nd loop cover
301
all the defs and uses within loops 2 and 3.
302
303
* common/loops/private9
304
305
Single dimensional private array, the two loops effectively cover the array.
306
307
* common/loops/private10
308
309
Single dimensional private array, the two asignments to the array in the inner loop
310
effectively cover the entire array.
311
312
* common/loops/private104
313
314
Loop with condionals. Both arms of the conditional cover the entire array.
315
316
* common/loops/private105
317
318
Single dimensional private array, 2 inner loops; all uses of array in the 2nd loop are
319
covered by defs in the 1st one.
320
321
* common/loops/private107
322
323
Single dimensional private array, 3 inner loops; all uses of array in the 3rd loop are
324
covered by defs in the 1st and 2nd one.
325
326
* common/loops/private109
327
328
Single dimensional private array, the two loops effectively cover the array.
329
330
* common/loops/private11
331
332
The two loops each cover disjoint triangular regions of the array. Together they
333
cover the entire array.
334
335
* common/loops/private110
336
337
Single dimensional private array, the two asignments to the array in the inner loop
338
effectively cover the entire array.
339
340
* common/loops/private111
341
342
The two loops each cover disjoint triangular regions of the array. Together they
343
cover the entire array.
344
345
* common/loops/private112
346
* common/loops/private113
347
* common/loops/private12
348
* common/loops/private13
349
350
Private array sections. Even though only a portion of the array is covered by the
351
definitions, but the uses are covered entirely by the defs in the array.
352
353
* common/loops/private117
354
355
Single dimensional private array, 2 inner loops; all uses of array in the 2nd loop are
356
covered by defs in the 1st one.
357
358
* common/loops/private118
359
360
Two dimensional private array and some loop unrolling made by hand.
361
362
* common/loops/private119
363
364
Two dimensional private array.
365
366
* common/loops/private120
367
368
Loop peeling before and after the loop.
369
370
* common/loops/private122
371
372
Two dimensional private array.
373
374
* common/loops/private123
375
376
Single dimensional private array; even though not all elements of the array are modified
377
in the inner loop, and all uses of array are covered.
378
379
* common/loops/private124
380
381
Two dimensional private array. Loop with condionals; both arms of the conditional cover
382
the entire array, there are uses in the either arm the are entirely covered.
383
384
* common/loops/private125
385
386
Two dimensional private array. Loop with condionals; the uses of the array outside the
387
conditional are not guaranteed to be covered entirely.
388
389
* common/loops/private126
390
391
Two dimensional array. Here array is not private, as one element is not covered in the loop.
392
393
* common/loops/private128
394
395
Two and single dimensional arrays.
396
397
* common/loops/private130
398
399
2 two dimensional and 1 single dimension array.
400
401
* common/loops/private133
402
403
Single dimensional private array, 2 inner loops.
404
405
* common/loops/private14
406
407
This is an involved test. The first j loop covers 1..m elements of the
408
1..n array. Since overindexing is prohibited, the compiler should assume
409
that 1..m is a subset of 1..n. In the k loop first m uses of the array
410
a() are covered by defs in the j loop. The next m+1..n iterations of the
411
loop do not have any uncovered uses. Therefore the array a() ought to be
412
a private array.
413
414
* common/loops/private15
415
416
Similar to common/loops/private14, but uses no conditionals.
417
418
* common/loops/private17
419
420
Single dimensional array, assuming no overindexing.
421
422
* common/loops/private18
423
* common/loops/private19
424
* common/loops/private20
425
* common/loops/private22
426
427
Single dimensional private array, 3 inner loops.
428
429
* common/loops/private21
430
431
3 inner loops, the 1st and 2nd loop together cover the entire array, and all the uses
432
of the array in the 3rd loop are covered.
433
434
* common/loops/private23
435
436
Private array, even though not all elements of the array are modified in inner loop,
437
and all uses of the array are covered.
438
439
* common/loops/private24
440
441
Conditional inside the loop, 2 inner loops in both arms.
442
443
* common/loops/private25
444
445
Conditional inside the loop, inner loops in both arms and one inner loop after
446
the conditional.
447
448
* common/loops/private26
449
* common/loops/private27
450
* common/loops/private28
451
452
Single dimensional private array, 3 inner loops.
453
454
* common/loops/private29
455
456
Single dimensional private array, 2 inner loops.
457
458
* common/loops/private30
459
460
Conditional inside the loop, inner loops in both arms and one inner loop before
461
the conditional.
462
463
* common/loops/private31
464
465
Conditional inside the loop, inner loop in both arms.
466
467
* common/loops/private32
468
469
2 loops, inner loop inside the 2nd one.
470
471
* common/loops/private33
472
473
Single dimensional private array, 2 inner loops.
474
475
* common/misctests/classes
476
477
No test found!
478
479
* common/misctests/clss14702
480
481
Checks that NullPointerException is thrown.
482
483
* common/misctests/FileViewer
484
485
Not a JIT test!
486
487
* common/misctests/Foo
488
489
Does nothing.
490
491
* common/misctests/fpustack
492
493
Not a JIT test!
494
495
* common/misctests/Jdk116JitProblem
496
497
The test illustrates a problem with the new JDK 1.1.6 JIT. The JIT compiler
498
included with JDK 1.1.6 takes forever to compile the transform() method, thereby
499
hanging up the virtual machine.
500
501
* common/misctests/JitBug
502
503
Symantec's JIT seems to optimize away important code. The test compiled using
504
the standard javac, demonstrates a bug in the JIT on NT4/sp3.
505
506
* common/misctests/JitBug1
507
508
Demonstrates yet another JIT bug.
509
510
* common/misctests/JitTest
511
512
Tests equals() method.
513
514
* common/misctests/NoHeader
515
516
Not a JIT test!
517
518
* common/misctests/noop
519
520
Not a JIT test!
521
522
* common/misctests/Pi
523
524
Not a JIT test!
525
526
* common/misctests/putfield00802
527
528
Tests NullPointerException. Should be removed (common/misctests/clss14702 is a better test).
529
530
* common/misctests/t5
531
532
Not a JIT test!
533
534
* common/misctests/testbug
535
536
If this test is run under JRE 1.1.6, it gets the following error: "A nonfatal internal
537
JIT (3.00.039(x)) error 'Unuse_LRU' hasoccu4rred in: 'testbug.dk ([BI)V': Interpreting method."
538
539
* common/misctests/whet
540
541
Not a JIT test!
542
543
* common/misctests/test.java
544
545
Not a JIT test!
546
547
* common/overflow
548
549
Test StackOverflowException.
550
551
* common/pat001
552
553
Tests arithmetic series.
554
555
* common/Peano
556
557
Computes factorials by using the Peano axioms only. Not a test!
558
559
* common/PrintProperties
560
* common/PrintThis
561
562
Not a JIT test!
563
564
* common/Robert
565
566
Tests some exception stuff
567
568
* common/Sleeper
569
570
Not a JIT test!
571
572
* common/tXXX
573
574
Do some arithmetic operations, but do not actually report results. Should be removed.
575
576
* common/testForBugs/4427606/TestDivByZero
577
578
Tests correctness of division by zero handling.
579
580
* common/testForBugs/4427606/Security
581
* common/testForBugs/4446672/TestThreadStart.java
582
583
Not a JIT test!
584
585
* common/testForBugs/CrashC1
586
587
Test for bug in C1.
588
589
* common/wide
590
* common/too_wide
591
592
Check for intermediate results that are too wide.
593
594
* common/TsdCase
595
596
performance benchmarks. Not a test!
597
598
* common/verifier/VerifyInitLocal
599
600
Makes sure verifier allows initialization of local fields.
601
602
* common/verifier/VerifyMergeStack
603
604
Makes sure verifier fails when two distinct types meet on operand stack.
605
606