jdk-24/test/hotspot/jtreg/compiler/graalunit
Jesper Wilhelmsson 75db2f7df9 8221598: Update Graal
Reviewed-by: kvn
2019-04-23 22:55:09 +02:00
..
com.oracle.mxtool.junit/com/oracle/mxtool/junit 8205207: Port Graal unit tests under jtreg 2018-06-28 17:07:34 -07:00
common 8222747: [Graal] mx_subprocess files miss testing VM flags 2019-04-19 11:18:06 -07:00
ApiDirectivesTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
ApiTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
AsmAarch64Test.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
AsmAmd64Test.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
AsmSparcTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
CollectionsTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
CoreAmd64Test.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
CoreTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
DebugTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
EA9Test.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
EATest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
generateTests.sh 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
GraphTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
HotspotAarch64Test.java 8221598: Update Graal 2019-04-23 22:55:09 +02:00
HotspotAmd64Test.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
HotspotJdk9Test.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
HotspotLirTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
HotspotSparcTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
HotspotTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
Jtt.MicroTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttBackendTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttBytecodeTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttExceptTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttHotpathTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttHotspotTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttJdkTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttLangALTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttLangMathALTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttLangMathMZTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttLangNZTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttLoopTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttOptimizeTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttReflectAETest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttReflectFieldGetTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttReflectFieldSetTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttReflectGZTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
JttThreadsTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
LirJttTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
LirTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
LoopTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
NodesTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
OptionsTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
PhasesCommonTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
README.md 8216480: Typo in test/hotspot/jtreg/compiler/graalunit/README.md 2019-01-11 09:59:28 +01:00
Replacements9Test.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
Replacements12Test.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
ReplacementsTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00
TestPackages.txt 8221598: Update Graal 2019-04-23 22:55:09 +02:00
UtilTest.java 8216551: GraalUnitTestLauncher should be executed as '@run driver' 2019-04-08 11:11:22 -07:00

This directory contains jtreg tests which are wrapper tests to execute Graal unit tests similar way they are run in Graal project. The tests use compiler.graalunit.common.GraalUnitTestLauncher helper class to run Graal unit tests where the set of tests to execute is specified by '-prefix' argument. GraalUnitTestLauncher launches ported com.oracle.mxtool.junit.MxJUnitWrapper to run Graal unit tests as it is done by "mx unittest" command from Graal project.

All compiler/graalunit/*.java tests were automatically generated by generateTests.sh script which reads "testName -> testPrefix [requiresStatement]" mapping from TestPackages.txt file and generates corresponding Test.java tests. The mapping takes into account tests execution time to avoid very long test runs.

Graal unit tests depends on following external jar files: asm-5.0.4.jar: https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/asm-5.0.4.jar

asm-tree-5.0.4.jar: https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/asm-tree-5.0.4.jar

junit-4.12.jar: https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/junit-4.12.jar

hamcrest-core-1.3.jar: https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/hamcrest-core-1.3.jar

java-allocation-instrumenter.jar: https://lafo.ssw.uni-linz.ac.at/pub/java-allocation-instrumenter/java-allocation-instrumenter-8f0db117e64e.jar

Before running the tests you need to download these jars from above locations in build//images/test/hotspot/jtreg/graal/ directory. Then you can pass it to jtreg as java option by using "-vmoptions:-Dgraalunit.libs=" or as environment variable by using "-e:TEST_IMAGE_GRAAL_DIR=..."

Example:

jtreg -vt -jdk:<TESTED_JDK> -vmoptions:"-Dgraalunit.libs=build//images/test/hotspot/jtreg/graal" compiler/graalunit/UtilTest.java

To run Graal unit tests in Graal as JIT mode pass additional -vmoptions to jtreg: -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -XX:+TieredCompilation -XX:+UseJVMCICompiler -Djvmci.Compiler=graal