# # Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License version 2 only, as # published by the Free Software Foundation. # # This code is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License # version 2 for more details (a copy is included in the LICENSE file that # accompanied this code). # # You should have received a copy of the GNU General Public License version # 2 along with this work; if not, write to the Free Software Foundation, # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. # # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA # or visit www.oracle.com if you need additional information or have any # questions. # # Profile-based Test Group Definitions # # These groups define the tests that cover the different possible runtimes: # - compact1, compact2, compact3, full JRE, JDK # # In addition they support testing of the minimal VM on compact1 and compact2. # Essentially this defines groups based around the specified API's and VM # services available in the runtime. # # The groups are defined hierarchically in two forms: # - The need_xxx groups list all the tests that have a dependency on # a specific profile. This is either because it tests a feature in # that profile, or the test infrastructure uses a feature in that # profile. # - The primary groups are defined in terms of the other primary groups # combined with the needs_xxx groups (including and excluding them as # appropriate). For example the jre can run all tests from compact3, plus # those from needs_jre, but excluding those from need_jdk. # # The bottom group defines all the actual tests to be considered, simply # by listing the top-level test directories. # # To use a group simply list it on the jtreg command line eg: # jtreg :jdk # runs all tests. While # jtreg :compact2 # runs those tests that only require compact1 and compact2 API's. # # Full JDK can run all tests # jdk = \ :jre \ :needs_jdk # Tests that require a full JDK to execute. Either they test a feature # only in the JDK or they use tools that are only in the JDK. The latter # can be resolved in some cases by using tools from the compile-jdk. # needs_jdk = \ gc/TestG1ZeroPGCTJcmdThreadPrint.java \ gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java \ gc/metaspace/TestMetaspacePerfCounters.java \ gc/metaspace/TestPerfCountersAndMemoryPools.java \ runtime/6819213/TestBootNativeLibraryPath.java \ runtime/7158988/FieldMonitor.java \ runtime/7194254/Test7194254.java \ runtime/Metaspace/FragmentMetaspace.java \ runtime/NMT/BaselineWithParameter.java \ runtime/NMT/JcmdScale.java \ runtime/NMT/JcmdWithNMTDisabled.java \ runtime/NMT/MallocTestType.java \ runtime/NMT/ReleaseCommittedMemory.java \ runtime/NMT/ShutdownTwice.java \ runtime/NMT/SummaryAfterShutdown.java \ runtime/NMT/SummarySanityCheck.java \ runtime/NMT/ThreadedMallocTestType.java \ runtime/NMT/ThreadedVirtualAllocTestType.java \ runtime/NMT/VirtualAllocTestType.java \ runtime/RedefineObject/TestRedefineObject.java \ runtime/Thread/TestThreadDumpMonitorContention.java \ runtime/XCheckJniJsig/XCheckJSig.java \ serviceability/attach/AttachWithStalePidFile.java \ serviceability/jvmti/8036666/GetObjectLockCount.java \ serviceability/sa/jmap-hprof/JMapHProfLargeHeapTest.java \ serviceability/dcmd/DynLibDcmdTest.java # JRE adds further tests to compact3 # jre = \ :compact3 \ :needs_jre \ -:needs_jdk # Tests that require the full JRE # needs_jre = \ compiler/6852078/Test6852078.java \ compiler/7047069/Test7047069.java \ runtime/6294277/SourceDebugExtension.java \ runtime/ClassFile/JsrRewriting.java \ runtime/ClassFile/OomWhileParsingRepeatedJsr.java # Compact 3 adds further tests to compact2 # compact3 = \ :compact2 \ :needs_compact3 \ -:needs_jre \ -:needs_jdk # Tests that require compact3 API's # needs_compact3 = \ gc/6581734/Test6581734.java \ gc/7072527/TestFullGCCount.java \ gc/g1/TestHumongousAllocInitialMark.java \ gc/g1/TestHumongousShrinkHeap.java \ gc/arguments/TestG1HeapRegionSize.java \ gc/metaspace/TestMetaspaceMemoryPool.java \ gc/arguments/TestDynMinHeapFreeRatio.java \ gc/arguments/TestDynMaxHeapFreeRatio.java \ gc/parallelScavenge/TestDynShrinkHeap.java \ runtime/InternalApi/ThreadCpuTimesDeadlock.java \ serviceability/threads/TestFalseDeadLock.java \ serviceability/jvmti/GetObjectSizeOverflow.java \ serviceability/jvmti/TestRedefineWithUnresolvedClass.java # Compact 2 adds full VM tests compact2 = \ :compact2_minimal \ :compact1 \ :needs_full_vm_compact2 \ -:needs_compact3 \ -:needs_jre \ -:needs_jdk # Tests that require compact2 API's and a full VM # needs_full_vm_compact2 = # Compact 1 adds full VM tests # compact1 = \ :compact1_minimal \ :needs_full_vm_compact1 \ -:needs_compact2 \ -:needs_full_vm_compact2 \ -:needs_compact3 \ -:needs_jre \ -:needs_jdk # Tests that require compact1 API's and a full VM # needs_full_vm_compact1 = \ runtime/NMT \ gc/g1/TestRegionAlignment.java \ gc/g1/TestShrinkToOneRegion.java \ gc/metaspace/G1AddMetaspaceDependency.java \ gc/startup_warnings/TestCMS.java \ gc/startup_warnings/TestCMSIncrementalMode.java \ gc/startup_warnings/TestCMSNoIncrementalMode.java \ gc/startup_warnings/TestDefaultMaxRAMFraction.java \ gc/startup_warnings/TestDefNewCMS.java \ gc/startup_warnings/TestIncGC.java \ gc/startup_warnings/TestParallelGC.java \ gc/startup_warnings/TestParallelScavengeSerialOld.java \ gc/startup_warnings/TestParNewCMS.java \ gc/startup_warnings/TestParNewSerialOld.java \ runtime/SharedArchiveFile/SharedArchiveFile.java # Minimal VM on Compact 2 adds in some compact2 tests # compact2_minimal = \ :compact1_minimal \ :needs_compact2 \ -:needs_full_vm_compact2 \ -:needs_compact3 \ -:needs_jre \ -:needs_jdk # Tests that require compact2 API's # needs_compact2 = # All tests that run on the most minimal configuration: Minimal VM on Compact 1 compact1_minimal = \ serviceability/ \ compiler/ \ testlibrary/ \ testlibrary_tests/ \ sanity/ \ runtime/ \ gc/ \ -:needs_full_vm_compact1 \ -:needs_full_vm_compact2 \ -:needs_compact2 \ -:needs_compact3 \ -:needs_jre \ -:needs_jdk # All tests that explicitly set the G1 GC # needs_g1gc = \ compiler/regalloc/C1ObjectSpillInLogicOp.java \ gc/8000311/Test8000311.java \ gc/TestG1ZeroPGCTJcmdThreadPrint.java \ gc/TestSystemGC.java \ gc/arguments/TestAlignmentToUseLargePages.java \ gc/arguments/TestG1HeapRegionSize.java \ gc/arguments/TestG1HeapSizeFlags.java \ gc/arguments/TestMaxHeapSizeTools.java \ gc/arguments/TestMaxNewSize.java \ gc/arguments/TestUseCompressedOopsErgo.java \ gc/class_unloading/TestG1ClassUnloadingHWM.java \ gc/g1/ \ gc/metaspace/G1AddMetaspaceDependency.java \ gc/metaspace/TestMetaspacePerfCounters.java \ gc/startup_warnings/TestG1.java # All tests that explicitly set the serial GC # needs_serialgc = \ gc/TestSystemGC.java \ gc/arguments/TestAlignmentToUseLargePages.java \ gc/arguments/TestMaxNewSize.java \ gc/arguments/TestSerialHeapSizeFlags.java \ gc/arguments/TestUseCompressedOopsErgo.java \ gc/defnew/HeapChangeLogging.java \ gc/metaspace/TestMetaspacePerfCounters.java \ gc/metaspace/TestPerfCountersAndMemoryPools.java \ gc/startup_warnings/TestSerialGC.java # All tests that explicitly set the parallel GC # needs_parallelgc = \ gc/TestSystemGC.java \ gc/arguments/TestAlignmentToUseLargePages.java \ gc/arguments/TestMaxNewSize.java \ gc/arguments/TestMinInitialErgonomics.java \ gc/arguments/TestUseCompressedOopsErgo.java \ gc/metaspace/TestMetaspacePerfCounters.java \ gc/parallelScavenge/ \ gc/startup_warnings/TestParallelGC.java \ gc/startup_warnings/TestParallelScavengeSerialOld.java # All tests that explicitly set the CMS GC # needs_cmsgc = \ gc/6581734/Test6581734.java \ gc/TestSystemGC.java \ gc/arguments/TestAlignmentToUseLargePages.java \ gc/arguments/TestCMSHeapSizeFlags.java \ gc/arguments/TestMaxNewSize.java \ gc/arguments/TestUseCompressedOopsErgo.java \ gc/class_unloading/TestCMSClassUnloadingEnabledHWM.java \ gc/concurrentMarkSweep/ \ gc/startup_warnings/TestCMS.java \ gc/startup_warnings/TestCMSIncrementalMode.java \ gc/startup_warnings/TestCMSNoIncrementalMode.java \ gc/startup_warnings/TestDefNewCMS.java \ gc/startup_warnings/TestParNewCMS.java # All tests that explicitly set some GC # needs_gc = \ :needs_g1gc \ :needs_serialgc \ :needs_parallelgc \ :needs_cmsgc # All tests that do not set any GC explicitly # not_needs_gc = \ :jdk \ -:needs_gc # All tests that could be executed with the G1 GC without VM flags conflict # applicable_g1gc = \ :jdk \ -:needs_serialgc \ -:needs_parallelgc \ -:needs_cmsgc # All tests that could be executed with the serial GC without VM flags conflict # applicable_serialgc = \ :jdk \ -:needs_g1gc \ -:needs_parallelgc \ -:needs_cmsgc # All tests that could be executed with the parallel GC without VM flags conflict # applicable_parallelgc = \ :jdk \ -:needs_g1gc \ -:needs_serialgc \ -:needs_cmsgc # All tests that could be executed with the CMS GC without VM flags conflict # applicable_cmsgc = \ :jdk \ -:needs_g1gc \ -:needs_serialgc \ -:needs_parallelgc # When called from top level the test suites use the hotspot_ prefix hotspot_wbapitest = \ sanity/ hotspot_compiler = \ sanity/ExecuteInternalVMTests.java hotspot_gc = \ sanity/ExecuteInternalVMTests.java hotspot_runtime = \ sanity/ExecuteInternalVMTests.java hotspot_serviceability = \ sanity/ExecuteInternalVMTests.java hotspot_all = \ :hotspot_compiler \ :hotspot_gc \ :hotspot_runtime \ :hotspot_serviceability