Path: blob/master/test/functional/Java11andUp/playlist.xml
6000 views
<?xml version='1.0' encoding='UTF-8'?>1<!--2Copyright (c) 2018, 2021 IBM Corp. and others34This program and the accompanying materials are made available under5the terms of the Eclipse Public License 2.0 which accompanies this6distribution and is available at https://www.eclipse.org/legal/epl-2.0/7or the Apache License, Version 2.0 which accompanies this distribution and8is available at https://www.apache.org/licenses/LICENSE-2.0.910This Source Code may also be made available under the following11Secondary Licenses when the conditions for such availability set12forth in the Eclipse Public License, v. 2.0 are satisfied: GNU13General Public License, version 2 with the GNU Classpath14Exception [1] and GNU General Public License, version 2 with the15OpenJDK Assembly Exception [2].1617[1] https://www.gnu.org/software/classpath/license.html18[2] http://openjdk.java.net/legal/assembly-exception.html1920SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception21-->22<playlist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../TKG/playlist.xsd">23<test>24<testCaseName>String_CompactStrings</testCaseName>25<variations>26<variation>-XX:+CompactStrings</variation>27</variations>28<command>$(JAVA_COMMAND) $(JVM_OPTIONS) \29--add-opens=java.base/java.lang=ALL-UNNAMED \30-cp $(Q)$(RESOURCES_DIR)$(P)$(TESTNG)$(P)$(TEST_RESROOT)$(D)GeneralTest.jar$(Q) \31org.testng.TestNG -d $(REPORTDIR) $(Q)$(TEST_RESROOT)$(D)testng.xml$(Q) -testnames Test_String \32-groups $(TEST_GROUP) \33-excludegroups $(DEFAULT_EXCLUDE); \34$(TEST_STATUS)35</command>36<levels>37<level>sanity</level>38</levels>39<groups>40<group>functional</group>41</groups>42<versions>43<version>11+</version>44</versions>45<impls>46<impl>openj9</impl>47<impl>ibm</impl>48</impls>49</test>50<!--51The nestmate test specifically exercise the JIT$(SQ)s handling of unresolved virtual and interface private methods.52The JIT pibBuilder routines will have to handle virtual and interface private methods that are both JIT compiled and interpreted.53These private methods will have to be resolved at runtime and gets handled as a direct dispatch, instead of an indirect virtual/interface54dispatch. Hence, the need for -Xjit:rtResolve.5556Variation 1:57This variation tests the handling of nestmate private instance methods with the callee being interpreted.58The -Xjit option limits the compilation to just one method (the caller), which invokes only once an inner class$(SQ)s private method (the callee).59The callee is interpreted because it$(SQ)s only invoked once.6061Variation 2:62This variation tests the handling of nestmate private instance methods that is JIT compiled.63The -Xjit option limits the compilation to two methods: a caller (count=0) and a callee (count=100).64The callee is an nestmate private instance method. It$(SQ)s first invoked by the caller 1000 times in a loopy method. The low count=10065on the callee ensures that the callee can get JIT compiled early enough so that the last invocation of it jumps to a JIT$(SQ)ed body.6667Variation 3:68Similar to variation 1 except that the callee is an interface private method.6970Variation 4:71Similar to variation 2 except that the callee is an interface private method.72-->73<test>74<testCaseName>Nestmate_virtual_private</testCaseName>75<disables>76<disable>77<comment>https://github.com/eclipse-openj9/openj9/issues/9167</comment>78<platform>.*zos.*</platform>79</disable>80</disables>81<variations>82<variation>$(SQ)-Xjit:rtResolve,disableAsyncCompilation,limit={org/openj9/test/nestmates/NestmatesTest.testVirtualUnresolvedInterpreted*},{org/openj9/test/nestmates/NestmatesTest.testVirtualUnresolvedInterpreted*}(count=0)$(SQ)</variation>83<variation>$(SQ)-Xjit:rtResolve,disableAsyncCompilation,limit={org/openj9/test/nestmates/NestmatesTest.testVirtualUnresolvedJitted*,org/openj9/test/nestmates/NestmatesTest$InnerClass.innerPrivateMethod*},{org/openj9/test/nestmates/NestmatesTest.testVirtualUnresolvedInterpreted*}(count=0),{org/openj9/test/nestmates/NestmatesTest$InnerClass.innerPrivateMethod*}(count=100)$(SQ)</variation>84<variation>$(SQ)-Xjit:rtResolve,disableAsyncCompilation,limit={org/openj9/test/nestmates/NestmatesTest.testInterfaceUnresolvedInterpreted*},{org/openj9/test/nestmates/NestmatesTest.testInterfaceUnresolvedInterpreted*}(count=0)$(SQ)</variation>85<variation>$(SQ)-Xjit:rtResolve,disableAsyncCompilation,limit={org/openj9/test/nestmates/NestmatesTest.testInterfaceUnresolvedJitted*,org/openj9/test/nestmates/NestmatesTest$InnerInterface.innerInterfacePrivateMethod*},{org/openj9/test/nestmates/NestmatesTest.testInterfaceUnresolvedJitted*}(count=0),{org/openj9/test/nestmates/NestmatesTest$InnerInterface.innerInterfacePrivateMethod*}(count=100)$(SQ)</variation>86</variations>87<command>$(JAVA_COMMAND) $(JVM_OPTIONS) \88-cp $(Q)$(RESOURCES_DIR)$(P)$(TESTNG)$(P)$(TEST_RESROOT)$(D)GeneralTest.jar$(Q) \89org.testng.TestNG -d $(REPORTDIR) $(Q)$(TEST_RESROOT)$(D)testng.xml$(Q) -testnames NestmatesTest \90-groups $(TEST_GROUP) \91-excludegroups $(DEFAULT_EXCLUDE); \92$(TEST_STATUS)93</command>94<levels>95<level>sanity</level>96</levels>97<groups>98<group>functional</group>99</groups>100<versions>101<version>11+</version>102</versions>103<impls>104<impl>openj9</impl>105<impl>ibm</impl>106</impls>107</test>108<!--109Following test covers scenario for both type of constant dynamics (Object and Primitives)110Variation 1:111This variation runs tests in default mode.112Variation 2:113This variation runs test under -Xjit:count=1 option which makes sure that ConstantDynamic is resoleved before we compile a method114to test JIT$(SQ)s handling of resolved constant dynamic115Variation 3:116This variation runs test under -Xjit:count=0 option means JIT faces unresolved constant dynamic and it needs to resolve them before117using it.118Variation 4:119In addition to Variation 3 this test runs gc on resolving constant dynamic. This will test JIT to make sure it correctly prepares120GC map in code.121Variation 5:122This variation runs test under -XX:RecreateClassfileOnload option which means VM should first recreate an idential classfile with123classFileWriter and test with the recreated classfile. This should test if the classFileWriter is generating the correct classfile124output.125-->126<test>127<testCaseName>CondyPrimitive</testCaseName>128<variations>129<variation>NoOptions</variation>130<variation>$(SQ)-Xjit:count=1,disableAsyncCompilation,rtResolve$(SQ)</variation>131<variation>$(SQ)-Xjit:count=0,disableAsyncCompilation$(SQ)</variation>132<variation>$(SQ)-Xjit:count=0,disableAsyncCompilation,gcOnResolve$(SQ)</variation>133<variation>-XX:RecreateClassfileOnload</variation>134</variations>135<command>$(JAVA_COMMAND) $(JVM_OPTIONS) \136-cp $(Q)$(RESOURCES_DIR)$(P)$(TESTNG)$(P)$(TEST_RESROOT)$(D)GeneralTest.jar$(Q) \137org.testng.TestNG -d $(REPORTDIR) $(Q)$(TEST_RESROOT)$(D)testng.xml$(Q) -testnames PrimitiveCondyTest \138-groups $(TEST_GROUP) \139-excludegroups $(DEFAULT_EXCLUDE); \140$(TEST_STATUS)141</command>142<levels>143<level>sanity</level>144</levels>145<groups>146<group>functional</group>147</groups>148<versions>149<version>11+</version>150</versions>151<impls>152<impl>openj9</impl>153<impl>ibm</impl>154</impls>155</test>156<!--157Following test covers garbage collection of constant dynamics using several gc options.158Tests scenario for object, primitive and exception constant dynamics.159-->160<test>161<testCaseName>CondyGarbageCollection</testCaseName>162<variations>163<variation>NoOptions</variation>164<variation>-Xgcpolicy:optthruput</variation>165<variation>-Xgcpolicy:gencon</variation>166<variation>-Xgcpolicy:balanced</variation>167</variations>168<command>$(JAVA_COMMAND) $(JVM_OPTIONS) \169-cp $(Q)$(LIB_DIR)$(D)asm.jar$(P)$(RESOURCES_DIR)$(P)$(TESTNG)$(P)$(TEST_RESROOT)$(D)GeneralTest.jar$(Q) \170org.testng.TestNG -d $(REPORTDIR) $(Q)$(TEST_RESROOT)$(D)testng.xml$(Q) -testnames GarbageCollectionCondyTest \171-groups $(TEST_GROUP) \172-excludegroups $(DEFAULT_EXCLUDE); \173$(TEST_STATUS)174</command>175<levels>176<level>sanity</level>177</levels>178<groups>179<group>functional</group>180</groups>181<versions>182<version>11+</version>183</versions>184<impls>185<impl>openj9</impl>186<impl>ibm</impl>187</impls>188</test>189<!--190Following test covers metronome garbage collection tests on linux_x86.191Tests scenarios for object, primitive and exception constant dynamics.192-->193<test>194<testCaseName>CondyGarbageCollectionMetronomeLinux</testCaseName>195<variations>196<variation>-Xgcpolicy:metronome</variation>197</variations>198<command>$(JAVA_COMMAND) $(JVM_OPTIONS) \199-cp $(Q)$(LIB_DIR)$(D)asm.jar$(P)$(RESOURCES_DIR)$(P)$(TESTNG)$(P)$(TEST_RESROOT)$(D)GeneralTest.jar$(Q) \200org.testng.TestNG -d $(REPORTDIR) $(Q)$(TEST_RESROOT)$(D)testng.xml$(Q) -testnames GarbageCollectionCondyTest \201-groups $(TEST_GROUP) \202-excludegroups $(DEFAULT_EXCLUDE); \203$(TEST_STATUS)204</command>205<platformRequirements>os.linux,arch.x86</platformRequirements>206<levels>207<level>sanity</level>208</levels>209<groups>210<group>functional</group>211</groups>212<versions>213<version>11+</version>214</versions>215<impls>216<impl>openj9</impl>217<impl>ibm</impl>218</impls>219</test>220<!--221Following test covers metronome garbage collection tests on aix.222Tests scenarios for object, primitive and exception constant dynamics.223-->224<test>225<testCaseName>CondyGarbageCollectionMetronomeAIX</testCaseName>226<variations>227<variation>-Xgcpolicy:metronome</variation>228</variations>229<command>$(JAVA_COMMAND) $(JVM_OPTIONS) \230-cp $(Q)$(LIB_DIR)$(D)asm.jar$(P)$(RESOURCES_DIR)$(P)$(TESTNG)$(P)$(TEST_RESROOT)$(D)GeneralTest.jar$(Q) \231org.testng.TestNG -d $(REPORTDIR) $(Q)$(TEST_RESROOT)$(D)testng.xml$(Q) -testnames GarbageCollectionCondyTest \232-groups $(TEST_GROUP) \233-excludegroups $(DEFAULT_EXCLUDE); \234$(TEST_STATUS)235</command>236<platformRequirements>os.aix</platformRequirements>237<levels>238<level>sanity</level>239</levels>240<groups>241<group>functional</group>242</groups>243<versions>244<version>11+</version>245</versions>246<impls>247<impl>openj9</impl>248<impl>ibm</impl>249</impls>250</test>251<test>252<testCaseName>NestAttributeTest</testCaseName>253<command>$(JAVA_COMMAND) $(JVM_OPTIONS) \254-cp $(Q)$(LIB_DIR)$(D)asm-all.jar$(P)$(RESOURCES_DIR)$(P)$(TESTNG)$(P)$(TEST_RESROOT)$(D)GeneralTest.jar$(Q) \255org.testng.TestNG -d $(REPORTDIR) $(Q)$(TEST_RESROOT)$(D)testng.xml$(Q) -testnames NestAttributeTest \256-groups $(TEST_GROUP) \257-excludegroups $(DEFAULT_EXCLUDE); \258$(TEST_STATUS)</command>259<levels>260<level>sanity</level>261</levels>262<groups>263<group>functional</group>264</groups>265<versions>266<version>11+</version>267</versions>268<impls>269<impl>openj9</impl>270<impl>ibm</impl>271</impls>272</test>273<test>274<testCaseName>JCL_TEST_Java-Lang-Invoke</testCaseName>275<command>$(JAVA_COMMAND) $(JVM_OPTIONS) \276-cp $(Q)$(RESOURCES_DIR)$(P)$(TESTNG)$(P)$(TEST_RESROOT)$(D)GeneralTest.jar$(Q) \277org.testng.TestNG -d $(REPORTDIR) $(Q)$(TEST_RESROOT)$(D)testng.xml$(Q) \278-testnames JCL_TEST_Java-Lang-Invoke \279-groups $(TEST_GROUP) \280-excludegroups $(DEFAULT_EXCLUDE); \281$(TEST_STATUS)282</command>283<levels>284<level>extended</level>285</levels>286<groups>287<group>functional</group>288</groups>289<versions>290<version>11+</version>291</versions>292<impls>293<impl>openj9</impl>294<impl>ibm</impl>295</impls>296</test>297</playlist>298299300