--- old/make/test/JtregNativeHotspot.gmk 2018-05-21 10:49:48.049497344 -0700 +++ new/make/test/JtregNativeHotspot.gmk 2018-05-21 10:49:47.961497342 -0700 @@ -74,6 +74,11 @@ -I$(VM_TESTBASE_DIR)/nsk/share/native \ -I$(VM_TESTBASE_DIR)/nsk/share/jni +RUNTIME_DEFMETH_INCLUDES := \ + -I$(TOPDIR)/test/hotspot/jtreg/vmTestbase/nsk/share/jni \ + -I$(TOPDIR)/test/hotspot/jtreg/vmTestbase/nsk/share/native \ + -I$(TOPDIR)/test/hotspot/jtreg/vmTestbase/nsk/share/jvmti + NSK_SHARE_LOCKS_INCLUDES := \ -I$(VM_TESTBASE_DIR)/nsk/share/native \ -I$(VM_TESTBASE_DIR)/nsk/share/locks @@ -109,13 +114,6 @@ -I$(VM_TESTBASE_DIR)/nsk/share/native \ -I$(VM_TESTBASE_DIR)/nsk/share/jni -NSK_STRACE_INCLUDES := \ - -I$(VM_TESTBASE_DIR)/nsk/share/native \ - -I$(VM_TESTBASE_DIR)/nsk/share/jni - -NSK_STRESS_JNI_INCLUDES := \ - -I$(VM_TESTBASE_DIR)/nsk/stress/jni - BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libProcessUtils := $(VM_SHARE_INCLUDES) BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libThreadController := $(NSK_MONITORING_INCLUDES) @@ -124,6 +122,8 @@ BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libLockingThreads := $(NSK_MONITORING_INCLUDES) BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libStackTraceController := $(NSK_MONITORING_INCLUDES) +BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libredefineClasses := $(RUNTIME_DEFMETH_INCLUDES) + BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libforceEarlyReturn005a := $(NSK_JDI_INCLUDES) BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libMonitorEnterExecutor := $(NSK_SHARE_JDI_INCLUDES) @@ -157,20 +157,6 @@ BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libJNIRefLocker := $(NSK_GC_LOCK_REF_INCLUDES) BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libJNIWeakGlobalRefLocker := $(NSK_GC_LOCK_REF_INCLUDES) - -BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libstrace003 := $(NSK_STRACE_INCLUDES) -BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libstrace004 := $(NSK_STRACE_INCLUDES) -BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libstrace005 := $(NSK_STRACE_INCLUDES) -BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libstrace006 := $(NSK_STRACE_INCLUDES) -BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libstrace008 := $(NSK_STRACE_INCLUDES) -BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libstrace009 := $(NSK_STRACE_INCLUDES) -BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libstrace011 := $(NSK_STRACE_INCLUDES) -BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libstrace012 := $(NSK_STRACE_INCLUDES) -BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libstrace014 := $(NSK_STRACE_INCLUDES) -BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libstrace015 := $(NSK_STRACE_INCLUDES) - -BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libgcl001 := $(NSK_STRESS_JNI_INCLUDES) - ################################################################################ # Platform specific setup @@ -183,6 +169,7 @@ BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_libtest-rwx := -z execstack BUILD_HOTSPOT_JTREG_LIBRARIES_LIBS_libstepBreakPopReturn := -lpthread BUILD_HOTSPOT_JTREG_LIBRARIES_LIBS_libIndyRedefineClass := -lpthread + BUILD_HOTSPOT_JTREG_LIBRARIES_LIBS_libredefineClasses := -lpthread BUILD_HOTSPOT_JTREG_EXECUTABLES_LIBS_exeinvoke := -ljvm -lpthread BUILD_HOTSPOT_JTREG_EXECUTABLES_LIBS_exestack-gap := -ljvm -lpthread BUILD_TEST_exeinvoke_exeinvoke.c_OPTIMIZATION := NONE --- old/test/hotspot/jtreg/TEST.groups 2018-05-21 10:49:48.365497352 -0700 +++ new/test/hotspot/jtreg/TEST.groups 2018-05-21 10:49:48.277497350 -0700 @@ -588,6 +588,12 @@ vmTestbase/nsk/monitoring/ThreadMXBean/GetThreadAllocatedBytes/noAllocationTest_proxy_default/TestDescription.java \ vmTestbase/nsk/monitoring/ThreadMXBean/GetThreadAllocatedBytes/noAllocationTest_proxy_custom/TestDescription.java + +# Tests for default method implementation + vmTestbase_vm_defmeth = \ + vmTestbase/vm/runtime/defmeth + + # JDI tests vmTestbase_nsk_jdi = \ vmTestbase/nsk/jdi @@ -1157,9 +1163,6 @@ vmTestbase/nsk/jdi/StackFrame/getArgumentValues/getArgumentValues002/getArgumentValues002.java \ vmTestbase/nsk/jdi/StackFrame/getArgumentValues/getArgumentValues003/getArgumentValues003.java -vmTestbase_nsk_stress = \ - vmTestbase/nsk/stress - vmTestbase_vm_g1classunloading = \ vmTestbase/gc/g1/unloading/tests @@ -1267,3 +1270,4 @@ vmTestbase/heapdump/OnOOMToPath/TestDescription.java \ vmTestbase/heapdump/JMapHeapCore/TestDescription.java \ vmTestbase/heapdump/JMapMetaspace/TestDescription.java + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/AccessibilityFlagsTest.java 2018-05-21 10:49:48.593497358 -0700 @@ -0,0 +1,408 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth; + +import nsk.share.test.TestBase; +import static jdk.internal.org.objectweb.asm.Opcodes.*; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.data.*; +import vm.runtime.defmeth.shared.data.method.body.EmptyBody; +import vm.runtime.defmeth.shared.builder.TestBuilder; + +/* + * Test allowed combinations of access flags on methods in interfaces. + * Based on assertions from JVMS8. + */ +public class AccessibilityFlagsTest extends DefMethTest { + public static void main(String[] args) { + TestBase.runTest(new AccessibilityFlagsTest(), args); + } + + /* ====================================================================== */ + + // Methods of interfaces may set any of the flags in Table 4.5 except + // ACC_PROTECTED, ACC_FINAL, ACC_NATIVE, and ACC_SYNCHRONIZED (9.4); + + /** + * interface I { protected void m(); } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + */ + public void testProtectedMethodAbstract() { + expectClassFormatError( + createAbstractMethodInterface(ACC_PROTECTED)); + + expectClassFormatError( + createAbstractMethodInterface(ACC_PROTECTED | ACC_PUBLIC)); + + expectClassFormatError( + createAbstractMethodInterface(ACC_PROTECTED | ACC_PRIVATE)); + + } + + /** + * interface I { protected void m() default {}; } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + */ + public void testProtectedMethodDefault() { + expectClassFormatError( + createDefaultMethodInterface(ACC_PROTECTED)); + + expectClassFormatError( + createDefaultMethodInterface(ACC_PROTECTED | ACC_PUBLIC)); + + expectClassFormatError( + createDefaultMethodInterface(ACC_PROTECTED | ACC_PRIVATE)); + } + + /** + * interface I { final void m() default {}; } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + */ + public void testFinalMethodDefault() { + expectClassFormatError( + createDefaultMethodInterface(ACC_FINAL)); + + expectClassFormatError( + createDefaultMethodInterface(ACC_FINAL | ACC_PUBLIC)); + + expectClassFormatError( + createDefaultMethodInterface(ACC_FINAL | ACC_PRIVATE)); + } + + /** + * interface I { native void m() default {}; } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + */ + public void testNativeMethodDefault() { + expectClassFormatError( + createDefaultMethodInterface(ACC_NATIVE)); + + expectClassFormatError( + createDefaultMethodInterface(ACC_NATIVE | ACC_PUBLIC)); + + expectClassFormatError( + createDefaultMethodInterface(ACC_NATIVE | ACC_PRIVATE)); + } + + + /** + * interface I { synchronized void m(); } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + */ + public void testSynchronizedMethodAbstract() { + expectClassFormatError( + createAbstractMethodInterface(ACC_SYNCHRONIZED)); + + expectClassFormatError( + createAbstractMethodInterface(ACC_SYNCHRONIZED | ACC_PUBLIC)); + + expectClassFormatError( + createAbstractMethodInterface(ACC_SYNCHRONIZED | ACC_PRIVATE)); + } + + /** + * interface I { synchronized void m() default {}; } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + */ + public void testSynchronizedMethodDefault() { + expectClassFormatError( + createDefaultMethodInterface(ACC_SYNCHRONIZED)); + + expectClassFormatError( + createDefaultMethodInterface(ACC_SYNCHRONIZED | ACC_PUBLIC)); + + expectClassFormatError( + createDefaultMethodInterface(ACC_SYNCHRONIZED | ACC_PRIVATE)); + } + + /* ===================================================================== */ + + // [methods of interfaces] must have exactly one of the ACC_PUBLIC or ACC_PRIVATE flags set. + + /** + * interface I { private void m() default {}; } + * + * TEST: ClassLoader.loadClass("I") == succeeds + */ + public void testPrivateMethodDefault() { + loadClass( + createDefaultMethodInterface(ACC_PRIVATE)); + } + + /** + * interface I { public void m(); } + * + * TEST: ClassLoader.loadClass("I") == succeeds + */ + public void testPublicMethodAbstract() { + loadClass( + createAbstractMethodInterface(ACC_PUBLIC)); + } + + /** + * interface I { public void m() default {}; } + * + */ + public void testPublicMethodDefault() { + loadClass( + createDefaultMethodInterface(ACC_PUBLIC)); + } + + /** + * interface I { private public void m(); } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + */ + public void testPrivatePublicMethodAbstract() { + expectClassFormatError( + createAbstractMethodInterface(ACC_PUBLIC | ACC_PRIVATE)); + } + + /** + * interface I { private public void m() default {}; } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + */ + public void testPrivatePublicMethodDefault() { + expectClassFormatError( + createDefaultMethodInterface(ACC_PUBLIC | ACC_PRIVATE)); + } + + /* ===================================================================== */ + + // Methods of classes may set any of the flags in Table 4.5 except + // ACC_PROTECTED, ACC_FINAL, ACC_NATIVE, and ACC_SYNCHRONIZED (9.4); + // they must have exactly one of the ACC_PUBLIC or ACC_PRIVATE flags set. + // + // The following flags are allowed: + // ACC_PUBLIC 0x0001 Declared public; may be accessed from outside its package. + // ACC_PRIVATE 0x0002 Declared private; accessible only within the defining class. + // ACC_STATIC 0x0008 Declared static. + // ACC_BRIDGE 0x0040 A bridge method, generated by the compiler. + // ACC_VARARGS 0x0080 Declared with variable number of arguments. + // ACC_STRICT 0x0800 Declared strictfp; floating-point mode is FP-strict. + // ACC_SYNTHETIC 0x1000 Declared synthetic; not present in the source code. + + /** + * interface I { static void m() default {}; } + * + * TEST: ClassLoader.loadClass("I") == succeeds + */ + public void testStaticMethodDefault() { + loadClass( + createDefaultMethodInterface(ACC_STATIC | ACC_PUBLIC)); + loadClass( + createDefaultMethodInterface(ACC_STATIC | ACC_PRIVATE)); + } + + /** + * interface I { strictfp void m() default {}; } + * + * TEST: ClassLoader.loadClass("I") == succeeds + */ + public void testStrictFPMethodDefault() { + loadClass( + createDefaultMethodInterface(ACC_STRICT | ACC_PUBLIC)); + loadClass( + createDefaultMethodInterface(ACC_STRICT | ACC_PRIVATE)); + } + + /* =============================================================================== */ + + // If a specific method of a class or interface has its ACC_ABSTRACT flag set, + // it must not have any of its ACC_FINAL, ACC_NATIVE, ACC_PRIVATE, ACC_STATIC, ACC_STRICT, + // or ACC_SYNCHRONIZED flags set (8.4.3.1, 8.4.3.3, 8.4.3.4). + + /** + * interface I { final void m(); } + * abstract class C { abstract final void m(); } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + * TEST: ClassLoader.loadClass("C") ==> ClassFormatError + */ + public void testFinalMethodAbstract() { + /* interface I */ + expectClassFormatError( + createAbstractMethodInterface(ACC_FINAL)); + + expectClassFormatError( + createAbstractMethodInterface(ACC_FINAL | ACC_PUBLIC)); + + /* abstract class C */ + expectClassFormatError( + createAbstractMethodClass(ACC_FINAL)); + } + + /** + * interface I { native void m(); } + * interface K { native void m() default {}; } + * abstract class C { abstract native m(); } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + * TEST: ClassLoader.loadClass("K") ==> ClassFormatError + * TEST: ClassLoader.loadClass("C") ==> ClassFormatError + */ + public void testNativeMethodAbstract() { + /* interface I */ + expectClassFormatError( + createDefaultMethodInterface(ACC_NATIVE)); + + expectClassFormatError( + createDefaultMethodInterface(ACC_NATIVE | ACC_PUBLIC)); + + /* interface K */ + expectClassFormatError( + createAbstractMethodInterface(ACC_NATIVE)); + + expectClassFormatError( + createAbstractMethodInterface(ACC_NATIVE | ACC_PUBLIC)); + + /* abstract class C */ + expectClassFormatError( + createAbstractMethodClass(ACC_NATIVE)); + } + + /** + * interface I { private void m(); } + * abstract class C { abstract private void m(); } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + * TEST: ClassLoader.loadClass("C") ==> ClassFormatError + */ + public void testPrivateMethodAbstract() { + /* interface I */ + expectClassFormatError( + createAbstractMethodInterface(ACC_PRIVATE)); + + /* abstract class C */ + expectClassFormatError( + createAbstractMethodClass(ACC_PRIVATE)); + } + + /** + * interface I { static void m(); } + * abstract class C { abstract static void m(); } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + * TEST: ClassLoader.loadClass("C") ==> ClassFormatError + */ + public void testStaticMethodAbstract() { + /* interface I */ + expectClassFormatError( + createAbstractMethodInterface(ACC_STATIC)); + + expectClassFormatError( + createAbstractMethodInterface(ACC_STATIC | ACC_PUBLIC)); + + /* abstract class C */ + expectClassFormatError( + createAbstractMethodClass(ACC_STATIC)); + } + + /** + * interface I { strictfp void m(); } + * abstract class C { abstract strictfp void m(); } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + * TEST: ClassLoader.loadClass("C") ==> ClassFormatError + */ + public void testStrictFPMethodAbstract() { + /* interface I */ + expectClassFormatError( + createAbstractMethodInterface(ACC_STRICT)); + + expectClassFormatError( + createAbstractMethodInterface(ACC_STRICT | ACC_PUBLIC)); + + /* abstract class C */ + expectClassFormatError( + createAbstractMethodClass(ACC_STRICT)); + } + + /* =============================================================================== */ + + /** + * interface I { abstract void m() default {}; } + * + * TEST: ClassLoader.loadClass("I") ==> ClassFormatError + */ + public void testAbstractMethodDefault() { + expectClassFormatError( + createDefaultMethodInterface(ACC_ABSTRACT)); + } + + /* ====================================================================== */ + + // Helper methods + private Interface createAbstractMethodInterface(int acc) { + return factory.getBuilder() + .intf("I") + .abstractMethod("m", "()V").flags(acc) + .build() + .build(); + } + + private Clazz createAbstractMethodClass(int acc) { + return factory.getBuilder() + .clazz("I") + .abstractMethod("m", "()V").flags(acc) + .build() + .build(); + } + + private Interface createDefaultMethodInterface(int acc) { + return factory.getBuilder() + .intf("I") + .defaultMethod("m", "()V").flags(acc) + .body(new EmptyBody()) + .build() + .build(); + } + + private void expectException(Clazz clz, Class exc) { + TestBuilder b = factory.getBuilder() + .register(clz); + + b.test().loadClass(clz).throws_(exc).done() + .run(); + } + + private void loadClass(Clazz clz) { + TestBuilder b = factory.getBuilder() + .register(clz); + + b.test().loadClass(clz).ignoreResult().done() + .run(); + } + + private void expectClassFormatError(Clazz clz) { + expectException(clz, ClassFormatError.class); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/BasicTest.java 2018-05-21 10:49:48.873497365 -0700 @@ -0,0 +1,381 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth; + +import nsk.share.TestFailure; +import nsk.share.test.TestBase; +import vm.runtime.defmeth.shared.MemoryClassLoader; +import vm.runtime.defmeth.shared.annotation.KnownFailure; +import vm.runtime.defmeth.shared.annotation.NotApplicableFor; +import vm.runtime.defmeth.shared.builder.TestBuilder; +import vm.runtime.defmeth.shared.data.*; +import static jdk.internal.org.objectweb.asm.Opcodes.*; +import vm.runtime.defmeth.shared.DefMethTest; + +import java.util.Map; + +import static vm.runtime.defmeth.shared.ExecutionMode.*; + +/** + * Basic tests on some of the assertions from JVMS. + */ +public class BasicTest extends DefMethTest { + + public static void main(String[] args) { + TestBase.runTest(new BasicTest(), args); + } + + /* + * JVMS 6.5 invokevirtual + * + * ... + * + * Runtime Exceptions + * + * Otherwise, if the resolved method is not signature polymorphic: + * + */ + + /* + * ... + * + * If the resolved method is declared in an interface and the class of + * objectref does not implement the resolved interface, invokevirtual throws + * an IncompatibleClassChangeError. + */ + @KnownFailure(modes = { + REFLECTION, // throws IAE + INVOKE_GENERIC, INVOKE_WITH_ARGS}) // throws ClassCastException + public void testInterfaceNotImplemented() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()V").emptyBody().build() + .build(); + + ConcreteClass C = b.clazz("C").build(); + + Class expectedClass; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedClass = IllegalArgumentException.class; + } else if (factory.getExecutionMode().equals("INVOKE_WITH_ARGS")) { + // Notes from JDK-8029926 which details reasons behind CCE. + // The code below demonstrates the use of a MethodHandle + // of kind REF_invokeInterface pointing to method I.m. + // Because 'invoke' is called, this MethodHandle is effectively + // wrapped in the type adaptations necessary to accept a C + // as the first argument. ***Before we even get to the point + // of the invokeinterface call to I.m***, the adaptation + // code must run, and that is where the ClassCastException occurs. + // This exception can be thrown from code that is cleanly + // compiled and does no bytecode generation, so an ICCE would + // be inappropriate since no classes are changed. + expectedClass = ClassCastException.class; + } else { + expectedClass = IncompatibleClassChangeError.class; + } + + b.test().callSite(I, C, "m", "()V").throws_(expectedClass).done() + + .run(); + } + + /* + * ... + * + * Otherwise, if no method matching the resolved name and descriptor is + * selected, invokevirtual throws an NoSuchMethodError. + * + * ... + */ + @KnownFailure(modes = { + DIRECT, REFLECTION, INVOKE_WITH_ARGS, // NSME, instead of AME + INVOKE_EXACT, INVOKE_GENERIC, INDY}) // IncompatibleClassChangeError, instead of AME + public void testNoMatch() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "(Ljava/lang/Object;)V").emptyBody().build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().callSite(C, C, "m", "()I").throws_(NoSuchMethodError.class).done() + .test().callSite(C, C, "m1", "()V").throws_(NoSuchMethodError.class).done() + .test().callSite(C, C, "m", "(I)V").throws_(NoSuchMethodError.class).done() + + .run(); + } + + /* + * ... + * + * 8025604: Updated specification text for both 5.4.3.3 and 5.4.4.4 + * "Otherwise, if any superinterface of C declares a method with the name and + * descriptor specified by the method reference that has set neither + * its ACC_PRIVATE flag nor its ACC_STATIC flag, one of these is arbitrarily + * chosen and method lookup succeeds." + * If method lookup fails, method resolution throws a NoSuchMethodError + * + * ... + */ + public void testNonPublic() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m1", "()V").private_().emptyBody().build() + .defaultMethod("m2", "()I").private_().returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().callSite(C, C, "m1", "()V").throws_(NoSuchMethodError.class).done() + .test().callSite(C, C, "m2", "()I").throws_(NoSuchMethodError.class).done() + + .run(); + } + + /* + * Default method override w/ non-public concrete method + * + * interface I { void m() default {} } + * class C implements I { + * [private/package-private/protected] + * void m() {} + * } + * + */ + @KnownFailure(modes = {INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY}) // NPE, instead of IAE + public void testNonPublicOverride() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m","()V").emptyBody().build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .concreteMethod("m", "()V").private_().emptyBody().build() + .build(); + + ConcreteClass D = b.clazz("D").implement(I) + .concreteMethod("m", "()V").protected_().emptyBody().build() + .build(); + + ConcreteClass E = b.clazz("E").implement(I) + .concreteMethod("m", "()V").package_private().emptyBody().build() + .build(); + + b.test().callSite(I, C, "m", "()V").throws_(IllegalAccessError.class).done() + .test().callSite(I, D, "m", "()V").throws_(IllegalAccessError.class).done() + .test().callSite(I, E, "m", "()V").throws_(IllegalAccessError.class).done() + + .run(); + } + + + /** + * interface I { + * static { throw new RE()} + * public default void m() {} + * } + * + * class C implements I {} + * + * TEST: C c = new C(); ==> LinkageError + * Static initialization of class C will trigger + * I's static initialization due to I's default method. + */ + public void testStaticInit() throws ClassNotFoundException { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("", "()V") + .flags(ACC_STATIC) + .throw_(RuntimeException.class) + .build() + + .defaultMethod("m", "()V") + .emptyBody().build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().callSite(I, C, "m", "()V").throws_(LinkageError.class).done() + + .run(); + } + + /** + * interface I { + * static { throw new RE()} + * private default void m() {} + * } + * + * class C implements I {} + * + * TEST: C c = new C(); ==> LinkageError + * Static initialization of class C will trigger + * I's static initialization due to I's private concrete method. + */ + public void testStaticInitPrivate() throws ClassNotFoundException { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("", "()V") + .flags(ACC_STATIC) + .throw_(RuntimeException.class) + .build() + + .defaultMethod("m", "()V") + .flags(ACC_PRIVATE) + .emptyBody().build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + Class expectedClass; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedClass = NoSuchMethodException.class; + } else { + expectedClass = LinkageError.class; + } + b.test().callSite(I, C, "m", "()V").throws_(expectedClass).done() + + .run(); + } + + /** + * interface I { + * static { throw new RE()} + * } + * interface J { + * public default int m() { return 1} + * + * class C implements I,J {} + * + * TEST: C c = new C() + * c.m() returns 1 + * Static initialization of class C will not trigger + * I's static initialization since I has no concrete methods. + */ + public void testNotStaticInitNoDefault() throws ClassNotFoundException { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("", "()V") + .flags(ACC_STATIC) + .throw_(RuntimeException.class) + .build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I") + .returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I,J).build(); + + b.test().callSite(C, C, "m", "()I").returns(1).done() + + .run(); + } + + /* + * Example A.10 + * + * Let L1 and L2 be class loaders with different interpretations of the type "A". + * + * Loaded by L1: + * public interface I { public default A m() { return null; } } + * + * Loaded by L2: + * public class C implements I {} + * + * TEST: I o = new C(); o.m() ==> LinkageError; + * TEST: C o = new C(); o.m() ==> LinkageError; + */ + // disabling this test for REFLECTION and INVOKE for now until + // loader constraint issue associated with those modes has been resolved + @NotApplicableFor(modes = { REFLECTION, INVOKE_WITH_ARGS, INVOKE_EXACT, INVOKE_GENERIC, INDY }) + public void testLoaderConstraint() throws Exception{ + TestBuilder b = factory.getBuilder(); + + ConcreteClass A = b.clazz("A").build(); + + Interface I = b.intf("I") + .defaultMethod("m", "()LA;").returnsNewInstance(A).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().callSite(I, C, "m", "()LA;").throws_(LinkageError.class).done() + .test().callSite(C, C, "m", "()LA;").throws_(LinkageError.class).done() + + .prepare(new TestBuilder.LoaderConstructor() { + @Override + public MemoryClassLoader construct(Map classFiles) { + final byte[] cfI = classFiles.get("I"); + final byte[] cfC = classFiles.get("C"); + final byte[] cfA = classFiles.get("A"); + final byte[] cfT1 = classFiles.get("Test1_I_C_m"); + final byte[] cfT2 = classFiles.get("Test2_C_C_m"); + + final ClassLoader l1 = new ClassLoader() { + @Override + protected Class findClass(String name) throws ClassNotFoundException { + switch (name) { + case "I": + return defineClass(name, cfI, 0, cfI.length); + case "A": + return defineClass(name, cfA, 0, cfA.length); + default: + throw new ClassNotFoundException(name); + } + } + }; + + final MemoryClassLoader l2 = new MemoryClassLoader(classFiles) { + @Override + public Class loadClass(String name, boolean resolve) throws ClassNotFoundException { + if ("I".equals(name)) { + return l1.loadClass(name); + } else { + return super.loadClass(name, resolve); + } + } + }; + + try { + // Need to preload classes, otherwise A will be resolved in the same loader + l1.loadClass("A"); l1.loadClass("I"); + l2.loadClass("A"); l2.loadClass("C"); + } catch (ClassNotFoundException e) { + throw new TestFailure(e); + } + + return l2; + } + }).run(); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/ConflictingDefaultsTest.java 2018-05-21 10:49:49.149497372 -0700 @@ -0,0 +1,590 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth; + +import nsk.share.test.TestBase; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.annotation.KnownFailure; +import vm.runtime.defmeth.shared.annotation.NotApplicableFor; +import vm.runtime.defmeth.shared.data.*; +import static vm.runtime.defmeth.shared.data.method.body.CallMethod.Invoke.*; +import static vm.runtime.defmeth.shared.data.method.body.CallMethod.IndexbyteOp.*; +import vm.runtime.defmeth.shared.builder.TestBuilder; +import static vm.runtime.defmeth.shared.ExecutionMode.*; + +/** + * Tests on conflicting defaults. + * + * It is allowable to inherit a default through multiple paths (such as + * through a diamond-shaped interface hierarchy), but the resolution procedure + * is looking for a unique, most specific default-providing interface. + * + * If one default shadows another (where a subinterface provides a different + * default for an extension method declared in a superinterface), then the less + * specific interface is pruned from consideration no matter where it appears + * in the inheritance hierarchy. If two or more extended interfaces provide + * default implementations, and one is not a superinterface of the other, then + * neither is used and a linkage exception is thrown indicating conflicting + * default implementations. + */ +public class ConflictingDefaultsTest extends DefMethTest { + public static void main(String[] args) { + TestBase.runTest(new ConflictingDefaultsTest(), args); + } + + /* + * Conflict + * + * interface I { int m() default { return 1; } } + * interface J { int m() default { return 2; } } + * class C implements I, J {} + * + * TEST: C c = new C(); c.m() ==> ICCE + */ + public void testConflict() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I,J).build(); + + b.test().callSite(C, C, "m","()I") + .throws_(IncompatibleClassChangeError.class) + .done() + + .run(); + } + + /* + * Maximally-specific Default (0.6.3 spec change) + * + * interface I { int m(); } + * interface J { int m() default { return 2; } } + * class C implements I, J {} + * + * TEST: C c = new C(); c.m() return 2 + */ + public void testMaximallySpecificDefault() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .abstractMethod("m", "()I").build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I,J).build(); + + b.test().callSite(C, C, "m","()I") + .returns(2) + .done() + + .run(); + } + + /* + * Reabstract + * + * interface I { int m() default { return 1; } } + * interface J extends I { int m(); } + * class C implements J {} + * + * TEST: C c = new C(); c.m() ==> AME + */ + public void testReabstract() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + b.test().callSite(C, C, "m","()I") + .throws_(AbstractMethodError.class) + .done() + + .run(); + } + + /* + * Reabstract2 + * + * interface I { int m() default { return 1; } } + * interface J extends I { int m(); } + * class C implements J {} + * class D extends C { callSuper C.m} + * + * TEST: C c = new C(); c.m() ==> AME + * TEST: J j = new C(); j.m() ==> AME + * TEST: I i = new C(); i.m() ==> AME + * TEST: D d = new D(); d.m() ==> callSuper C.m ==> AME + */ + public void testReabstract2() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + ConcreteClass D = b.clazz("D").extend(C) + .concreteMethod("m", "()I").callSuper(C, "m", "()I").build() + .build(); + + b.test().callSite(C, C, "m","()I") + .throws_(AbstractMethodError.class) + .done() + .test().callSite(J, C, "m","()I") + .throws_(AbstractMethodError.class) + .done() + .test().callSite(I, C, "m","()I") + .throws_(AbstractMethodError.class) + .done() + .test().callSite(D, D, "m","()I") + .throws_(AbstractMethodError.class) + .done() + + .run(); + } + + /* + * ReabstractConflictingDefaults + * + * interface I { int m() default { return 1; } } + * interface J { int m() default { return 2; } } + * interface K extends I,J { int m(); } + * class A implements I,J {} + * class C extends A implements K {} + * + * TEST: A c = new C(); c.m() ==> AME + */ + public void testReabstractConflictingDefaults() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + Interface K = b.intf("K").extend(I,J) + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass A = b.clazz("A").implement(I,J).build(); + ConcreteClass C = b.clazz("C").extend(A).implement(K).build(); + + b.test().callSite(A, C, "m","()I") + .throws_(AbstractMethodError.class) + .done() + + .run(); + } + + + /* + * ReabstractConflictingDefaultsInvokeInterface + * + * interface I { int m() default { return 1; } } + * interface J { int m() default { return 2; } } + * interface K extends I,J { int m(); } + * interface L extends K { } + * class A implements I,J {} + * class C extends A implements K {} + * class D extends C implements L {} + * + * TEST: I i = new A(); i.m() ==> ICCE + * TEST: K k = new C(); k.m() ==> AME + * TEST: L l = new D(); l.m() ==> AME + */ + public void testReabstractConflictingDefaultsInvokeInterface() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + Interface K = b.intf("K").extend(I,J) + .abstractMethod("m", "()I").build() + .build(); + + Interface L = b.intf("L").extend(K) + .build(); + + ConcreteClass A = b.clazz("A").implement(I,J).build(); + ConcreteClass C = b.clazz("C").extend(A).implement(K).build(); + ConcreteClass D = b.clazz("D").extend(C).implement(L).build(); + + b.test().callSite(I, A, "m","()I") + .throws_(IncompatibleClassChangeError.class) + .done() + .test().callSite(K, C, "m","()I") + .throws_(AbstractMethodError.class) + .done() + .test().callSite(L, D, "m","()I") + .throws_(AbstractMethodError.class) + .done() + + .run(); + } + + /* + * ReabstractConflictingDefaultsSuper + * + * interface I { int m() default { return 1; } } + * interface J { int m() default { return 2; } } + * interface K extends I,J { int m(); } + * interface L extends K { } + * class A implements I,J {} + * class C extends A implements K {} + * class D extends C implements L {int m() {callSuper A.m } + * + * TEST: I i = new A(); i.m() ==> ICCE + * TEST: K k = new C(); CallSuper k.m() ==> AME + * TEST: L l = new D(); l.m() ==> AME + */ + public void testReabstractConflictingDefaultsSuper() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + Interface K = b.intf("K").extend(I,J) + .abstractMethod("m", "()I").build() + .build(); + + Interface L = b.intf("L").extend(K) + .build(); + + ConcreteClass A = b.clazz("A").implement(I,J).build(); + ConcreteClass C = b.clazz("C").extend(A).implement(K).build(); + ConcreteClass D = b.clazz("D").extend(C).implement(L) + .concreteMethod("m", "()I").callSuper(A, "m", "()I").build() + .build(); + + b.test().callSite(I, A, "m","()I") + .throws_(IncompatibleClassChangeError.class) + .done() + .test().callSite(L, D, "m","()I") + .throws_(AbstractMethodError.class) + .done() + + .run(); + } + + /* + * testReabstractResolveMethod00705m2 + * + * Test case for JDK-8027804: JCK resolveMethod test fails expecting AME + * + * This test is an extension of the JCK test resolveMethod00705m2 + * with additional invoke* bytecodes specified for testing purposes. + * + * interface I { int m() default { return 1; } } + * interface J implements I { int m(); } + * class A implements J,I {} + * class C extends A {} + * + * TEST: A a = new C(); a.m() ==> AME (invokevirtual) + * C c = new C(); c.m() ==> AME (invokevirtual) + * J j = new C(); j.m() ==> AME (invokeinterface) + * I i = new C(); i.m() ==> AME (invokeinterface) + * c.test_Cmethod_ISMR(); c.super.m() ==> AME (invokespecial MR) + * a.test_Amethod_ISIMR(); j.super.m() ==> AME (invokespecial IMR) + * + * For ver > 49, error will be AME + * For ver = 49, error will be VE + */ + + @NotApplicableFor(modes = { REDEFINITION }) // Can't redefine a class that gets error during loading + public void testReabstractResolveMethod00705m2() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass A = b.clazz("A").implement(J,I) + .concreteMethod("test_Amethod_ISIMR", "()V") + .invoke(SPECIAL, b.clazzByName("J"), b.clazzByName("A"), + "m", "()I", INTERFACEMETHODREF) + .build() + .build(); + + ConcreteClass C = b.clazz("C").extend(A) + .concreteMethod("test_Cmethod_ISMR", "()V") + .invoke(SPECIAL, b.clazzByName("C"), b.clazzByName("C"), + "m", "()I", CALLSITE) + .build() + .build(); + + Class expectedError1, expectedError2; + if (factory.getVer() >=52) { + expectedError1 = expectedError2 = AbstractMethodError.class; + } else { + expectedError1 = expectedError2 = VerifyError.class; + } + + b.test().callSite(A, C, "m", "()I") + .throws_(expectedError2) + .done() + .test().callSite(C, C, "m", "()I") + .throws_(expectedError2) + .done() + .test().callSite(J, C, "m", "()I") + .throws_(expectedError1) + .done() + .test().callSite(I, C, "m", "()I") + .throws_(expectedError1) + .done() + .test().callSite(C, C, "test_Cmethod_ISMR", "()V") + .throws_(expectedError2) + .done() + .test().callSite(A, C, "test_Amethod_ISIMR", "()V") + .throws_(expectedError2) + .done() + + .run(); + } + + /* + * Shadow + * + * interface I { int m() default { return 1; } } + * interface J extends I { int m() default { return 2; } } + * class C implements J {} + * + * TEST: [I|J|C] c = new C(); c.m() == 2; + */ + public void testShadow() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + b.test().callSite(I, C, "m","()I") + .returns(2) + .done() + .test() + .callSite(J, C, "m","()I") + .returns(2) + .done() + .test() + .callSite(C, C, "m","()I") + .returns(2) + .done() + + .run(); + } + + /* + * Disqualified + * + * interface I { int m() default { return 1; } } + * interface J extends I { int m() default { return 2; } } + * class C implements I, J {} + * + * TEST: [I|J|C] c = new C(); c.m() == 2; + */ + public void testDisqualified() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I,J).build(); + + b.test() + .callSite(I, C, "m","()I") + .returns(2) + .done() + .test() + .callSite(J, C, "m","()I") + .returns(2) + .done() + .test() + .callSite(C, C, "m","()I") + .returns(2) + .done() + + .run(); + } + + /* + * Mixed arity + * + * interface I { int m() default { return 1; } } + * interface J { int m(int i) default { return 2; } } + * class C implements I, J {} + * + * TEST: I i = new C(); i.m() == 1; i.m(0) ==> NSME + * TEST: J j = new C(); j.m() ==> NSME; j.m(0) == 2 + * TEST: C c = new C(); c.m() == 1; c.m(0) == 2 + */ + @KnownFailure(modes = { INVOKE_EXACT, INVOKE_GENERIC, INDY }) // IncompatibleClassChangeError instead of NoSuchMethodError + public void testMixedArity1() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "(I)I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I,J).build(); + + // I i = new C(); ... + b.test() + .callSite(I, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(I, C, "m","(I)I") + .params(0) + .throws_(NoSuchMethodError.class) + .done() + + // J j = new C(); ... + .test() + .callSite(J, C, "m","()I") + .throws_(NoSuchMethodError.class) + .done() + .test() + .callSite(J, C, "m","(I)I") + .params(0) + .returns(2) + .done() + + // C c = new C(); ... + .test() + .callSite(C, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(C, C, "m","(I)I") + .params(0) + .returns(2) + .done() + + .run(); + } + + /* + * Mixed arity + * + * interface I { int m() default { return 1; } } + * interface J { int m() default { return 2; } } + * class C implements I, J { int m(int i) { return 3; }} + * + * TEST: I i = new C(); i.m() ==> ICCE + * TEST: J j = new C(); j.m() ==> ICCE + * TEST: C c = new C(); c.m() ==> ICCE; c.m(0) == 3 + */ + public void testMixedArity2() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I,J) + .concreteMethod("m", "(I)I").returns(3).build() + .build(); + + // I i = new C(); ... + b.test() + .callSite(I, C, "m","()I") + .throws_(IncompatibleClassChangeError.class) + .done() + + // J j = new C(); ... + .test() + .callSite(J, C, "m","()I") + .throws_(IncompatibleClassChangeError.class) + .done() + + // C c = new C(); ... + .test() + .callSite(C, C, "m","()I") + .throws_(IncompatibleClassChangeError.class) + .done() + .test() + .callSite(C, C, "m","(I)I") + .params(0) + .returns(3) + .done() + + .run(); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/DefaultVsAbstractTest.java 2018-05-21 10:49:49.433497379 -0700 @@ -0,0 +1,526 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth; + +import nsk.share.test.TestBase; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.annotation.KnownFailure; +import vm.runtime.defmeth.shared.data.*; +import vm.runtime.defmeth.shared.data.method.param.NewInstanceParam; +import vm.runtime.defmeth.shared.builder.TestBuilder; +import static vm.runtime.defmeth.shared.ExecutionMode.*; +import static vm.runtime.defmeth.shared.data.method.body.CallMethod.Invoke.*; +import static vm.runtime.defmeth.shared.data.method.body.CallMethod.IndexbyteOp.*; + +/** + * Tests on interaction of default methods with abstract methods + * + * The rule: "the superclass always wins." + * + * In searching the superclass hierarchy, a declaration in a superclass is + * preferred to a default in an interface. This preference includes abstract + * methods in superclasses as well; the defaults are only considered when + * the entire implementation hierarchy is silent on the status of the method + * in question. + */ +public class DefaultVsAbstractTest extends DefMethTest { + + public static void main(String[] args) { + TestBase.runTest(new DefaultVsAbstractTest(), args); + } + + /* + * interface I { public int m() default { return 1; } } + * class C implements I { public abstract int m(); } + * + * TEST: new C() throws InstantiationError + */ + public void test0() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .abstractMethod("m", "()I").build() + .build(); + + b.test() + .callSite(I, C, "m", "()I") + .throws_(InstantiationError.class) + .done() + .run(); + } + + /* + * interface I { + * public int m() default { return 1; } + * } + * class C implements I { + * public abstract int m(); + * } + * class D extends C {} + * + * TEST: I i = new D(); i.m() ==> AME + * TEST: C c = new D(); c.m() ==> AME + * TEST: D d = new D(); d.m() ==> AME + */ + @KnownFailure(modes = {INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY }) // Test1_I_D_m: NPE instead of AME + // Test3_D_D_m: AME => IAE => ICCE instead of AME + public void test1() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass D = b.clazz("D").extend(C).build(); + + b.test() + .callSite(I, D, "m", "()I") + .throws_(AbstractMethodError.class) + .done() + .test() + .callSite(C, D, "m", "()I") + .throws_(AbstractMethodError.class) + .done() + .test() + .callSite(D, D, "m", "()I") + .throws_(AbstractMethodError.class) + .done() + .run(); + } + + /* + * interface I { + * default public int m() { return 1; } + * } + * class C { + * abstract public int m(); + * } + * class D extends C implements I {} + * + * TEST: I o = new D(); o.m()I throws AME + * TEST: C o = new D(); o.m()I throws AME + * TEST: D o = new D(); o.m()I throws AME + */ + @KnownFailure(modes = { INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY }) // Test1_I_D_m: NPE instead of AME + // Test3_D_D_m: AME => IAE => ICCE instead of AME + public void test2() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C") + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass D = b.clazz("D").extend(C).implement(I).build(); + + b.test() + .callSite(I, D, "m", "()I") + .throws_(AbstractMethodError.class) + .done() + .test() + .callSite(C, D, "m", "()I") + .throws_(AbstractMethodError.class) + .done() + .test() + .callSite(D, D, "m", "()I") + .throws_(AbstractMethodError.class) + .done() + .run(); + } + + /* + * interface I { + * default public int m() { return 1; } + * } + * class C { + * abstract public int m(); + * } + * class D extends C implements I { + * public int m() { return 2; } + * } + * + * TEST: I o = new D(); o.m()I == 2 + * TEST: C o = new D(); o.m()I == 2 + * TEST: D o = new D(); o.m()I == 2 + */ + public void test3() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C") + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass D = b.clazz("D").extend(C).implement(I) + .concreteMethod("m", "()I").returns(2) + .build() + .build(); + + b.test() // I i = new D(); ... + .callSite(I, D, "m", "()I").returns(2) + .done() + .test() // C c = new D(); ... + .callSite(C, D, "m", "()I").returns(2) + .done() + .test() // D d = new C(); ... + .callSite(D, D, "m", "()I").returns(2) + .done() + .run(); + } + + /* + * interface I { + * default public int m() { return 1; } + * } + * class E { + * abstract public int m(); + * } + * class D extends E {} + * class C extends D implements I {} + * + * TEST: I o = new C(); o.m()I throws AME + * TEST: E o = new C(); o.m()I throws AME + * TEST: D o = new C(); o.m()I throws AME + * TEST: C o = new C(); o.m()I throws AME + */ + @KnownFailure(modes = { + INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY // Test1_I_C_m: NPE instead of AME + // Test3_D_C_m: AME => IAE => ICCE instead of AME + // Test4_C_C_m: AME => IAE => ICCE instead of AME + }) + public void test4() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass E = b.clazz("E") + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass D = b.clazz("D").extend(E).build(); + + ConcreteClass C = b.clazz("C").extend(D).implement(I).build(); + + b.test() // I i = new C(); ... + .callSite(I, C, "m", "()I") + .throws_(AbstractMethodError.class) + .done() + .test() // E e = new C(); ... + .callSite(E, C, "m", "()I") + .throws_(AbstractMethodError.class) + .done() + .test() // D d = new C(); ... + .callSite(D, C, "m", "()I") + .throws_(AbstractMethodError.class) + .done() + .test() // C c = new C(); ... + .callSite(C, C, "m", "()I") + .throws_(AbstractMethodError.class) + .done() + .run(); + } + + /* + * interface I { + * default public int m() { return 1; } + * } + * class E { + * abstract public int m(); + * } + * class D extends E { + * public int m() { return 2; } + * } + * class C extends D implements I {} + * + * TEST: I o = new C(); o.m()I == 2 + * TEST: I o = new C(); o.m()I == 2 + * TEST: I o = new C(); o.m()I == 2 + * TEST: I o = new C(); o.m()I == 2 + */ + public void test5() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass E = b.clazz("E") + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass D = b.clazz("D").extend(E) + .concreteMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").extend(D).implement(I).build(); + + b.test() // I i = new C(); ... + .callSite(I, C, "m", "()I") + .returns(2) + .done() + .test() // E e = new C(); ... + .callSite(I, C, "m", "()I") + .returns(2) + .done() + .test() // D d = new C(); ... + .callSite(I, C, "m", "()I") + .returns(2) + .done() + .test() // C c = new C(); ... + .callSite(I, C, "m", "()I") + .returns(2) + .done() + .run(); + } + + /* + * interface I { + * default public int m() { return 1; } + * } + * interface J { + * default public int m() { return 2; } + * } + * class E { + * abstract public int m(); + * } + * class D extends E { + * public int m() { return 3; } + * } + * class C extends D implements I, J {} + * + * TEST: I o = new C(); o.m()I == 3 + * TEST: J o = new C(); o.m()I == 3 + * TEST: E o = new C(); o.m()I == 3 + * TEST: D o = new C(); o.m()I == 3 + * TEST: J o = new C(); o.m()I == 3 + */ + public void test6() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass E = b.clazz("E") + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass D = b.clazz("D").extend(E) + .concreteMethod("m", "()I").returns(3).build() + .build(); + + ConcreteClass C = b.clazz("C").extend(D).implement(I, J).build(); + + + b.test() // I i = new C(); ... + .callSite(I, C, "m", "()I").returns(3) + .done() + .test() // J j = new C(); ... + .callSite(J, C, "m", "()I").returns(3) + .done() + .test() // E e = new C(); ... + .callSite(E, C, "m", "()I").returns(3) + .done() + .test() // D d = new C(); ... + .callSite(D, C, "m", "()I").returns(3) + .done() + .test() // C c = new C(); ... + .callSite(J, C, "m", "()I").returns(3) + .done() + .run(); + } + + /* + * interface I { + * abstract public int m(); + * } + * + * interface J { + * default public int m() { return 1; } + * } + * + * class A implements I; + * + * class B extends A implements J; + * + * TEST: A o = new B(); o.m()I + * returns 1 for REFLECTION and INVOKE_WITH_ARGS + * ICCE for other modes + */ + public void testInvokeInterfaceClassDefaultMethod() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .abstractMethod("m", "()I").build() + .build(); + + Interface J = b.intf("J") + .extend(I) + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass A = b.clazz("A").implement(I).build(); + + ConcreteClass B = b.clazz("B").extend(A).implement(J).build(); + + String exeMode = factory.getExecutionMode(); + + // the test passes in the reflection mode because there's no way to + // express invokeinterface on a class using Reflection API + // In the test generator, vm.runtime.defmeth.shared.executor.ReflectionTest, + // the invokeinterface is switched to invokevirtual. + // + // the test passes in the INVOKE_WITH_ARGS mode due to the fix for + // JDK-8032010 to conform with the removal of the following check + // during method resolution in JVMS-5.4.3.3 Method Resolution + // "If method lookup succeeds and the method is abstract, but C is not + // abstract, method resolution throws an AbstractMethodError." + if (exeMode.equals("REFLECTION") || + exeMode.equals("INVOKE_WITH_ARGS")) { + b.test().interfaceCallSite(A, B, "m", "()I") + .returns(1).done() + .run(); + } else { + // ICCE in other modes due to + // JVMS-5.4.3.4. Interface Method Resolution + // When resolving an interface method reference: + // If C is not an interface, interface method resolution throws an IncompatibleClassChangeError. + b.test().interfaceCallSite(A, B, "m", "()I") + .throws_(IncompatibleClassChangeError.class).done() + .run(); + } + } + + /* + * interface I { + * abstract public int m(); + * } + * + * interface J { + * abstract public int m(); + * } + * + * class A implements I; + * + * class B extends A implements J; + * + * TEST: A o = new B(); o.m()I + * ICCE for DIRECT mode + * AME for REFLECTION and INVOKE_WITH_ARGS modes + * IAE for other modes + */ + public void testInvokeInterfaceClassAbstractMethod() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .abstractMethod("m", "()I").build() + .build(); + + Interface J = b.intf("J") + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass A = b.clazz("A").implement(I).build(); + + ConcreteClass B = b.clazz("B").extend(A).implement(J).build(); + + String exeMode = factory.getExecutionMode(); + + // ICCE in direct mode due to + // JVMS-5.4.3.4. Interface Method Resolution + // When resolving an interface method reference: + // If C is not an interface, interface method resolution throws an IncompatibleClassChangeError. + Class expectedError = IncompatibleClassChangeError.class;; + + b.test().interfaceCallSite(A, B, "m", "()I") + .throws_(expectedError).done() + .run(); + + } + + /* + * interface I { + * public int m() default { return 1; } + * } + * + * interface J { + * public int m() default { return 1; } + * } + * + * class A implements I; + * + * class B extends A implements J; + * + * TEST: A o = new B(); o.m()I + * ICCE for all modes + */ + public void testInvokeInterfaceMultipleDefinedClassDefaultMethod() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass A = b.clazz("A").implement(I).build(); + + ConcreteClass B = b.clazz("B").extend(A).implement(J).build(); + + String exeMode = factory.getExecutionMode(); + + // ICCE in direct mode due to + // JVMS-5.4.3.4. Interface Method Resolution + // When resolving an interface method reference: + // If C is not an interface, interface method resolution throws an IncompatibleClassChangeError. + Class expectedError = IncompatibleClassChangeError.class; + + b.test().interfaceCallSite(A, B, "m", "()I") + .throws_(expectedError).done() + .run(); + } + +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/MethodResolutionTest.java 2018-05-21 10:49:49.717497386 -0700 @@ -0,0 +1,904 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth; + +import nsk.share.test.TestBase; +import vm.runtime.defmeth.shared.annotation.KnownFailure; +import vm.runtime.defmeth.shared.data.*; +import vm.runtime.defmeth.shared.data.method.param.*; +import static jdk.internal.org.objectweb.asm.Opcodes.*; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.builder.TestBuilder; +import static vm.runtime.defmeth.shared.ExecutionMode.*; + +/** + * Tests on method resolution in presence of default methods in the hierarchy. + * + * Because default methods reside in interfaces, and interfaces do not have + * the constraint of being single-inheritance, it is possible to inherit + * multiple conflicting default methods, or even inherit the same default method + * from many different inheritance paths. + * + * There is an algorithm to select which method to use in the case that a + * concrete class does not provide an implementation. Informally, the algorithm + * works as follows: + * + * (1) If there is a adequate implementation in the class itself or in a + * superclass (not an interface), then that implementation should be used + * (i.e., class methods always "win"). + * + * (2) Failing that, create the set of methods consisting of all methods in the + * type hierarchy which satisfy the slot to be filled, where in this case + * 'satisfy' means that the methods have the same name, the same language- + * level representation of the parameters, and covariant return values. Both + * default methods and abstract methods will be part of this set. + * + * (3) Remove from this set, any method which has a "more specific" version + * anywhere in the hierarchy. That is, if C implements I,J and I extends J, + * then if both I and J have a suitable methods, J's method is eliminated + * from the set since I is a subtype of J -- there exist a more specific + * method than J's method, so that is eliminated. + * + * (4) If the remaining set contains only a single entry, then that method is + * selected. Note that the method may be abstract, in which case an + * IncompatibleClassChangeError is thrown when/if the method is called. If there are + * multiple entries in the set, or no entries, then this also results in an + * IncompatibleClassChangeError when called. + */ +public class MethodResolutionTest extends DefMethTest { + + public static void main(String[] args) { + TestBase.runTest(new MethodResolutionTest(), args); + } + + /* + * Basic + * + * interface I { int m(); } + * class C implements I { public int m() { return 1; } } + * + * TEST: C c = new C(); c.m() == 1; + * TEST: I i = new C(); i.m() == 1; + */ + public void testBasic() { + TestBuilder b = factory.getBuilder(); + + Interface I = + b.intf("I") + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass C = + b.clazz("C").implement(I) + .concreteMethod("m", "()I").returns(1).build() + .build(); + + b.test() + .callSite(I, C, "m", "()I") + .returns(1) + .done() + .test() + .callSite(C, C, "m", "()I") + .returns(1) + .done() + .run(); + } + + /* + * Basic Default + * + * interface I { int m() default { return 1; } } + * class C implements I {} + * + * TEST: C c = new C(); c.m() == 1; + * TEST: I i = new C(); i.m() == 1; + */ + public void testBasicDefault() { + TestBuilder b = factory.getBuilder(); + + Interface I = + b.intf("I") + .defaultMethod("m", "()I").returns(1) + .build() + .build(); + + ConcreteClass C = + b.clazz("C").implement(I) + .build(); + + b.test() + .callSite(I, C, "m", "()I") + .returns(1) + .done() + .test().callSite(C, C, "m", "()I") + .returns(1) + .done() + + .run(); + } + + /* + * Far Default + * + * interface I { int m() default { return 1; } } + * interface J extends I {} + * interface K extends J {} + * class C implements K {} + * + * TEST: [I|J|K|C] i = new C(); i.m() == 1; + */ + @KnownFailure(modes = { INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY }) // Test2_J_C_m, Test3_K_C_m: AME => IAE => ICCE instead of successful call + public void testFarDefault() { + TestBuilder b = factory.getBuilder(); + + Interface I = + b.intf("I") + .defaultMethod("m", "()I").returns(1) + .build() + .build(); + + Interface J = b.intf("J").extend(I).build(); + Interface K = b.intf("K").extend(J).build(); + + ConcreteClass C = + b.clazz("C").implement(K) + .build(); + + b.test() + .callSite(I, C, "m", "()I") + .returns(1) + .done() + .test().callSite(J, C, "m", "()I") + .returns(1) + .done() + .test().callSite(K, C, "m", "()I") + .returns(1) + .done() + .test().callSite(C, C, "m", "()I") + .returns(1) + .done() + + .run(); + } + + /* + * Override Abstract + * + * interface I { int m(); } + * interface J extends I { int m() default { return 1; } } + * interface K extends J {} + * class C implements K {} + * + * TEST: C c = new C(); c.m() == 1; + * TEST: K k = new C(); k.m() == 1; + */ + @KnownFailure(modes = { INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY }) // Test3_K_C_m: AME => IAE => ICCE instead of successful call + public void testOverrideAbstract() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .abstractMethod("m", "()I").build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface K = b.intf("K").extend(J).build(); + + ConcreteClass C = b.clazz("C").implement(K).build(); + + b.test() + .callSite(I, C, "m", "()I") + .returns(1) + .done() + .test() + .callSite(J, C, "m", "()I") + .returns(1) + .done() + .test() + .callSite(K, C, "m", "()I") + .returns(1) + .done() + .test() + .callSite(C, C, "m", "()I") + .returns(1) + .done() + + .run(); + } + + /* + * Default vs Concrete + * + * interface I { int m() default { return 1; } } + * class C implements I { public int m() { return 2; } } + * + * TEST: [C|I] c = new C(); c.m() == 2; + */ + public void testDefaultVsConcrete() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .concreteMethod("m", "()I").returns(2).build() + .build(); + + b.test() + .callSite(I, C, "m", "()I") + .returns(2) + .done() + .test() + .callSite(C, C, "m", "()I") + .returns(2) + .done() + + .run(); + } + + /* + * InheritedDefault + * + * interface I { int m() default { return 1; } } + * class B implements I {} + * class C extends B {} + * + * TEST: [I|B|C] v = new C(); v.m() == 1; + */ + public void testInheritedDefault() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass B = b.clazz("B").implement(I).build(); + ConcreteClass C = b.clazz("C").extend(B).build(); + + b.test() + .callSite(I, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(B, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(C, C, "m","()I") + .returns(1) + .done() + + .run(); + } + + /* + * ExistingInherited + * + * interface I { int m() default { return 1; } } + * class B { public int m() { return 2; } } + * class C extends B implements I {} + * + * TEST: [I|B|C] v = new C(); v.m() == 2; + */ + public void testExistingInherited() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass B = b.clazz("B") + .concreteMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").extend(B).implement(I).build(); + + b.test() + .callSite(I, C, "m","()I") + .returns(2) + .done() + .test() + .callSite(B, C, "m","()I") + .returns(2) + .done() + .test() + .callSite(C, C, "m","()I") + .returns(2) + .done() + + .run(); + } + + /* + * ExistingInheritedOverride + * + * interface I { int m() default { return 1; } } + * class B implements I { public int m() { return 2; } } + * class C extends B { public int m() { return 3; } } + * + * TEST: [I|B|D] v = new C(); v.m() == 3; + */ + public void testExistingInheritedOverride() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass B = b.clazz("B").implement(I) + .concreteMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").extend(B) + .concreteMethod("m", "()I").returns(3).build() + .build(); + + b.test() + .callSite(I, C, "m","()I") + .returns(3) + .done() + .test() + .callSite(B, C, "m","()I") + .returns(3) + .done() + .test() + .callSite(C, C, "m","()I") + .returns(3) + .done() + + .run(); + } + + /* + * ExistingInheritedPlusDefault + * + * interface I { int m() default { return 11; } } + * interface J { int m() default { return 12; } } + * class C implements I { public int m() { return 21; } } + * class D extends C { public int m() { return 22; } } + * class E extends D implements J {} + * + * TEST: [I|J|C|D|J] v = new E(); v.m() == 22; + */ + public void testExistingInheritedPlusDefault() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(11).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(12).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .concreteMethod("m","()I").returns(21).build() + .build(); + + ConcreteClass D = b.clazz("D").extend(C) + .concreteMethod("m", "()I").returns(22).build() + .build(); + + ConcreteClass E = b.clazz("E").extend(D).implement(J) + .build(); + + b.test() + .callSite(I, E, "m","()I") + .returns(22) + .done() + .test() + .callSite(J, E, "m","()I") + .returns(22) + .done() + .test() + .callSite(C, E, "m","()I") + .returns(22) + .done() + .test() + .callSite(D, E, "m","()I") + .returns(22) + .done() + .test() + .callSite(E, E, "m","()I") + .returns(22) + .done() + + .run(); + } + + /* + * InheritedWithConcrete + * + * interface I { int m() default { return 1; } } + * class B implements I {} + * class C extends B { public int m() { return 2; } } + * + * TEST: [I|B|C] v = new C(); v.m() == 2; + */ + public void testInheritedWithConcrete() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass B = b.clazz("B").implement(I).build(); + + ConcreteClass C = b.clazz("C").extend(B) + .concreteMethod("m", "()I").returns(2).build() + .build(); + + b.test() + .callSite(I, C, "m","()I") + .returns(2) + .done() + .test() + .callSite(B, C, "m","()I") + .returns(2) + .done() + .test() + .callSite(C, C, "m","()I") + .returns(2) + .done() + + .run(); + } + + /* + * InheritedWithConcreteAndImpl + * + * interface I { int m() default { return 1; } } + * class B implements I {} + * class C extends B implements I { public int m() { return 2; } } + * + * TEST: [I|B|C] v = new C(); v.m() == 2; + */ + public void testInheritedWithConcreteAndImpl() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass B = b.clazz("B").implement(I).build(); + + ConcreteClass C = b.clazz("C").extend(B) + .concreteMethod("m", "()I").returns(2).build() + .build(); + + b.test() + .callSite(I, C, "m","()I") + .returns(2) + .done() + .test() + .callSite(B, C, "m","()I") + .returns(2) + .done() + .test() + .callSite(C, C, "m","()I") + .returns(2) + .done() + + .run(); + } + + /* + * Diamond + * + * interface I { int m() default { return 1; } } + * interface J extends I {} + * interface K extends I {} + * class C implements J, K {} + * + * TEST: [I|J|K|C] c = new C(); c.m() == 99 + */ + @KnownFailure(modes = { INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY }) // Test2_J_C_m, Test3_K_C_m: AME => IAE => ICCE instead of successful call + public void testDiamond() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I).build(); + Interface K = b.intf("K").extend(I).build(); + + ConcreteClass C = b.clazz("C").implement(J,K) + .build(); + + b.test() + .callSite(I, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(J, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(K, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(C, C, "m","()I") + .returns(1) + .done() + + .run(); + } + + /* + * ExpandedDiamond + * + * interface I { int m() default { return 1; } } + * interface J extends I {} + * interface K extends I {} + * interface L extends I {} + * interface M extends I {} + * class C implements J, K, L, M {} + * + * TEST: [I|J|K|L|M|C] c = new C(); c.m() == 1 + */ + @KnownFailure(modes = { INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY }) // Test2_J_C_m, Test3_K_C_m, Test4_L_C_m, Test5_M_C_m: + // AME => IAE => ICCE instead of successful call + public void testExpandedDiamond() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I).build(); + Interface K = b.intf("K").extend(I).build(); + Interface L = b.intf("L").extend(I).build(); + Interface M = b.intf("M").extend(I).build(); + + ConcreteClass C = b.clazz("C").implement(J,K,L,M) + .build(); + + b.test() + .callSite(I, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(J, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(K, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(L, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(M, C, "m","()I") + .returns(1) + .done() + .test() + .callSite(C, C, "m","()I") + .returns(1) + .done() + + .run(); + } + + /* + * SelfFill w/ explicit bridge + * + * interface I { int m(T t) default { return 1; } } + * class C implements I { + * public int m(C s) { return 2; } + * public int m(Object o) { ... } + * } + * + * TEST: I i = new C(); i.m((Object)null) == 2; + * TEST: C c = new C(); c.m((Object)null) == 2; + * TEST: C c = new C(); c.m((C)null) == 2; + */ + public void testSelfFillWithExplicitBridge() { + TestBuilder b = factory.getBuilder(); + + /* interface I { ... */ + Interface I = b.intf("I").sig("Ljava/lang/Object;") + /* default int m(T t) { return 1; } */ + .defaultMethod("m", "(Ljava/lang/Object;)I") + .sig("(TT;)I") + .returns(1) + .build() + .build(); + + /* class C implements I { ... */ + ConcreteClass C = b.clazz("C").implement(I) + .sig("Ljava/lang/Object;LI;") + + /* public int m(I i) { return 2; } */ + .concreteMethod("m","(LC;)I").returns(2).build() + + /* bridge method for m(LI;)I */ + .concreteMethod("m","(Ljava/lang/Object;)I") + .flags(ACC_PUBLIC | ACC_BRIDGE | ACC_SYNTHETIC) + .returns(2) + .build() + .build(); + + // I i = new C(); ... + b.test() + .callSite(I, C, "m", "(Ljava/lang/Object;)I") + .params(new NullParam()) + .returns(2) + .done() + // C c = new C(); ... + .test() + .callSite(C, C, "m", "(Ljava/lang/Object;)I") + .params(new NullParam()) + .returns(2) + .done() + .test() + .callSite(C, C, "m", "(LC;)I") + .params(new NullParam()) + .returns(2) + .done() + + .run(); + } + + /* + * interface I { int m() default { return 1; } } + * class C implements I { int m(int i) { return 2; } } + * + * TEST: C c = new C(); c.m(0) == 2; + * TEST: I i = new C(); i.m() == 1; + */ + public void testMixedArity() { + TestBuilder b = factory.getBuilder(); + + Interface I = + b.intf("I") + .defaultMethod("m", "()I").returns(1) + .build() + .build(); + + ConcreteClass C = + b.clazz("C").implement(I) + .concreteMethod("m", "(I)I").returns(2) + .build() + .build(); + + b.test().callSite(I, C, "m", "()I") + .returns(1) + .build(); + b.test().callSite(C, C, "m", "(I)I").params(ICONST_0) + .returns(2) + .build(); + + b.run(); + } + + /* + * interface I { int m() default { return 1; } } + * interface J { int m(int i) default { return 2; } } + * class C implements I, J {} + * + * TEST: I i = new C(); i.m() == 1; i.m(0) ==> NSME + * TEST: J j = new C(); j.m() ==> NSME; j.m(0) == 2 + * TEST: C c = new C(); c.m() == 1; c.m(0) == 2 + */ + @KnownFailure(modes = { INVOKE_EXACT, INVOKE_GENERIC, INDY }) //Test2_I_C_m, Test3_J_C_m: NSMError => NSMException => ICCE instead of NSME + public void testConflictingDefaultMixedArity1() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1) + .build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "(I)I").returns(2) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I,J).build(); + + + // I i = new C(); ... + b.test().callSite(I, C, "m", "()I") + .returns(1) + .build(); + b.test().callSite(I, C, "m", "(I)I").params(ICONST_0) + .throws_(NoSuchMethodError.class) + .build(); + + // J j = new C(); ... + b.test().callSite(J, C, "m", "()I") + .throws_(NoSuchMethodError.class) + .build(); + b.test().callSite(J, C, "m", "(I)I").params(ICONST_0) + .returns(2) + .build(); + + // C c = new C(); ... + b.test().callSite(C, C, "m", "()I") + .returns(1) + .build(); + b.test().callSite(C, C, "m", "(I)I").params(ICONST_0) + .returns(2) + .build(); + + b.run(); + } + + /* + * interface I { int m() default { return 1; } } + * interface J { int m() default { return 2; } } + * class C implements I, J { + * int m(int i) { return 3; } + * } + * + * TEST: I i = new C(); i.m(0) ==> ICCE + * TEST: J j = new C(); j.m(0) ==> ICCE + * TEST: C c = new C(); c.m() ==> ICCE; c.m(0) == 3 + */ + @KnownFailure(modes = { INVOKE_EXACT, INVOKE_GENERIC, INDY }) + //Test2_I_C_m, Test3_J_C_m: NSMError => NSMException => ICCE instead of NSME + public void testConflictingDefaultMixedArity2() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1) + .build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I, J) + .concreteMethod("m", "(I)I").returns(3) + .build() + .build(); + + // I i = new C(); ... + b.test().callSite(I, C, "m", "()I") + .throws_(IncompatibleClassChangeError.class) + .build(); + b.test().callSite(I, C, "m", "(I)I").params(ICONST_0) + .throws_(NoSuchMethodError.class) + .build(); + + // J j = new C(); ... + b.test().callSite(J, C, "m", "()I") + .throws_(IncompatibleClassChangeError.class) + .build(); + b.test().callSite(J, C, "m", "(I)I").params(ICONST_0) + .throws_(NoSuchMethodError.class) + .build(); + + // C c = new C(); ... + b.test().callSite(C, C, "m", "()I") + .throws_(IncompatibleClassChangeError.class) + .build(); + b.test().callSite(C, C, "m", "(I)I").params(ICONST_0) + .returns(3) + .build(); + + b.run(); + } + + /* In package1: + * package p1; + * interface I { + * default int m() { return 10; }; + * } + * public interface J extends I {}; + * + * In package2: + * class A implements p1.J {} + * A myA = new A; + * myA.m(); // should return 10 except for reflect mode, + * // throw IllegalAccessException with reflect mode + * B myB = new B; // not related + */ + + public void testMethodResolvedInDifferentPackage() { + TestBuilder b = factory.getBuilder(); + Interface I = b.intf("p1.I").flags(~ACC_PUBLIC & ACC_PUBLIC) // make it package private + .defaultMethod("m", "()I").returns(10) + .build() + .build(); + + Interface J = b.intf("p1.J").extend(I) + .build(); + + ConcreteClass myA = b.clazz("p2.A").implement(J) + .build(); + if (!factory.getExecutionMode().equals("REFLECTION")) { + b.test() + .callSite(myA, myA, "m", "()I") + .returns(10) + .done() + .run(); + // -mode reflect will fail with IAE as expected + } else { + b.test() + .callSite(myA, myA, "m", "()I") + .throws_(IllegalAccessException.class) + .done() + .run(); + } + + ConcreteClass myB = b.clazz("p2.B").build(); + } + + /* In package p1: + * package p1; + * interface I { + * public default int m() { return 12; }; + * } + * + * public class A implements I {} + * + * In package p2: + * package p2; + * public interface J { int m(); } + * + * public class B extends p1.A implements J { + * public int m() { return 13; } + * } + * + * Then: + * A myA = new B; + * myA.m(); // should return 13, not throw IllegalAccessError + */ + + public void testMethodResolvedInLocalFirst() { + TestBuilder b = factory.getBuilder(); + Interface I = b.intf("p1.I") + .defaultMethod("m", "()I").returns(12) + .build() + .build(); + + ConcreteClass myA = b.clazz("p1.A").implement(I) + .build(); + + Interface J = b.intf("p2.J").abstractMethod("m", "()I") + .build() + .build(); + + ConcreteClass myB = b.clazz("p2.B").extend(myA).implement(J) + .concreteMethod("m", "()I").returns(13) + .build() + .build(); + + b.test() + .callSite(myB, myB, "m", "()I") + .returns(13) + .done() + .run(); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/ObjectMethodOverridesTest.java 2018-05-21 10:49:49.997497393 -0700 @@ -0,0 +1,246 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth; + +import nsk.share.TestFailure; +import nsk.share.test.TestBase; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.data.*; +import static vm.runtime.defmeth.shared.data.method.body.CallMethod.Invoke.*; +import static vm.runtime.defmeth.shared.data.method.body.CallMethod.IndexbyteOp.*; +import vm.runtime.defmeth.shared.data.method.body.*; +import vm.runtime.defmeth.shared.builder.TestBuilder; + +/** + * Test that default methods don't override methods inherited from Object class. + */ +public class ObjectMethodOverridesTest extends DefMethTest { + + public static void main(String[] args) { + TestBase.runTest(new ObjectMethodOverridesTest(), args); + } + + /* protected Object clone() */ + public void testClone() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("clone", "()Ljava/lang/Object;") + .throw_(TestFailure.class) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .concreteMethod("m", "()V") + // force an invokevirtual MR + .invoke(CallMethod.Invoke.VIRTUAL, + b.clazzByName("C"), b.clazzByName("C"), + "clone", "()Ljava/lang/Object;", METHODREF) + .build() + .build(); + + b.test().callSite(C, C, "m", "()V") + .throws_(CloneNotSupportedException.class) + .done() + + .run(); + } + + /* boolean equals(Object obj) */ + public void testEquals() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("equals", "(Ljava/lang/Object;)Z") + .throw_(TestFailure.class) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + ClassLoader cl = b.build(); + Object c = cl.loadClass("C").newInstance(); + + c.equals(this); + } + + /* void finalize() */ + public void testFinalize() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("finalize", "()V") + .throw_(TestFailure.class) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .concreteMethod("m", "()V") + // force an invokevirtual MR + .invoke(CallMethod.Invoke.VIRTUAL, + b.clazzByName("C"), b.clazzByName("C"), "finalize", "()V", METHODREF) + .build() + .build(); + + b.test().callSite(C, C, "m", "()V") + .ignoreResult() + .done() + + .run(); + } + + /* final Class getClass() */ + public void testGetClass() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("getClass", "()Ljava/lang/Class;") + .sig("()Ljava/lang/Class<*>;") + .throw_(TestFailure.class) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().loadClass(I).throws_(VerifyError.class).done() + .run(); + } + + /* int hashCode() */ + public void testHashCode() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("hashCode", "()I") + .throw_(TestFailure.class) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + ClassLoader cl = b.build(); + Object c = cl.loadClass("C").newInstance(); + + c.hashCode(); + } + + + /* final void notify() */ + public void testNotify() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("notify", "()V") + .throw_(TestFailure.class) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().loadClass(I).throws_(VerifyError.class).done() + .run(); + } + + /* void notifyAll() */ + public void testNotifyAll() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("notifyAll", "()V") + .throw_(TestFailure.class) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().loadClass(I).throws_(VerifyError.class).done() + .run(); + } + + /* String toString() */ + public void testToString() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("toString()", "()Ljava/lang/String;") + .throw_(TestFailure.class) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + ClassLoader cl = b.build(); + Object c = cl.loadClass("C").newInstance(); + + c.toString(); + } + + /* final void wait() */ + public void testWait() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("wait", "()V") + .throw_(TestFailure.class) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().loadClass(I).throws_(VerifyError.class).done() + .run(); + } + + /* final void wait(long timeout) */ + public void testTimedWait() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("wait", "(J)V") + .throw_(TestFailure.class) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().loadClass(I).throws_(VerifyError.class).done() + .run(); + } + + /* final void wait(long timeout, int nanos) */ + public void testTimedWait1() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("wait", "(JI)V") + .throw_(TestFailure.class) + .build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().loadClass(I).throws_(VerifyError.class).done() + .run(); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/PrivateMethodsTest.java 2018-05-21 10:49:50.281497400 -0700 @@ -0,0 +1,814 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth; + +import nsk.share.test.TestBase; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.annotation.Crash; +import vm.runtime.defmeth.shared.annotation.KnownFailure; +import vm.runtime.defmeth.shared.annotation.NotApplicableFor; +import vm.runtime.defmeth.shared.data.*; +import static vm.runtime.defmeth.shared.data.method.body.CallMethod.Invoke.*; +import static vm.runtime.defmeth.shared.data.method.body.CallMethod.IndexbyteOp.*; +import vm.runtime.defmeth.shared.builder.TestBuilder; +import static vm.runtime.defmeth.shared.ExecutionMode.*; + +/** + * Scenarios on private methods in interfaces. + */ +public class PrivateMethodsTest extends DefMethTest { + + public static void main(String[] args) { + TestBase.runTest(new PrivateMethodsTest(), args); + } + + // invokevirtual & invokeinterface from same/subintf + // Spec change July 2013 to not allow invokevirtual or invokeinterface + // to even see an interface private method + // Throw ICCE if method resolution returns interface private method + + /* + * testPrivateInvokeVirtual + * + * interface I { + * default private int privateM() { return 1; } + * default public int m() { return (I)this.privateM(); } // invokevirtual + * } + * class C implements I {} + * + * TEST: I o = new C(); o.m()I throws VerifyError + * TEST: C o = new C(); o.m()I throws VerifyError + */ + @NotApplicableFor(modes = { REDEFINITION }) // Can't redefine a class that gets error during loading + public void testPrivateInvokeVirtual() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("privateM", "()I") + .private_().returns(1).build() + + // force an invokevirtual of an IMR to test verification code + .defaultMethod("m", "()I") + .invoke(VIRTUAL, b.intfByName("I"), null, "privateM", "()I", INTERFACEMETHODREF).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().callSite(I, C, "m", "()I").throws_(VerifyError.class).done() + .test().callSite(C, C, "m", "()I").throws_(VerifyError.class).done() + + .run(); + } + + /* + * testPrivateInvokeIntf + * + * interface I { + * default private int privateM() { return 1; } + * default public int m() { return (I)this.privateM(); } // invokeinterface + * } + * class C implements I {} + * + * TEST: I o = new C(); o.m()I throws IncompatibleClassChangeError + * TEST: C o = new C(); o.m()I throws IncompatibleClassChangeError + */ + public void testPrivateInvokeIntf() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("privateM", "()I") + .private_().returns(1).build() + .defaultMethod("m", "()I") + .invoke(INTERFACE, b.intfByName("I"), null, "privateM", "()I", CALLSITE).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + + .run(); + } + + /* + * testPrivateInvokeStatic + * + * interface I { + * default private int privateM() { return 1; } + * default public int m() { return I.privateM(); } // invokestatic + * } + * class C implements I {} + * + * TEST: I o = new C(); o.m()I throws LinkageError + * TEST: C o = new C(); o.m()I throws LinkageError + */ + public void testPrivateInvokeStatic() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("privateM", "()I") + .private_().returns(1).build() + .defaultMethod("m", "()I") + .invoke(STATIC, b.intfByName("I"), null, "privateM", "()I", CALLSITE).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().callSite(I, C, "m", "()I").throws_(LinkageError.class).done() + .test().callSite(C, C, "m", "()I").throws_(LinkageError.class).done() + + .run(); + } + + // call from another default method in the same interface + /* + * testPrivateCallSameClass + * + * interface I { + * default private privateM()I { return 1; } + * default public int m() { return I.super.privateM(); } + * } + * class C implements I {} + * + * TEST: { I o = new C(); o.m()I == 1; } + * TEST: { C o = new C(); o.m()I == 1; } + */ + public void testPrivateCallSameClass() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("privateM", "()I") + .private_().returns(1).build() + .defaultMethod("m", "()I") + .invokeSpecial(b.intfByName("I"), "privateM", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(C, C, "m", "()I").returns(1).done() + + .run(); + } + + /* + * testPrivateCallSubIntf + * + * Attempt to call from subinterface fails + + * interface I { + * default private privateM()I { return 1; } + * } + * J, K, L use invokespecial + * interface J extends I { + * default public int m() { return I.super.privateM(); } + * } + * interface K extends I { + * default public int m() { return K.super.privateM(); } + * } + * interface L extends J { + * default public int m() { return I.super.privateM(); } + * } + * class C implements J {} + * class D implements K {} + * class E implements L {} + * + * TEST: { J o = new C(); o.m()I throws IAE; } + * TEST: { C o = new C(); o.m()I throws IAE; } + * TEST: { K o = new D(); o.m()I throws NSME; } // does not see + * TEST: { D o = new D(); o.m()I throws NSME; } + * TEST: { L o = new E(); o.m()I throws VerifyError; } // VerifyError intfmethodref + * TEST: { E o = new E(); o.m()I throws VerifyError; } + */ + @NotApplicableFor(modes = { REDEFINITION }) // Can't redefine a class that gets error during loading + public void testPrivateCallSubIntf() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("privateM", "()I") + .private_().returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I") + .invokeSpecial(I, "privateM", "()I").build() + .build(); + + Interface K = b.intf("K").extend(J) + .defaultMethod("m", "()I") + .invokeSpecial(b.intfByName("K"), "privateM", "()I").build() + .build(); + + // L.privateM -> J -> L (I.privateM call) + Interface L = b.intf("L").extend(J) + .defaultMethod("m", "()I") + .invokeSpecial(I, "privateM", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + ConcreteClass D = b.clazz("D").implement(K).build(); + + ConcreteClass E = b.clazz("E").implement(L).build(); + + b.test().callSite(J, C, "m", "()I").throws_(IllegalAccessError.class).done() + .test().callSite(C, C, "m", "()I").throws_(IllegalAccessError.class).done() + + .test().callSite(K, D, "m", "()I").throws_(NoSuchMethodError.class).done() + .test().callSite(D, D, "m", "()I").throws_(NoSuchMethodError.class).done() + + .test().callSite(L, E, "m", "()I").throws_(VerifyError.class).done() + .test().callSite(E, E, "m", "()I").throws_(VerifyError.class).done() + + .run(); + } + + /* + * Attempt to call from subclass fails + * + * interface I { + * default private privateM()I { return 1; } + * } + * class C implements I { + * public int m() { return I.super.privateM(); } + * } + * class D extends C { + * public int m() { return I.super.privateM(); } + * } + * class E extends C { + * public int m() { return C.super.privateM(); } + * } + * + * TEST: { C o = new C(); o.m()I throws LinkageError } + * TEST: { D o = new D(); o.m()I throws LinkageError } + * TEST: { E o = new E(); o.m()I throws NoSuchMethodError; } + */ + @NotApplicableFor(modes = { REDEFINITION }) // Can't redefine a class that gets error during loading + public void testPrivateCallImplClass() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("privateM", "()I") + .private_().returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .concreteMethod("m", "()I") + .invokeSpecial(I, "privateM", "()I").build() + .build(); + + ConcreteClass D = b.clazz("D").extend(C) + .concreteMethod("m", "()I") + .invokeSpecial(I, "privateM", "()I").build() + .build(); + + ConcreteClass E = b.clazz("E").extend(C) + .concreteMethod("m", "()I") + .invokeSpecial(C, "privateM", "()I").build() + .build(); + + Class eeExpectedClass; + if (factory.getVer() >= 52) { + eeExpectedClass = NoSuchMethodError.class; + } else { + // The test gets a VerifyError in this case due to an + // invokespecial IMR bytecode. This was not allowed + // until class file version 52. (See 8030249.) + eeExpectedClass = VerifyError.class; + } + b.test().callSite(C, C, "m", "()I").throws_(LinkageError.class).done() + .test().callSite(D, D, "m", "()I").throws_(LinkageError.class).done() + .test().callSite(E, E, "m", "()I").throws_(eeExpectedClass).done() + + .run(); + } + + // doesn't participate in default method analysis + // method overriding + + /* + * testPrivateDefault + * + * interface I { + * default private int m() { return 1; } + * } + * class C implements I {} + * + * TEST: { I o = new C(); o.m()I throws IllegalAccessError; } + * -mode reflect throws NoSuchMethodException + * TEST: { C o = new C(); o.m()I throws java/lang/NoSuchMethodError; } + */ + public void testPrivateDefault() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .private_().returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + Class expectedClass; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedClass = NoSuchMethodException.class; + } else { + expectedClass = IllegalAccessError.class; + } + + b.test().callSite(I, C, "m", "()I").throws_(expectedClass).done() + .test().callSite(C, C, "m", "()I").throws_(NoSuchMethodError.class).done() + + .run(); + } + + /* + * testPrivateDefaultVsConcrete + * + * interface I { + * default private int m() { return 1; } + * } + * class C implements I { + * public int m() { return 2; } + * } + * + * TEST: { I o = new C(); o.m()I == IllegalAccessError; } + * -mode reflect throws NoSuchMethodException + * TEST: { C o = new C(); o.m()I == 2; } + */ + public void testPrivateDefaultVsConcrete() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .private_().returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .concreteMethod("m", "()I").returns(2).build() + .build(); + + Class expectedClass; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedClass = NoSuchMethodException.class; + } else { + expectedClass = IllegalAccessError.class; + } + + b.test().callSite(I, C, "m", "()I").throws_(expectedClass).done() + .test().callSite(C, C, "m", "()I").returns(2).done() + + .run(); + } + + /* + * testPublicOverridePrivate + * + * interface I { + * default private int m() { return 1; } + * } + * interface J extends I { + * default public int m() { return 2; } + * } + * class C implements J {} + * + * TEST: { I o = new C(); o.m()I throws IllegalAccessError; } + * -mode reflect throws NoSuchMethodException + * TEST: { J o = new C(); o.m()I == 2; } + * TEST: { C o = new C(); o.m()I == 2; } + */ + public void testPublicOverridePrivate() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .private_().returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I") + .returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + Class expectedClass; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedClass = NoSuchMethodException.class; + } else { + expectedClass = IllegalAccessError.class; + } + + b.test().callSite(I, C, "m", "()I").throws_(expectedClass).done() + .test().callSite(J, C, "m", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").returns(2).done() + + .run(); + } + + /* + * testPrivateOverrideDefault + * + * interface I { + * default public int m() { return 1; } + * } + * interface J extends I { + * default private int m() { return 2; } + * } + * class C implements J {} + * + * TEST: { I o = new C(); o.m()I == 1; } + * TEST: { J o = new C(); o.m()I == IllegalAccessError; } II J.m priv + * TEST: { C o = new C(); o.m()I == 1; } + */ + /* + + REFLECTION: + Test2_J_C_m : FAILED + nsk.share.TestFailure: Caught exception as expected, but its type is wrong: + expected: java.lang.IllegalAccessError; + actual: java.lang.NoSuchMethodException. + */ + public void testPrivateOverrideDefault() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I") + .private_().returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + b.test().callSite(I, C, "m", "()I").returns(1).done() + .test().privateCallSite(J, C, "m", "()I").throws_(IllegalAccessError.class).done() + .test().callSite(C, C, "m", "()I").returns(1).done() + + .run(); + } + + /* + * testPrivateReabstract + * + * interface I { + * default private int m() { return 1; } + * } + * interface J extends I { + * abstract public int m(); + * } + * class C implements J {} + * + * TEST: { I o = new C(); o.m()I throws IllegalAccessError; } II I.m + * -mode reflect throws NoSuchMethodException + * TEST: { J o = new C(); o.m()I throws java/lang/AbstractMethodError; } + * TEST: { C o = new C(); o.m()I throws java/lang/AbstractMethodError; } + */ + public void testPrivateReabstract() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .private_().returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + Class expectedClass; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedClass = NoSuchMethodException.class; + } else { + expectedClass = IllegalAccessError.class; + } + + b.test().callSite(I, C, "m", "()I").throws_(expectedClass).done() + .test().callSite(J, C, "m", "()I").throws_(AbstractMethodError.class).done() + .test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done() + + .run(); + } + + /* + * testPrivateOverrideAbstract + * + * interface I { + * abstract public int m(); + * } + * interface J extends I { + * default private int m() { return 1; } + * } + * class C implements J {} + * + * TEST: { I o = new C(); o.m()I throws AbstractMethodError } + * TEST: { J o = new C(); o.m()I throws IncompatibleClassChangeError } + * TEST: { C o = new C(); o.m()I throws AbstractMethodError } + */ + /* + REFLECTION: + Test1_I_C_m : FAILED + nsk.share.TestFailure: No exception was thrown: java.lang.AbstractMethodError + Test2_J_C_m : FAILED + nsk.share.TestFailure: No exception was thrown: java.lang.AbstractMethodError + Test3_C_C_m : FAILED + nsk.share.TestFailure: No exception was thrown: java.lang.AbstractMethodError + */ + public void testPrivateOverrideAbstract() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .abstractMethod("m", "()I").build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I") + .private_().returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + Class expectedClass; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedClass = IllegalAccessException.class; + } else { + expectedClass = IncompatibleClassChangeError.class; + } + + b.test().callSite(I, C, "m", "()I").throws_(AbstractMethodError.class).done() + .test().privateCallSite(J, C, "m", "()I").throws_(expectedClass).done() + .test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done() + .run(); + } + + /* + * testPrivateInheritedDefault + * + * interface I { + * default private int m() { return 1; } + * } + * class B implements I {} + * class C extends B {} + * + * TEST: { I o = new C(); o.m()I throws IllegalAccessError } II I.m + * -mode reflect throws NoSuchMethodException + * TEST: { B o = new C(); o.m()I throws NoSuchMethodError } + * TEST: { C o = new C(); o.m()I throws NoSuchMethodError } + */ + public void testPrivateInheritedDefault() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .private_().returns(1).build() + .build(); + + ConcreteClass B = b.clazz("B").implement(I).build(); + ConcreteClass C = b.clazz("C").extend(B).build(); + + Class expectedClass; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedClass = NoSuchMethodException.class; + } else { + expectedClass = IllegalAccessError.class; + } + + b.test().callSite(I, C, "m","()I").throws_(expectedClass).done() + .test().callSite(B, C, "m","()I").throws_(NoSuchMethodError.class).done() + .test().callSite(C, C, "m","()I").throws_(NoSuchMethodError.class).done() + + .run(); + + } + + /* + * testPrivateDefaultVsConcreteInherited + * + * interface I { + * default private int m() { return 1; } + * } + * class B { + * public int m() { return 2; } + * } + * class C extends B implements I {} + * + * TEST: { I o = new C(); o.m()I == throws IllegalAccessError; } + * -mode reflect throws NoSuchMethodException + * TEST: { B o = new C(); o.m()I == 2; } + * TEST: { C o = new C(); o.m()I == 2; } + */ + public void testPrivateDefaultVsConcreteInherited() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .private_().returns(1).build() + .build(); + + ConcreteClass B = b.clazz("B") + .concreteMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").extend(B).implement(I).build(); + + Class expectedClass; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedClass = NoSuchMethodException.class; + } else { + expectedClass = IllegalAccessError.class; + } + + b.test().callSite(I, C, "m","()I").throws_(expectedClass).done() + .test().callSite(B, C, "m","()I").returns(2).done() + .test().callSite(C, C, "m","()I").returns(2).done() + + .run(); + } + + /* + * testPrivateConflict + * + * Conflicting default methods + * + * interface I { + * default private int m() { return 1; } + * } + * interface J { + * default public int m() { return 2; } + * } + * class C implements I, J {} + * + * TEST: { I o = new C(); o.m()I throws IllegalAccessError; } + * -mode reflect throws NoSuchMethodException + * TEST: { J o = new C(); o.m()I == 2; } + * TEST: { C o = new C(); o.m()I == 2; } + */ + public void testPrivateConflict() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").private_().returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I,J).build(); + + Class expectedClass; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedClass = NoSuchMethodException.class; + } else { + expectedClass = IllegalAccessError.class; + } + + b.test().callSite(I, C, "m", "()I").throws_(expectedClass).done() + .test().callSite(J, C, "m", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").returns(2).done() + + .run(); + } + /* + * testPrivateSuperClassMethodNoDefaultMethod + * + * interface I { + * public int m(); + * } + * + * public class A { + * private int m() { return 1; } + * } + * + * public class B extends A implements I {} + * + * public class C extends B { + * public int m() { return 2; } + * } + * + * TEST: { B b = new C(); b.m()I throws IllegalAccessError; } + */ + public void testPrivateSuperClassMethodNoDefaultMethod() { + TestBuilder b = factory.getBuilder(); + + ConcreteClass A = b.clazz("A") + .concreteMethod("m", "()I").private_().returns(1).build() + .build(); + + Interface I = b.intf("I") + .abstractMethod("m", "()I").public_().build() + .build(); + + ConcreteClass B = b.clazz("B").extend(A).implement(I).build(); + + ConcreteClass C = b.clazz("C").extend(B) + .concreteMethod("m", "()I").public_().returns(2).build() + .build(); + + b.test().privateCallSite(B, C, "m", "()I").throws_(IllegalAccessError.class).done() + .run(); + + } + + /* + * testPrivateSuperClassMethodDefaultMethod + * + * interface I { + * public default int m() { return 3; } + * } + * + * public class A { + * private int m() { return 1; } + * } + * + * public class B extends A implements I {} + * + * public class C extends B { + * public int m() { return 2; } + * } + * + * TEST: { B b = new C(); b.m()I throws IllegalAccessError; } + */ + public void testPrivateSuperClassMethodDefaultMethod() { + TestBuilder b = factory.getBuilder(); + + ConcreteClass A = b.clazz("A") + .concreteMethod("m", "()I").private_().returns(1).build() + .build(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").public_().returns(3).build() + .build(); + + ConcreteClass B = b.clazz("B").extend(A).implement(I).build(); + + ConcreteClass C = b.clazz("C").extend(B) + .concreteMethod("m", "()I").public_().returns(2).build() + .build(); + + b.test().privateCallSite(B, C, "m", "()I").throws_(IllegalAccessError.class).done() + .run(); + } + + /* + * testPrivateSuperClassMethodDefaultMethodNoOverride + * + * interface I { + * public default int m() { return 3; } + * } + * + * public class A { + * private int m() { return 1; } + * } + * + * public class B extends A implements I {} + * + * public class C extends B { } + * + * TEST: { B b = new C(); b.m()I throws IllegalAccessError; } + */ + public void testPrivateSuperClassMethodDefaultMethodNoOverride() { + TestBuilder b = factory.getBuilder(); + + ConcreteClass A = b.clazz("A") + .concreteMethod("m", "()I").private_().returns(1).build() + .build(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").public_().returns(3).build() + .build(); + + ConcreteClass B = b.clazz("B").extend(A).implement(I).build(); + + ConcreteClass C = b.clazz("C").extend(B).build(); + + b.test().privateCallSite(B, C, "m", "()I").throws_(IllegalAccessError.class).done() + .run(); + } + +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/README 2018-05-21 10:49:50.581497408 -0700 @@ -0,0 +1,261 @@ +Copyright (c) 2014, 2018, 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. + + +ABOUT + + Once published, it is impossible to add methods to an interface without + breaking existing implementations (specifically, adding a method to an + interface is not a source-compatible change). The longer the time since a + library has been published, the more likely it is that this restriction will + cause grief for its maintainers. + + The addition of closures to the Java language in JDK 8 place additional stress + on the aging Collection interfaces; one of the most significant benefits of + closures is that it enables the development of more powerful libraries. It + would be disappointing to add a language feature that enables better libraries + while at the same time not extending the core libraries to take advantage of + that feature. + + A mechanism for adding new methods to existing interfaces is proposed, which is + called virtual extension (or default) methods. Existing interfaces can be + augmented without compromising backward compatibility by adding extension + methods to the interface, whose declaration would contain instructions for + finding the default implementation in the event that implementers do not + provide a method body. A key characteristic of extension methods is that they + are virtual methods just like other interface methods, but provide a default + implementation in the event that the implementing class does not provide a + method body. + + VM support is necessary to implement virtual extension methods. + + +OVERVIEW + + The test suite is organized in the following manner. + + The tests rely on a framework to generate class hierarchies and tests + directly in bytecode from a pseudo-code in Java. Pseudo-code is written + using builder pattern and fluent coding style. + + The framework is located in src/vm/runtime/defmeth/shared and divided into + /data and /builder sections. + + As an example, the following code: + + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .concreteMethod("m", "()I").returns(2).build() + .build(); + + b.test().callSite(I, C, "m", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").returns(2).done() + + .run(); + + translates into bytecode equivalent of: + + 2-class hierarchy: + + interface I { + int m() default { return 1; } + } + + class C implements I { + public int m() { return 2; } + } + + and 2 tests: + + Test1_I_C_m { + static void test() { + I i = new C(); + if (i.m() != 2) throw new TestFailure(); + } + } + + Test2_C_C_m { + static void test() { + C c = new C(); + if (c.m() != 2) throw new TestFailure(); + } + } + + TestBuilder.run() calls Test1_I_C_m.test() and Test2_C_C_m.test() and + performs failure reporting, if necessary. + + All tests are located in src/vm/runtime/defmeth and are grouped according + to the area they excercise. The test groups are: + - AccessibilityFlagsTest + - BasicTest + - ConflictingDefaultsTest + - DefaultVsAbstractTest + - MethodResolutionTest + - ObjectMethodOverridesTest + - PrivateMethodsTest + - RedefineTest + - StaticMethodsTest + - StressTest + - SuperCallTest + + Each test group can be executed in different modes. For each mode there's a + corresponding scenario in src/vm/runtime/defmeth/scenarios. + + Scenarios are organized in the following manner: + + .../scenarios/[test_group]_[majorVer]_[methodFlags]_[invocationType]_[shouldRedefine] + + where + + majorVer - major version of class files for generated concrete classes + values: ver49, ver50, ver51, ver52 + + methodFlags - additional access flags for methods in generated classes + values: + none == no additional flags + sync == ACC_SYNCHRONIZED + strict == ACC_STRICT + syncstrict == ACC_SYNCHRONIZED | ACC_STRICT + + invocationType - how methods in test hiearchies are invoked during testing + values: + direct - using invoke* bytecodes + reflect - using Reflection API + invoke - using invokedynamic & java.lang.invoke API (MethodHandles/JSR292) + + redefine - whether to preload and redefine classes before running individual tests + values: redefine, noredefine + + testGroup - name of test group being used + values: BasicTests/BridgeMethod/etc + + +STRESS TESTING + + Stress test differs from other scenarios - it has only 2 modes: redefine and noredefine. + + Stress scenario is the following: + - in multiple threads (5 by default)... + - ... continuously run random vm.runtime.defmeth.* tests ... + - ... in random configurations ... + - ... until predefined period of time is over... + - ... or any failures occured. + + +HOW TO RUN + + Directly from command-line: + + $ java -cp ${VMTESTBASE}/bin/classes vm.runtime.defmeth.shared.DefMethTest + + Specify testing mode: + -flags + additional access flags on default methods (default: 0) + + -ver + class file major version (default: 52) + + -redefine + redefine classes during execution (default: false) + + -mode [direct|reflect|invoke] + specify method invocation mechanism (default: direct): + - direct - invoke* instructions in bytecode + - reflect - Reflection API + - invoke - invokedynamic & MethodHandle.invoke* + + -execMode [DIRECT|REFLECTION|INVOKE_EXACT|INVOKE_GENERIC|INVOKE_WITH_ARGS|INDY] + specify concrete execution mode + + Execution-specific flags: + -list + list available tests + + -filter + filter tests by name + (default: .* ) + + If you run tests directly from command line, in order to make "-redefine true", + StressTest or RedefineTest work, additional steps are necessary: + add -agentlib:redefineClasses to JVM options + set correct LD_LIBRARY_PATH: + LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${VM_TESTBASE}/bin/lib/${PLATFORM}/vm/runtime/defmeth/shared/ + + Also, it is possible to run any test group directly: + + $ java -cp ${VMTESTBASE}/bin/classes vm.runtime.defmeth.BasicTest + + StressTest has some specific options: + -stressTime + Stress execution time in seconds (default: 60) + + -stressThreadsFactor + Stress threads factor (default: 1) + + -seed + force deterministic behavior (default: 0) + + -redefine + use scenarios w/ class redefinition (default: false) + + -ver + minimum class file version to be used in the tests (default: 49) + + -ignoreTestFailures + ignore failures of individual tests + + To simplify failure analysis, the framework has some additional flags to produce + diagnostics output: + + -Dvm.runtime.defmeth.printTests + print pseudo-code for each test; + + -Dvm.runtime.defmeth.printAssembly + print bytecode assembly for all generated class files; + + -Dvm.runtime.defmeth.printASMify + print "asmified" version of generated class files; + very useful when preparing reduced test cases. + + -Dvm.runtime.defmeth.dumpClasses + dump class files under DUMP_CLASS_FILES in folder + + -Dvm.runtime.defmeth.printStackTrace + print full stack traces for all errors and test failures + + -Dvm.runtime.defmeth.traceClassRedefinition + trace class redefinition during testing + +LINKS + + [1] "Design and Implementation of Default Methods in Hotspot JVM", by Keith McGuigan, 09/18/2012 + http://cr.openjdk.java.net/~kamg/default_methods_in_hotspot.txt + + [2] "Featherweight Defenders: A formal model for virtual extension methods in Java", by Brian Goetz, Robert Field, 03/27/2012 + http://cr.openjdk.java.net/~briangoetz/lambda/featherweight-defenders.pdf + + [3] "Interface evolution via virtual extension methods", by Brian Goetz, 4th draft, 06/2011 + http://cr.openjdk.java.net/~briangoetz/lambda/Defender%20Methods%20v4.pdf --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/RedefineTest.java 2018-05-21 10:49:50.857497415 -0700 @@ -0,0 +1,235 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import nsk.share.Pair; +import nsk.share.TestFailure; +import nsk.share.test.TestBase; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.DefMethTestFailure; +import vm.runtime.defmeth.shared.MemoryClassLoader; +import vm.runtime.defmeth.shared.annotation.NotApplicableFor; +import vm.runtime.defmeth.shared.builder.TestBuilder; +import vm.runtime.defmeth.shared.executor.TestExecutor; +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.ConcreteClass; +import vm.runtime.defmeth.shared.data.Interface; +import vm.runtime.defmeth.shared.data.Tester; +import static vm.runtime.defmeth.shared.ExecutionMode.*; + +/* + * Basic scenarios on class redefinition. + */ +public class RedefineTest extends DefMethTest { + + public static void main(String[] args) { + TestBase.runTest(new RedefineTest(), args); + } + + @Override + protected void configure() { + // There are no testers being generated for reflection-based scenarios, + // so scenarios on class redefinition don't work + String mode = factory.getExecutionMode(); + if ( "REFLECTION".equals(mode) || "INVOKE_WITH_ARGS".equals(mode)) { + throw new TestFailure("RedefineTest isn't applicable to reflection-based execution scenario " + + "(REDEFINE & INVOKE_WITH_ARGS)."); + } + } + + /** + * Run test {@code b1} w/ redefined {@code classes} from {@code b2}. + * + * @param b1 + * @param b2 + * @param classes + */ + private void redefineAndRun(TestBuilder b1, TestBuilder b2, Clazz... classes) { + TestExecutor executor = b1.prepare(); + + getLog().info("Before"); + List> errorsBefore = + executor.run(); // run b1 + + // redefine in b1 + MemoryClassLoader cl = executor.getLoader(); // b1.cl + Map cf = b2.produce(); // + Map forRedef = new HashMap<>(); + for (Clazz clz : classes) { + String name = clz.name(); + forRedef.put(name, cf.get(name)); + } + + cl.modifyClasses(forRedef, factory.isRetransformClasses()); + + getLog().info("After"); + List> errorsAfter = + executor.run(); + + if (!errorsBefore.isEmpty()) { + throw new DefMethTestFailure(errorsBefore); + } + + if (!errorsAfter.isEmpty()) { + throw new DefMethTestFailure(errorsAfter); + } + } + + /* + * Before redefinition: + * interface I { public int m() { return 1; } } + * class C extends I { public int m() { return 2; } } + * + * TEST: I i = new C(); i.m() == 2 + * TEST: C c = new C(); c.m() == 2 + * + * After redefinition: + * interface I { public int m() { return 1; } } + * class C extends I { public int m() { return 3; } } + * + * TEST: I i = new C(); i.m() == 3 + * TEST: C c = new C(); c.m() == 3 + */ + @NotApplicableFor(modes = { REFLECTION, INVOKE_WITH_ARGS }) // reflection-based scenarios rely on checks in bytecode + public void testRedefineConcreteMethod() { + TestBuilder before = factory.getBuilder(); + { // Before redefinition + Interface I = before.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + ConcreteClass C = before.clazz("C").implement(I) + .concreteMethod("m", "()I").returns(2).build() + .build(); + + before.test().callSite(I, C, "m", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").returns(2).done(); + } + + { // After redefinition + TestBuilder after = factory.getBuilder(); + + Interface I = after.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + ConcreteClass C = after.clazz("C").implement(I) + .concreteMethod("m", "()I").returns(3).build() + .build(); + + Tester T1 = after.test().callSite(I, C, "m", "()I").returns(3).build(); + Tester T2 = after.test().callSite(C, C, "m", "()I").returns(3).build(); + + redefineAndRun(before, after, C, T1, T2); + } + } + + /* + * Before redefinition: + * interface I { public int m() { return 1; } } + * class C extends I { public int m() { return 2; } } + * + * TEST: I i = new C(); i.m() == 2 + * TEST: C c = new C(); c.m() == 2 + * + * After redefinition: + * interface I { public int m() { return 3; } } + * class C extends I { public int m() { return 2; } } + * + * TEST: I i = new C(); i.m() == 2 + * TEST: C c = new C(); c.m() == 2 + */ + @NotApplicableFor(modes = { REFLECTION, INVOKE_WITH_ARGS }) // reflection-based scenarios rely on checks in bytecode + public void testRedefineDefaultMethod() { + TestBuilder before = factory.getBuilder(); + { // Before redefinition + Interface I = before.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + ConcreteClass C = before.clazz("C").implement(I) + .concreteMethod("m", "()I").returns(2).build() + .build(); + + before.test().callSite(I, C, "m", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").returns(2).done(); + } + + { // After redefinition + TestBuilder after = factory.getBuilder(); + + Interface I = after.intf("I") + .defaultMethod("m", "()I").returns(3).build() + .build(); + ConcreteClass C = after.clazz("C").implement(I) + .concreteMethod("m", "()I").returns(2).build() + .build(); + + redefineAndRun(before, after, C); + } + } + + /* + * Before redefinition: + * interface I { public int m() { return 1; } } + * class C extends I {} + * + * TEST: I i = new C(); i.m() == 1 + * TEST: C c = new C(); c.m() == 1 + * + * After redefinition: + * interface I { public int m() { return 2; } } + * class C extends I {} + * + * TEST: I i = new C(); i.m() == 2 + * TEST: C c = new C(); c.m() == 2 + */ + @NotApplicableFor(modes = { REFLECTION, INVOKE_WITH_ARGS }) // reflection-based scenarios rely on checks in bytecode + public void testRedefineDefMethInConcreteClass() { + TestBuilder before = factory.getBuilder(); + { // Before redefinition + Interface I = before.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + ConcreteClass C = before.clazz("C").implement(I).build(); + + before.test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(C, C, "m", "()I").returns(1).done(); + } + + { // After redefinition + TestBuilder after = factory.getBuilder(); + + Interface I = after.intf("I") + .defaultMethod("m", "()I").returns(2).build() + .build(); + ConcreteClass C = after.clazz("C").implement(I).build(); + + Tester T1 = after.test().callSite(I, C, "m", "()I").returns(2).build(); + Tester T2 = after.test().callSite(C, C, "m", "()I").returns(2).build(); + + redefineAndRun(before, after, I, T1, T2); + } + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/StaticMethodsTest.java 2018-05-21 10:49:51.141497422 -0700 @@ -0,0 +1,838 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth; + +import nsk.share.test.TestBase; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.annotation.Crash; +import vm.runtime.defmeth.shared.data.*; +import vm.runtime.defmeth.shared.builder.TestBuilder; +import vm.runtime.defmeth.shared.annotation.NotApplicableFor; +import static vm.runtime.defmeth.shared.data.method.body.CallMethod.Invoke.*; +import static vm.runtime.defmeth.shared.data.method.body.CallMethod.IndexbyteOp.*; +import static vm.runtime.defmeth.shared.ExecutionMode.*; + +/* + * Scenarios on static methods in interfaces. + */ +public class StaticMethodsTest extends DefMethTest { + + public static void main(String[] args) { + TestBase.runTest(new StaticMethodsTest(), args); + } + + // static method in interface + /* + * testStaticMethod + * + * interface I { + * default static public int m() { return 1; } + * } + * + * class C implements I {} + */ + public void testStaticMethod() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .static_().public_().returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().staticCallSite(I, "m", "()I").returns(1).done() + + .run(); + } + + // invoke[virtual|interface|special] from same/subintf + /* + * testInvokeVirtual + * + * interface I { + * default static public int staticM() { return 1; } + * default public int m() { return ((I)this).staticM(); } + * } + * + * class C implements I {} + */ + public void testInvokeVirtual() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("staticM", "()I") + .static_().public_().returns(1).build() + + // force an invokevirtual MR of staticM() + .defaultMethod("m", "()I") + .invoke(VIRTUAL, b.intfByName("I"), null, "staticM", "()I", METHODREF).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().staticCallSite(I, "staticM", "()I").returns(1).done() + + .test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + + .run(); + } + + /* + * testInvokeIntf + * + * interface I { + * default static public int staticM() { return 1; } + * default public int m() { return ((I)this).staticM(); } + * } + * + * class C implements I {} + */ + public void testInvokeIntf() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("staticM", "()I") + .static_().public_().returns(1).build() + + .defaultMethod("m", "()I") + .invoke(INTERFACE, b.intfByName("I"), null, "staticM", "()I", CALLSITE).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().staticCallSite(I, "staticM", "()I").returns(1).done() + + .test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + + .run(); + } + + /* + * testInvokeSpecial + * + * interface I { + * default static public int staticM() { return 1; } + * default public int m() { return I.super.staticM(); } + * } + * + * class C implements I {} + */ + public void testInvokeSpecial() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("staticM", "()I") + .static_().public_().returns(1).build() + + .defaultMethod("m", "()I") + .invoke(SPECIAL, b.intfByName("I"), null, "staticM", "()I", CALLSITE).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().staticCallSite(I, "staticM", "()I").returns(1).done() + + .test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + + .run(); + } + + /* + * testStaticVsDefault + * + * interface I { + * default static public int m() { return 1; } + * default public int m() { return 2; } + * } + * + * class C implements I {} + */ + public void testStaticVsDefault() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .static_().public_().returns(1).build() + .defaultMethod("m", "()I") + .public_().returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().staticCallSite(I, "m", "()I").throws_(ClassFormatError.class).done() + + // FIXME: throws exception during an attempt to lookup Test2.test() method + + // Invalid test. ClassFormatError is thrown at verification time, rather + // than execution time. + // .test().callSite(I, C, "m", "()I").throws_(ClassFormatError.class).done() + .test().callSite(C, C, "m", "()I").throws_(ClassFormatError.class).done() + + .run(); + } + + // call static method from default method + /* + * testInvokeFromDefaultMethod + * + * interface I { + * default static public int staticPublicM() { return 1; } + * default public int invokePublic() { return I.staticPublicM(); } + * default static private int staticPrivateM() { return 1; } + * default public int invokePrivate() { return I.staticPrivateM(); } + * } + * + * class C implements I {} + */ + public void testInvokeFromDefaultMethod() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("staticPublicM", "()I") + .static_().public_().returns(1).build() + .defaultMethod("invokePublic", "()I") + .invokeStatic(b.intfByName("I"), "staticPublicM", "()I").build() + + .defaultMethod("staticPrivateM", "()I") + .static_().private_().returns(1).build() + .defaultMethod("invokePrivate", "()I") + .invokeStatic(b.intfByName("I"), "staticPrivateM", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + Class expectedClass; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedClass = NoSuchMethodException.class; + } else { + expectedClass = IllegalAccessError.class; + } + + // call static method from another class + b.test().staticCallSite(I, "staticPublicM", "()I").returns(1).done() + .test().staticCallSite(I, "staticPrivateM", "()I").throws_(expectedClass).done() + + // call public static method from default method + .test().callSite(I, C, "invokePublic", "()I").returns(1).done() + .test().callSite(C, C, "invokePublic", "()I").returns(1).done() + + // call private static method from default method + .test().callSite(I, C, "invokePrivate", "()I").returns(1).done() + .test().callSite(C, C, "invokePrivate", "()I").returns(1).done() + + .run(); + } + + // call static method from implementing subclass + /* + * testInvokeFromSubclass + * + * interface I { + * default static public int staticPublicM() { return 1; } + * default static private int staticPrivateM() { return 1; } + * } + * + * class C implements I { + * public int invokePublic() { return I.staticPublicM(); } + * public int invokePrivate() { return I.staticPublicM(); } + * + * I.staticPublicM(); ==> returns 1; + * I.staticPrivateM(); ==> Either NSME or IAE depending on execution mode + * C c = new C(); c.invokePublic(); ==> returns 1 or if -ver < 52 IAE or VerifyError + * C c = new C(); c.invokePrivate() ==> IAE or if -ver < 52, IAE or VerifyError + * } + */ + + @NotApplicableFor(modes = { REDEFINITION }) // Can't redefine a class that gets error during loading + public void testInvokeFromSubclass() throws Exception { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("staticPublicM", "()I") + .static_().public_().returns(1).build() + + .defaultMethod("staticPrivateM", "()I") + .static_().private_().returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .concreteMethod("invokePublic", "()I") + .invokeStatic(b.intfByName("I"), "staticPublicM", "()I").build() + .concreteMethod("invokePrivate", "()I") + .invokeStatic(b.intfByName("I"), "staticPrivateM", "()I").build() + .build(); + + Class expectedError1; + if (factory.getExecutionMode().equals("REFLECTION")) { + expectedError1 = NoSuchMethodException.class; + } else { + expectedError1 = IllegalAccessError.class; + } + + // Adjust for -ver < 52 + if (factory.getVer() >=52) { + // call static method from another class + b.test().staticCallSite(I, "staticPublicM", "()I").returns(1).done() + .test().staticCallSite(I, "staticPrivateM", "()I").throws_(expectedError1).done() + + // call static method from implementing subclass + .test().callSite(C, C, "invokePublic", "()I").returns(1).done() + .test().callSite(C, C, "invokePrivate", "()I").throws_(IllegalAccessError.class).done() + + .run(); + } else { + // call static method from another class + b.test().staticCallSite(I, "staticPublicM", "()I").returns(1).done() + .test().staticCallSite(I, "staticPrivateM", "()I").throws_(expectedError1).done() + + // call static method from implementing subclass + // invokestatic IMR - not supported for ver < 52 + .test().callSite(C, C, "invokePublic", "()I").throws_(VerifyError.class).done() + .test().callSite(C, C, "invokePrivate", "()I").throws_(VerifyError.class).done() + + .run(); + } + } + + // static method doesn't participate in default method analysis: + // method overriding + /* + * testNotInherited + * + * interface I { + * default static public int m() { return 1; } + * } + * + * class C implements I {} + */ + public void testNotInherited() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .static_().public_().returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + if (!factory.getExecutionMode().equals("REFLECTION")) { + b.test().staticCallSite(I, "m", "()I").returns(1).done() + // invokeinterface to static method ==> ICCE + .test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(C, C, "m", "()I").throws_(NoSuchMethodError.class).done() + .run(); + } else { + b.test().staticCallSite(I, "m", "()I").returns(1).done() + .test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(C, C, "m", "()I").throws_(NoSuchMethodError.class).done() + .run(); + } + } + + /* + * testDefaultVsConcrete + * + * interface I { + * default static public int m() { return 1; } + * } + * + * class C implements I { + * public int m() { return 2; } + * } + * TEST: I o = new C(); o.m()I throws ICCE + * TEST: C o = new C(); o.m()I == 2 + */ + public void testDefaultVsConcrete() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .static_().public_().returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I) + .concreteMethod("m", "()I").returns(2).build() + .build(); + + if (!factory.getExecutionMode().equals("REFLECTION")) { + // invokeinterface to static method ==> ICCE + b.test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(C, C, "m", "()I").returns(2).done().run(); + } else { + b.test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(C, C, "m", "()I").returns(2).done().run(); + } + + } + + /* + * TEST: StaticMethodsTest.testOverrideStatic + * + * interface I { + * default static public int m() { return 1; } + * } + * + * interface J extends I { + * default public int m() { return 2; } + * } + * + * class C implements J { + * } + */ + public void testOverrideStatic() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .static_().public_().returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I") + .returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + if (!factory.getExecutionMode().equals("REFLECTION")) { + b.test().staticCallSite(I, "m", "()I").returns(1).done() + .test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(J, C, "m", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").returns(2).done() + .run(); + } else { + b.test().staticCallSite(I, "m", "()I").returns(1).done() + .test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(J, C, "m", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").returns(2).done() + .run(); + } + + } + + /* + * testOverrideDefault + * + * interface I { + * default public int m() { return 1; } + * } + * + * interface J extends I { + * default static public int m() { return 2; } + * } + * + * class C implements J {} + * + * TEST: I o = new C(); o.m()I == 1 + * TEST: J o = new C(); o.m()I == ICCE + * TEST: C o = new C(); o.m()I == 1 + */ + public void testOverrideDefault() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I") + .static_().public_().returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + if (!factory.getExecutionMode().equals("REFLECTION")) { + b.test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(J, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(C, C, "m", "()I").returns(1).done() + + .run(); + + } else { + // Reflection correctly finds the static method defined in J and + // calls it with invokestatic. + + b.test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(J, C, "m", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").returns(1).done() + + .run(); + } + } + + /* + * testReabstract + * + * interface I { + * default static public int m() { return 1; } + * } + * + * interface J extends I { + * abstract public int m(); + * } + * + * class C implements J {} + * + * TEST: I o = new C(); o.m()I throws ICCE + * -mode reflect returns 1 + * TEST: J o = new C(); o.m()I throws AME + * TEST: C o = new C(); o.m()I throws AME + */ + public void testReabstract() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .static_().public_().returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + if (!factory.getExecutionMode().equals("REFLECTION")) { + b.test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(J, C, "m", "()I").throws_(AbstractMethodError.class).done() + .test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done() + .run(); + } else { + b.test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(J, C, "m", "()I").throws_(AbstractMethodError.class).done() + .test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done() + .run(); + } + } + + /* + * testOverrideAbstract + * + * interface I { + * abstract public int m(); + * } + * + * interface J extends I { + * default static public int m() { return 1; } + * } + * + * class C implements J {} + * + * TEST: I o = new C(); o.m()I throws AME + * TEST: J o = new C(); o.m()I throws ICCE + * -mode reflect returns 1 + * TEST: C o = new C(); o.m()I throws AME + */ + public void testOverrideAbstract() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .abstractMethod("m", "()I").build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I") + .static_().public_().returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + if (!factory.getExecutionMode().equals("REFLECTION")) { + b.test().callSite(I, C, "m", "()I").throws_(AbstractMethodError.class).done() + .test().callSite(J, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done() + + .run(); + } else { + b.test().callSite(I, C, "m", "()I").throws_(AbstractMethodError.class).done() + .test().callSite(J, C, "m", "()I").returns(1).done() + .test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done() + + .run(); + } + } + + /* + * testInheritedDefault + * + * interface I { + * default static public int m() { return 1; } + * } + * + * class B implements I {} + * + * class C extends B {} + * + * TEST: I o = new C(); o.m()I throws IncompatibleClassChangeError + * -mode reflect returns 1 + * TEST: B o = new C(); o.m()I throws NoSuchMethodError + * TEST: C o = new C(); o.m()I throws NoSuchMethodError + */ + public void testInheritedDefault() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .static_().public_().returns(1).build() + .build(); + + ConcreteClass B = b.clazz("B").implement(I).build(); + ConcreteClass C = b.clazz("C").extend(B).build(); + + if (!factory.getExecutionMode().equals("REFLECTION")) { + b.test().callSite(I, C, "m","()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(B, C, "m","()I").throws_(NoSuchMethodError.class).done() + .test().callSite(C, C, "m","()I").throws_(NoSuchMethodError.class).done() + .run(); + } else { + b.test().callSite(I, C, "m","()I").returns(1).done() + .test().callSite(B, C, "m","()I").throws_(NoSuchMethodError.class).done() + .test().callSite(C, C, "m","()I").throws_(NoSuchMethodError.class).done() + .run(); + } + + } + + /* + * testDefaultVsConcreteInherited + * + * interface I { + * default static public int m() { return 1; } + * } + * + * class B { + * public int m() { return 2; } + * } + * + * class C extends B implements I {} + * + */ + public void testDefaultVsConcreteInherited() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .static_().public_().returns(1).build() + .build(); + + ConcreteClass B = b.clazz("B") + .concreteMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").extend(B).implement(I).build(); + + if (!factory.getExecutionMode().equals("REFLECTION")) { + b.test().staticCallSite(I, "m","()I").returns(1).done() + .test().callSite(I, C, "m","()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(B, C, "m","()I").returns(2).done() + .test().callSite(C, C, "m","()I").returns(2).done() + .run(); + } else { + b.test().staticCallSite(I, "m","()I").returns(1).done() + .test().callSite(I, C, "m","()I").returns(1).done() + .test().callSite(B, C, "m","()I").returns(2).done() + .test().callSite(C, C, "m","()I").returns(2).done() + .run(); + } + + } + + /* + * testDefaultVsStaticConflict + * + * interface I { + * default static public int m() { return 1; } + * } + * + * interface J { + * default public int m() { return 2; } + * } + * + * class C implements I, J {} + * + * TEST: I o = new C(); o.m()I throws ICCE + * -mode reflect returns 1 + * TEST: J o = new C(); o.m()I == 2 + * TEST: C o = new C(); o.m()I == 2 + */ + public void testDefaultVsStaticConflict() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .static_().public_().returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I,J).build(); + + if (!factory.getExecutionMode().equals("REFLECTION")) { + b.test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(J, C, "m", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").returns(2).done() + .run(); + } else { + b.test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(J, C, "m", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").returns(2).done() + .run(); + } + + } + /* + * testStaticSuperClassVsDefaultSuperInterface + * + * interface I { + * default public int m() { return 1; } + * } + * + * class A { + * public static int m() { return 2; } + * } + * + * class C extends A implements I {} + * + * TEST: C o = new C(); o.m()I throws ICCE + * -mode reflect returns 2 + * TEST: I o = new C(); o.m()I == 1 + */ + public void testStaticSuperClassVsDefaultSuperInterface() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .public_().returns(1).build() + .build(); + + ConcreteClass A = b.clazz("A") + .concreteMethod("m", "()I") + .static_().public_().returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").extend(A).implement(I).build(); + + if (!factory.getExecutionMode().equals("REFLECTION")) { + b.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(I, C, "m", "()I").returns(1).done() + .run(); + } else { + b.test().callSite(C, C, "m", "()I").returns(2).done() + .test().callSite(I, C, "m", "()I").returns(1).done() + .run(); + } + } + /* + * testStaticLocalVsDefaultSuperInterface + * + * interface I { + * default public int m() { return 1; } + * } + * + * class A implements I { + * public static int m() { return 2; } + * } + * + * class C extends A implements I {} + * + * TEST: A o = new A(); o.m()I throws ICCE + * -mode reflect returns 2 + * TEST: I o = new A(); o.m()I == 1 + */ + public void testStaticLocalVsDefaultSuperInterface() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .public_().returns(1).build() + .build(); + + ConcreteClass A = b.clazz("A").implement(I) + .concreteMethod("m", "()I") + .static_().public_().returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").extend(A).implement(I).build(); + + if (!factory.getExecutionMode().equals("REFLECTION")) { + b.test().callSite(A, A, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(I, A, "m", "()I").returns(1).done() + .run(); + } else { + b.test().callSite(A, A, "m", "()I").returns(2).done() + .test().callSite(I, A, "m", "()I").returns(1).done() + .run(); + } + } + /* + * testConflictingDefaultsandStaticMethod + * @bug 8033150 + * + * interface I { + * default public int m() { return 1; } + * } + * + * interface J { + * default public int m() { return 2; } + * } + * + * class A implements I, J { + * public static int m() { return 3; } + * } + * + * class C extends A {} + * + * TEST: C.m(); should call A.m, return value = 3 + */ + public void testConflictingDefaultsandStaticMethod() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I") + .public_().returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I") + .public_().returns(2).build() + .build(); + + ConcreteClass A = b.clazz("A").implement(I,J) + .concreteMethod("m", "()I") + .static_().public_().returns(3).build() + .build(); + + ConcreteClass C = b.clazz("C").extend(A).build(); + + b.test().staticCallSite(C, "m", "()I").returns(3).done() + .run(); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/StressTest.java 2018-05-21 10:49:51.417497429 -0700 @@ -0,0 +1,315 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Random; +import nsk.share.TestFailure; +import nsk.share.test.StressOptions; +import nsk.share.test.Stresser; +import vm.runtime.defmeth.shared.Constants; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.ExecutionMode; +import vm.runtime.defmeth.shared.builder.TestBuilder; +import vm.share.options.Option; +import vm.share.options.OptionSupport; +import vm.share.options.Options; +import static jdk.internal.org.objectweb.asm.Opcodes.*; + +/* + * Stress test for default methods implementation. + * + * Stress scenario is the following: + * - in multiple threads ... + * - ... continuously run random tests ... + * - ... in random configuration ... + * - ... until predefined period of time is over... + * - ... or any failures occured. + */ +public class StressTest implements Runnable { + @Options + private StressOptions opts = new StressOptions(); + + @Option(name="seed", default_value="0", description="force deterministic behavior") + private int seed; + + @Option(name="redefine", default_value="false", description="use scenarios w/ class redefinition") + private boolean doRedefine; + + @Option(name="ver", default_value="49", description="minimum class file version to be used in the tests") + private int minMajorVer; + + @Option(name="ignoreTestFailures", default_value="false", description="ignore failures of the executed tests") + private boolean ignoreTestFailures; + + class Worker extends Thread { + private final Random rand; + + private volatile DefMethTest failedTest; + private Throwable reason; + private volatile long executedTests = 0; + + public Worker(String id, int seed) { + setName(id); + this.rand = new Random(seed); + } + + @Override + public void run() { + while (!Thread.interrupted()) { + int idx = rand.nextInt(testlist.size()); + DefMethTest test = testlist.get(idx); + try { + test.run(); + executedTests++; + if (test.isFailed()) { + throw new TestFailure(test.toString()); + } + } catch (Throwable e) { + if (!ignoreTestFailures) { + failedTest = test; + reason = e; + break; + } + } + } + } + + public boolean isFailed() { return failedTest != null; } + public Throwable getReason() { return reason; } + public DefMethTest getFailedTest() { return failedTest; } + public long getExecutedTests() { return executedTests; } + } + + private List testlist; + + private Worker[] workers; + + Stresser stresser; + + public static void main(String[] args) { + StressTest test = new StressTest(); + OptionSupport.setupAndRun(test, args); + } + + @Override + public void run() { + configureTests(); + startWorkers(); + + stresser = new Stresser(opts); + try { + stresser.start(0); + while (workersAlive() && stresser.continueExecution()) { + printStats(); + + try { + Thread.sleep(1000); + } catch (InterruptedException ex) {} + } + } finally { + interruptWorkers(); + joinWorkers(); + + stresser.finish(); + } + } + + private void configureTests() { + int[] majorVerValues = new int[52 - minMajorVer + 1]; + for (int i = 0; i< majorVerValues.length; i++) { + majorVerValues[i] = minMajorVer + i; + } + + int[] flagsValues = new int[] { + 0, + ACC_STRICT, + ACC_SYNCHRONIZED, + ACC_STRICT | ACC_SYNCHRONIZED + }; + + boolean[] doRedefineValues; + if (doRedefine) { + doRedefineValues = new boolean[] { true, false}; + } else { + doRedefineValues = new boolean[] { false }; + } + + // Upper limit for test count + int testCount = DefMethTest.getTests().size() * majorVerValues.length + * flagsValues.length * doRedefineValues.length; + + testlist = new ArrayList<>(testCount); + + // Enumerate all tests in all possible modes + for (Class testClass : DefMethTest.getTests()) { + for (ExecutionMode mode : ExecutionMode.values()) { + // Skip REDEFINITION execmode, the top README file indicates that it isn't a + // valid execution mode and there's also no code supporting this in the test generator. + if ("REDEFINITION".equals(mode.toString())) { + continue; + } + + for (int majorVer : majorVerValues) { + for (int flags : flagsValues ) { + for (boolean redefine : doRedefineValues) { + // RedefineTest isn't applicable to reflection-based execution scenario (REDEFINE & INVOKE_WITH_ARGS) + if (testClass == RedefineTest.class && mode.isReflectionBased()) { + continue; + } + + // Only run the RedefineTest tests when redefining + if (!redefine && testClass == RedefineTest.class) { + continue; + } + + try { + DefMethTest test = testClass.newInstance(); + + OptionSupport.setup(test, new String[] { + "-execMode", mode.toString(), + "-ver", Integer.toString(majorVer), + "-flags", Integer.toString(flags), + "-redefine", Boolean.toString(redefine), + "-ignoreCrashes", + "-ignoreKnownFailures", + "-silent", + "-failfast"}); + + testlist.add(test); + } catch (InstantiationException | IllegalAccessException ex) { + throw new TestFailure(ex); + } + } + } + } + } + } + + System.out.printf("Testlist size: %d\n", testlist.size()); + } + + private void startWorkers() { + Random rand; + if (seed == 0) { + seed = (new Random()).nextInt(); + } + + System.out.printf("Seed: %d\n", seed); + rand = new Random(seed); + + //Workaround for the deadlock caused by + // JDK-7122142: "(ann) Race condition between isAnnotationPresent and getAnnotations" + try { + // Do a warm-up cycle + for (Class testClass : DefMethTest.getTests()) { + DefMethTest test = testClass.newInstance(); + + OptionSupport.setupAndRun(test, + new String[] { "-silent", "-ignoreKnownFailures"}); + } + } catch(InstantiationException | IllegalAccessException e) { + throw new RuntimeException(e); + } + + int threadsCount = opts.getThreadsFactor(); + if (threadsCount == 1) { + threadsCount = 5; + } + + workers = new Worker[threadsCount]; + + System.out.printf("Spawning %d workers...\n", workers.length); + + for (int i = 0; i < workers.length; i++) { + workers[i] = new Worker( + String.format("Worker #%d/%d", i+1, workers.length), + rand.nextInt()); + } + + for (Worker worker : workers) { + worker.start(); + } + } + + private void interruptWorkers() { + for (Worker worker : workers) { + worker.interrupt(); + } + } + + private void joinWorkers() { + boolean isFailed = false; + + for (Worker worker : workers) { + while (worker.isAlive()) { + try { + worker.join(); + } catch (InterruptedException e) {} + } + + System.out.printf("%s: %s (executed: %d)\n", + worker.getName(), + worker.isFailed() ? "FAILED: " + worker.getFailedTest() : "PASSED", + worker.getExecutedTests()); + + if (worker.isFailed()) { + if (Constants.PRINT_STACK_TRACE) { + worker.getReason().printStackTrace(); + } + + isFailed = true; + } + } + + if (isFailed) { + throw new TestFailure("Some of the worker threads failed."); + } + } + + private boolean workersAlive() { + for (Worker worker : workers) { + if (!worker.isAlive()) { + return false; + } + } + + return true; + } + + private void printStats() { + long[] counts = new long[workers.length]; + for (int i = 0; i < counts.length; i++) { + counts[i] = workers[i].executedTests; + } + + StringBuilder msg = new StringBuilder(); + msg.append(stresser.getTimeLeft() / 1000).append("s left: "); + msg.append(Arrays.toString(counts)); + + System.out.println(msg); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/SuperCallTest.java 2018-05-21 10:49:51.693497436 -0700 @@ -0,0 +1,771 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth; + +import nsk.share.test.TestBase; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.annotation.KnownFailure; +import vm.runtime.defmeth.shared.annotation.NotApplicableFor; +import vm.runtime.defmeth.shared.data.*; +import vm.runtime.defmeth.shared.builder.TestBuilder; +import static vm.runtime.defmeth.shared.ExecutionMode.*; + +/* + * Tests on invoke-super-default. + * + * Invoke-super-default is used by a subclass to defer to a default method + * implementation or to disambiguate between conflicting inherited default + * methods. + * + * Invoke-super-default appears in the source code as + * ".super.()". It is compiled into an + * invokespecial instruction whose target is ., + * where the interface is a direct supertype of the current class (the current class + * must directly implement ). + * + * 0.6.3 JVMS draft for JDK8 updated. + * Invokespecial on any superinterface method will run interface method + * resolution, and then the selected method will be set to the resolved method. + * super defaults no longer check for lack of shadowing, other languages + * want this capability. + */ +public class SuperCallTest extends DefMethTest { + + @Override + protected void configure() { + // Since invoke-super-default relies on new semantics of invokespecial, + // the tests are applicable only to class files of 52 version. + if (factory.getVer() != 52) { + getLog().warn("WARN: SuperCallTest is applicable only for class files w/ version 52."); + getLog().warn("WARN: Overriding \"-ver " + factory.getVer() + "\" w/ \"-ver 52\"."); + + factory.setVer(52); + } + } + + public static void main(String[] args) { + TestBase.runTest(new SuperCallTest(), args); + } + + /* + * Basic case + * + * interface I { int m() default { return 1; } } + * interface J extends I { int m() default { return I.super.m(); } } + * class C implements J {} + * + * TEST: C c = new C(); c.m() == 88; + * TEST: I i = new C(); i.m() == 88; + */ + public void testSuperBasic1() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I").callSuper(I, "m", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + b.test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(J, C, "m", "()I").returns(1).done() + .test().callSite(C, C, "m", "()I").returns(1).done() + + .run(); + } + + /* + * Super Conflict Resolution + * + * interface K { int m() default { return 1; } } + * interface L { int m() default { return 2; } } + * interface I extends K,L { int m() default { K.super.m(); } } + * class C implements I {} + * class D implements K,L {} + * + * TEST: K k = new C(); k.m() == 1 + * TEST: L l = new C(); l.m() == 1 + * TEST: I i = new C(); i.m() == 1 + * TEST: C c = new C(); c.m() == 1 + * + * TEST: K k = new D(); k.m() == 1 + * TEST: L l = new D(); l.m() == 1 + * TEST: D d = new D(); d.m() == 1 + */ + public void testSuperConflictResolution() { + TestBuilder b = factory.getBuilder(); + + Interface K = b.intf("K") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface L = b.intf("L") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + Interface I = b.intf("I").extend(K, L) + .defaultMethod("m", "()I").callSuper(K, "m", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + ConcreteClass D = b.clazz("D").implement(K,L) + .concreteMethod("m", "()I").callSuper(K, "m", "()I").build() + .build(); + + + b.test().callSite(K, C, "m", "()I").returns(1).done() + .test().callSite(L, C, "m", "()I").returns(1).done() + .test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(C, C, "m", "()I").returns(1).done() + + .test().callSite(K, D, "m", "()I").returns(1).done() + .test().callSite(L, D, "m", "()I").returns(1).done() + .test().callSite(D, D, "m", "()I").returns(1).done() + + .run(); + } + + /* + * Super call of conflicting default method from different method name + * + * interface K { + * default public int m(int) { return 1; } + * } + * interface L { + * default public int m(int) { return 2; } + * } + * interface I extends K, L { + * default public int k() { return K.super.m((int)0); } + * default public int l() { return L.super.m((int)0); } + * } + * class C implements I {} + * class D implements K, L { + * public int k() { return K.super.m((int)0); } + * public int l() { return L.super.m((int)0); } + * } + * + * TEST: K o = new C(); o.m(I)I throws ICCE + * TEST: L o = new C(); o.m(I)I throws ICCE + * TEST: C o = new C(); o.m(I)I throws ICCE + * TEST: I o = new C(); o.k()I == 1 + * TEST: C o = new C(); o.k()I == 1 + * TEST: I o = new C(); o.l()I == 2 + * TEST: C o = new C(); o.l()I == 2 + * TEST: K o = new D(); o.m(I)I throws ICCE + * TEST: L o = new D(); o.m(I)I throws ICCE + * TEST: D o = new D(); o.m(I)I throws ICCE + * TEST: D o = new D(); o.k()I == 1 + * TEST: D o = new D(); o.l()I == 2 + */ + public void testSuperConflictDiffMethod() { + TestBuilder b = factory.getBuilder(); + + Interface K = b.intf("K") + .defaultMethod("m", "(I)I").returns(1).build() + .build(); + + Interface L = b.intf("L") + .defaultMethod("m", "(I)I").returns(2).build() + .build(); + + Interface I = b.intf("I").extend(K, L) + .defaultMethod("k", "()I").callSuper(K, "m", "(I)I").build() + .defaultMethod("l", "()I").callSuper(L, "m", "(I)I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + ConcreteClass D = b.clazz("D").implement(K,L) + .concreteMethod("k", "()I").callSuper(K, "m", "(I)I").build() + .concreteMethod("l", "()I").callSuper(L, "m", "(I)I").build() + .build(); + + b.test().callSite(K, C, "m", "(I)I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(L, C, "m", "(I)I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(C, C, "m", "(I)I").throws_(IncompatibleClassChangeError.class).done() + + .test().callSite(I, C, "k", "()I").returns(1).done() + .test().callSite(C, C, "k", "()I").returns(1).done() + .test().callSite(I, C, "l", "()I").returns(2).done() + .test().callSite(C, C, "l", "()I").returns(2).done() + + .test().callSite(K, D, "m", "(I)I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(L, D, "m", "(I)I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(D, D, "m", "(I)I").throws_(IncompatibleClassChangeError.class).done() + + .test().callSite(D, D, "k", "()I").returns(1).done() + .test().callSite(D, D, "l", "()I").returns(2).done() + + .run(); + } + + /* + * SuperConflict + * + * interface K { int m() default { return 1; } } + * interface L { int m() default { return 2; } } + * interface J extends K, L {} + * interface I extends J, K { int m() default { J.super.m(); } } + * class C implements I {} + * + * TEST: K k = new C(); k.m() ==> ICCE + * TEST: L l = new C(); l.m() ==> ICCE + * TEST: J j = new C(); j.m() ==> ICCE + * TEST: I i = new C(); i.m() ==> ICCE + * TEST: C c = new C(); c.m() ==> ICCE + */ + public void testSuperConflict() { + TestBuilder b = factory.getBuilder(); + + Interface K = b.intf("K") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface L = b.intf("L") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + Interface J = b.intf("J").extend(K, L).build(); + + Interface I = b.intf("I").extend(K, J) + .defaultMethod("m", "()I").callSuper(J, "m", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I).build(); + + b.test().callSite(K, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(L, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(J, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + + .run(); + } + + /* + * SuperDisqual + * + * interface I { int m() default { return 1; } } + * interface J { int m() default { return 2; } } + * class C implements I, J { public int m() { return I.super.m(); } } + * + * TEST: C c = new C(); c.m() ==> 1 + * TEST: J j = new C(); j.m() ==> 1 + */ + public void testSuperDisqual() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I, J) + .concreteMethod("m", "()I").callSuper(I, "m", "()I").build() + .build(); + + b.test().callSite(I, C, "m", "()I").returns(1).done() + .test().callSite(J, C, "m", "()I").returns(1).done() + .test().callSite(C, C, "m", "()I").returns(1).done() + + .run(); + } + + /* + * SuperNull + * + * interface I { int m(); } + * interface J extends I { int m() default { return I.super.m(); } } + * interface K extends I { int m() default { return I.super.n(); } } + * class C implements J {} + * class D implements K {} + * + * TEST: I i = new C(); i.m() ==> AME + * TEST: J j = new C(); j.m() ==> AME + * TEST: C c = new C(); c.m() ==> AME + * TEST: K k = new D(); k.m() ==> NSME + */ + public void testSuperNull() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .abstractMethod("m", "()I").build() + .build(); + + Interface J = b.intf("J").extend(I) + .defaultMethod("m", "()I").callSuper(I, "m", "()I").build() + .build(); + + Interface K = b.intf("K").extend(I) + .defaultMethod("m", "()I").callSuper(I, "n", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + ConcreteClass D = b.clazz("D").implement(K).build(); + + b.test().callSite(I, C, "m", "()I").throws_(AbstractMethodError.class).done() + .test().callSite(J, C, "m", "()I").throws_(AbstractMethodError.class).done() + .test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done() + .test().callSite(K, D, "m", "()I").throws_(NoSuchMethodError.class).done() + + .run(); + } + + /* + * SuperGeneric + * + * interface J { int m(T t) default { return 1; } } + * interface I extends J { int m(String s) default { return J.super.m(); } } + * class C implements I {} + * + * TEST: I i = new C(); i.m(new Object()) == 1; + * TESTL J j = new C(); j.m(new Object()) == 1; + * TEST: J j = new C(); j.m("") == 1; + * TEST: C c = new C(); c.m(new Object()) == 1; + * TEST: C c = new C(); c.m("") == 1; + */ + @KnownFailure(modes = { INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY }) // Test2_J_C_m: AME => IAE => ICCE instead of successful call + public void testSuperGeneric() { + TestBuilder b = factory.getBuilder(); + + // interface I { + // default int m(T t) { return 1; } + // } + Interface I = b.intf("I") + .sig("Ljava/lang/Object;") + .defaultMethod("m", "(Ljava/lang/Object;)I").sig("(TT;)I").returns(1).build() + .build(); + + // interface J extends I { + // default int m(String s) { return I.super.m(); } + // } + Interface J = b.intf("J").extend(I) + .sig("Ljava/lang/Object;LI;") + .defaultMethod("m", "(Ljava/lang/String;)I").callSuper(I, "m", "(Ljava/lang/Object;)I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).build(); + + b.test().callSite(I, C, "m", "(Ljava/lang/Object;)I").returns(1).done() + + .test().callSite(J, C, "m", "(Ljava/lang/Object;)I").returns(1).done() + .test().callSite(J, C, "m", "(Ljava/lang/String;)I").returns(1).done() + + .test().callSite(C, C, "m", "(Ljava/lang/Object;)I").returns(1).done() + .test().callSite(C, C, "m", "(Ljava/lang/String;)I").returns(1).done() + + .run(); + } + + /* + * SuperGenericDisqual + * + * interface I { int m(T t) default { return 1; } } + * interface J extends I { int m(String s) default { return 2; } } + * class C implements I, J { public int m(String s) { return I.super.m(s); } } + * + * TEST: C c = new C(); c.m("string") == 1 + */ + @KnownFailure(modes = { INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY }) // Test2_J_C_m: AME => IAE => ICCE instead of successful call + public void testSuperGenericDisqual() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I").sig("Ljava/lang/Object;") + .defaultMethod("m", "(Ljava/lang/Object;)I").sig("(TT;)I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .sig("Ljava/lang/Object;LJ;") + .defaultMethod("m", "(Ljava/lang/String;)I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I,J) + .sig("Ljava/lang/Object;LI;LJ;") + .concreteMethod("m", "(Ljava/lang/String;)I").callSuper(I, "m", "(Ljava/lang/Object;)I").build() + .build(); + + b.test().callSite(I, C, "m", "(Ljava/lang/Object;)I").returns(1).done() + + .test().callSite(J, C, "m", "(Ljava/lang/Object;)I").returns(1).done() + .test().callSite(J, C, "m", "(Ljava/lang/String;)I").returns(1).done() + + .test().callSite(C, C, "m", "(Ljava/lang/Object;)I").returns(1).done() + .test().callSite(C, C, "m", "(Ljava/lang/String;)I").returns(1).done() + + .run(); + } + + /* + * Super-call of non-default method + * + * class C { int m() { return 1; } } + * class D extends C { int m() { return C.super.m(); } } + * + * TEST: C d = new D(); d.m() == 1 + * TEST: D d = new D(); d.m() == 1 + */ + public void testSuperNonDefault() { + TestBuilder b = factory.getBuilder(); + + ConcreteClass C = b.clazz("C") + .concreteMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass D = b.clazz("D").extend(C) + .concreteMethod("m", "()I").callSuper(C, "m", "()I").build() + .build(); + + b.test().callSite(C, D, "m", "()I").returns(1).done() + .test().callSite(D, D, "m", "()I").returns(1).done() + + .run(); + } + + /* + * Super-call of non-default method + * + * interface I { int m(); } + * class C { int m() { return 1; } } + * class D extends C implements I { int m() { return I.super.m(); } } + * class E extends C implements I { int m() { return C.super.m(); } } + * + * TEST: I d = new D(); d.m() ==> AME + * TEST: C d = new D(); d.m() ==> AME + * TEST: D d = new D(); d.m() ==> AME + * TEST: I e = new E(); e.m() == 1 + * TEST: C e = new E(); e.m() == 1 + * TEST: E e = new E(); e.m() == 1 + */ + public void testSuperNonDefault1() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .abstractMethod("m", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C") + .concreteMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass D = b.clazz("D").extend(C).implement(I) + .concreteMethod("m", "()I").callSuper(I, "m", "()I").build() + .build(); + + ConcreteClass E = b.clazz("E").extend(C).implement(I) + .concreteMethod("m", "()I").callSuper(C, "m", "()I").build() + .build(); + + b.test().callSite(I, D, "m", "()I").throws_(AbstractMethodError.class).done() + .test().callSite(C, D, "m", "()I").throws_(AbstractMethodError.class).done() + .test().callSite(D, D, "m", "()I").throws_(AbstractMethodError.class).done() + + .test().callSite(I, E, "m", "()I").returns(1).done() + .test().callSite(C, E, "m", "()I").returns(1).done() + .test().callSite(E, E, "m", "()I").returns(1).done() + + .run(); + } + + /* + * Super-call of non-default method + * + * interface I { int m() {return 1;} } + * class C { int m() { return 2; } } + * class D extends C implements I { int m() { return I.super.m(); } } + * class E extends C implements I { int m() { return C.super.m(); } } + * + * TEST: I d = new D(); d.m() == 1 + * TEST: C d = new D(); d.m() == 1 + * TEST: D d = new D(); d.m() == 1 + * + * TEST: I e = new E(); e.m() == 2 + * TEST: C e = new E(); e.m() == 2 + * TEST: E e = new E(); e.m() == 2 + */ + public void testSuperNonDefault2() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + ConcreteClass C = b.clazz("C") + .concreteMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass D = b.clazz("D").extend(C).implement(I) + .concreteMethod("m", "()I").callSuper(I, "m", "()I").build() + .build(); + + ConcreteClass E = b.clazz("E").extend(C).implement(I) + .concreteMethod("m", "()I").callSuper(C, "m", "()I").build() + .build(); + + b.test().callSite(I, D, "m", "()I").returns(1).done() + .test().callSite(C, D, "m", "()I").returns(1).done() + .test().callSite(D, D, "m", "()I").returns(1).done() + + .test().callSite(I, E, "m", "()I").returns(2).done() + .test().callSite(C, E, "m", "()I").returns(2).done() + .test().callSite(E, E, "m", "()I").returns(2).done() + + .run(); + } + + /* + * Disambig + * + * interface I { int m() default { return 1; } } + * interface J { int m() default { return 2; } } + * class C implements I, J { int q() { return I.super.m(); } + * int r() { return J.super.m(); } } + * + * TEST: C c = new C(); c.m() == ICCE; + * TEST: C c = new C(); c.q() == 1; + * TEST: C c = new C(); c.r() == 2; + */ + public void testDisambig() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(I,J) + .concreteMethod("q", "()I").callSuper(I, "m", "()I").build() + .concreteMethod("r", "()I").callSuper(J, "m", "()I").build() + .build(); + + b.test().callSite(C, C, "q", "()I").returns(1).done() + .test().callSite(C, C, "r", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + + .run(); + } + + /* + * Disambig2 + * + * interface I { int m() default { return 1; } } + * interface J { int m() default { return 2; } } + * interface K extends I + * interface L extends J + * class C implements K, L { int q() { return K.super.m(); } + * int r() { return L.super.m(); } } + * + * TEST: C c = new C(); c.m() == ICCE; + * TEST: C c = new C(); c.q() == 1; + * TEST: C c = new C(); c.r() == 2; + */ + public void testDisambig2() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + Interface K = b.intf("K").extend(I).build(); + + Interface L = b.intf("L").extend(J).build(); + + ConcreteClass C = b.clazz("C").implement(K,L) + .concreteMethod("q", "()I").callSuper(K, "m", "()I").build() + .concreteMethod("r", "()I").callSuper(L, "m", "()I").build() + .build(); + + b.test().callSite(C, C, "q", "()I").returns(1).done() + .test().callSite(C, C, "r", "()I").returns(2).done() + .test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + + .run(); + } + + /* + * testResolvedShadowed + * + * interface I { int m() default { return 1; } } + * interface K extends I { int m() default { return 2; } } + * interface J extends I { } + * class C implements J,K { int q { J.super.m(); } } + * + * TEST: C c = new C(); c.m() == 2 + * TEST: C c = new C(); c.q() == 1 + */ + public void testResolvedShadowed() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface K = b.intf("K").extend(I) + .defaultMethod("m", "()I").returns(2).build() + .build(); + + Interface J = b.intf("J").extend(I) + .build(); + + ConcreteClass C = b.clazz("C").implement(J,K) + .concreteMethod("q", "()I").callSuper(J, "m", "()I").build() + .build(); + + b.test().callSite(C, C, "m", "()I").returns(2).done() + .test().callSite(C, C, "q", "()I").returns(1).done() + + .run(); + } + + /* + * testResolvedButSuperClass + * + * interface I { int m() default { return 1; } } + * interface J { } + * class A { public int m() { return 2; } } + * class C implements J extends A { int q { J.super.m(); } } + * + * TEST: C c = new C(); c.q() == 1 + * TEST: C c = new C(); c.m() == 2 + */ + public void testResolvedButSuperClass() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I) + .build(); + + ConcreteClass A = b.clazz("A") + .concreteMethod("m", "()I").returns(2).build() + .build(); + + ConcreteClass C = b.clazz("C").implement(J).extend(A) + .concreteMethod("q", "()I").callSuper(J, "m", "()I").build() + .build(); + + b.test().callSite(C, C, "q", "()I").returns(1).done() + .test().callSite(C, C, "m", "()I").returns(2).done() + + .run(); + } + + /* + * testResolved1Caller2NotShadowed + * + * interface I { int m() default { return 1; } } + * interface J extends I { } + * interface L { int m() default { return 2; } } + * interface K extends I, L { } + * class C implements J,K { int q { J.super.m(); } } + * + * TEST: C c = new C(); c.m() == ICCE + * TEST: C c = new C(); c.q() == 1 + */ + public void testResolved1Caller2NotShadowed() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I).build(); + + Interface L = b.intf("L") + .defaultMethod("m", "()I").returns(2).build() + .build(); + + Interface K = b.intf("K").extend(I,L) + .build(); + + ConcreteClass C = b.clazz("C").implement(J,K) + .concreteMethod("q", "()I").callSuper(J, "m", "()I").build() + .build(); + + b.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done() + .test().callSite(C, C, "q", "()I").returns(1).done() + + .run(); + } + + /* + * Test validity of invokespecial on indirect superinterface's method, + * this test should receive a verification error. + * + * (JVMS draft 0.7.0) JVMS 4.9.2 Structural Constraints + * Each invokespecial instruction must name an instance initialization + * method (2.9), or must reference a method in the current class or interface, + * a method in a superclass of the current class or interface, or a method + * in a direct superinterface of the current class or interface + * + * Note: Normally javac would reject this test case complaining that, + * InDirectSuper.java:5: error: not an enclosing class: I + * interface K extends J { default public void m() { I.super.m(); } } + * ^ + * However, the below test case allows us to check for this structural + * constraint on invokespecial in the JVM. + * + * interface I { int m() default { return 1; } } + * interface J extends I { } + * interface K extends J { int m() default { return I.super.m(); } } + * class C implements K {} + * + * TEST: K k = new C(); k.m() == VerifyError + */ + @NotApplicableFor(modes = { REDEFINITION }) // Can't redefine a class that gets VerifyError + public void testSuperInvalidIndirectInterfaceMethodInvokeSpecial() { + TestBuilder b = factory.getBuilder(); + + Interface I = b.intf("I") + .defaultMethod("m", "()I").returns(1).build() + .build(); + + Interface J = b.intf("J").extend(I).build(); + + Interface K = b.intf("K").extend(J) + .defaultMethod("m", "()I").callSuper(I, "m", "()I").build() + .build(); + + ConcreteClass C = b.clazz("C").implement(K).build(); + + b.test().callSite(K, C, "m", "()I").throws_(VerifyError.class).done() + + .run(); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_direct_noredefine/TestDescription.java 2018-05-21 10:49:51.973497443 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_direct_redefine/TestDescription.java 2018-05-21 10:49:52.249497450 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_invoke_noredefine/TestDescription.java 2018-05-21 10:49:52.525497457 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_invoke_redefine/TestDescription.java 2018-05-21 10:49:52.805497464 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_reflect_noredefine/TestDescription.java 2018-05-21 10:49:53.101497471 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_reflect_redefine/TestDescription.java 2018-05-21 10:49:53.381497478 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_direct_noredefine/TestDescription.java 2018-05-21 10:49:53.657497485 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_direct_redefine/TestDescription.java 2018-05-21 10:49:53.933497492 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:49:54.217497499 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_invoke_redefine/TestDescription.java 2018-05-21 10:49:54.497497506 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:49:54.777497513 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_reflect_redefine/TestDescription.java 2018-05-21 10:49:55.061497520 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_direct_noredefine/TestDescription.java 2018-05-21 10:49:55.341497527 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_direct_redefine/TestDescription.java 2018-05-21 10:49:55.617497534 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:49:55.901497542 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_invoke_redefine/TestDescription.java 2018-05-21 10:49:56.173497548 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:49:56.457497556 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_reflect_redefine/TestDescription.java 2018-05-21 10:49:56.737497563 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:49:57.017497570 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:49:57.293497577 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:49:57.573497584 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:49:57.861497591 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:49:58.145497598 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:49:58.425497605 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/AccessibilityFlags_v52_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.AccessibilityFlagsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_none_direct_noredefine/TestDescription.java 2018-05-21 10:49:58.705497612 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_none_direct_redefine/TestDescription.java 2018-05-21 10:49:58.981497619 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_none_invoke_noredefine/TestDescription.java 2018-05-21 10:49:59.265497626 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_none_invoke_redefine/TestDescription.java 2018-05-21 10:49:59.541497633 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_none_reflect_noredefine/TestDescription.java 2018-05-21 10:49:59.821497640 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_none_reflect_redefine/TestDescription.java 2018-05-21 10:50:00.101497647 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_strict_direct_noredefine/TestDescription.java 2018-05-21 10:50:00.381497654 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_strict_direct_redefine/TestDescription.java 2018-05-21 10:50:00.661497661 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:00.937497668 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_strict_invoke_redefine/TestDescription.java 2018-05-21 10:50:01.217497675 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:01.497497682 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_strict_reflect_redefine/TestDescription.java 2018-05-21 10:50:01.773497689 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_sync_direct_noredefine/TestDescription.java 2018-05-21 10:50:02.053497696 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_sync_direct_redefine/TestDescription.java 2018-05-21 10:50:02.333497704 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:50:02.613497711 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_sync_invoke_redefine/TestDescription.java 2018-05-21 10:50:02.889497718 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:50:03.165497724 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_sync_reflect_redefine/TestDescription.java 2018-05-21 10:50:03.445497732 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:50:03.729497739 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:50:04.013497746 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:04.293497753 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:50:04.565497760 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:04.845497767 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:50:05.121497774 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v49_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_none_direct_noredefine/TestDescription.java 2018-05-21 10:50:05.405497781 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_none_direct_redefine/TestDescription.java 2018-05-21 10:50:05.689497788 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_none_invoke_noredefine/TestDescription.java 2018-05-21 10:50:05.965497795 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_none_invoke_redefine/TestDescription.java 2018-05-21 10:50:06.241497802 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_none_reflect_noredefine/TestDescription.java 2018-05-21 10:50:06.525497809 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_none_reflect_redefine/TestDescription.java 2018-05-21 10:50:06.805497816 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_strict_direct_noredefine/TestDescription.java 2018-05-21 10:50:07.085497823 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_strict_direct_redefine/TestDescription.java 2018-05-21 10:50:07.369497830 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:07.653497838 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_strict_invoke_redefine/TestDescription.java 2018-05-21 10:50:07.929497844 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:08.217497852 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_strict_reflect_redefine/TestDescription.java 2018-05-21 10:50:08.493497859 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_sync_direct_noredefine/TestDescription.java 2018-05-21 10:50:08.773497866 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_sync_direct_redefine/TestDescription.java 2018-05-21 10:50:09.053497873 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:50:09.329497880 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_sync_invoke_redefine/TestDescription.java 2018-05-21 10:50:09.609497887 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:50:09.881497894 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_sync_reflect_redefine/TestDescription.java 2018-05-21 10:50:10.161497901 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:50:10.437497908 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:50:10.717497915 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:10.997497922 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:50:11.277497929 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:11.553497936 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:50:11.833497943 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v50_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_none_direct_noredefine/TestDescription.java 2018-05-21 10:50:12.113497950 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_none_direct_redefine/TestDescription.java 2018-05-21 10:50:12.389497957 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_none_invoke_noredefine/TestDescription.java 2018-05-21 10:50:12.669497964 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_none_invoke_redefine/TestDescription.java 2018-05-21 10:50:12.945497971 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_none_reflect_noredefine/TestDescription.java 2018-05-21 10:50:13.225497978 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_none_reflect_redefine/TestDescription.java 2018-05-21 10:50:13.501497985 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_strict_direct_noredefine/TestDescription.java 2018-05-21 10:50:13.777497992 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_strict_direct_redefine/TestDescription.java 2018-05-21 10:50:14.057497999 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:14.337498006 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_strict_invoke_redefine/TestDescription.java 2018-05-21 10:50:14.617498013 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:14.897498020 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_strict_reflect_redefine/TestDescription.java 2018-05-21 10:50:15.173498027 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_sync_direct_noredefine/TestDescription.java 2018-05-21 10:50:15.453498034 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_sync_direct_redefine/TestDescription.java 2018-05-21 10:50:15.733498041 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:50:16.013498048 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_sync_invoke_redefine/TestDescription.java 2018-05-21 10:50:16.289498055 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:50:16.609498063 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_sync_reflect_redefine/TestDescription.java 2018-05-21 10:50:16.889498070 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:50:17.165498077 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:50:17.449498084 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:17.725498091 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:50:18.001498098 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:18.281498105 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:50:18.565498112 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v51_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_none_direct_noredefine/TestDescription.java 2018-05-21 10:50:18.841498119 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_none_direct_redefine/TestDescription.java 2018-05-21 10:50:19.117498126 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_none_invoke_noredefine/TestDescription.java 2018-05-21 10:50:19.401498133 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_none_invoke_redefine/TestDescription.java 2018-05-21 10:50:19.685498141 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_none_reflect_noredefine/TestDescription.java 2018-05-21 10:50:19.961498147 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_none_reflect_redefine/TestDescription.java 2018-05-21 10:50:20.233498154 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_strict_direct_noredefine/TestDescription.java 2018-05-21 10:50:20.513498161 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_strict_direct_redefine/TestDescription.java 2018-05-21 10:50:20.789498168 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:21.069498175 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_strict_invoke_redefine/TestDescription.java 2018-05-21 10:50:21.345498182 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:21.629498189 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_strict_reflect_redefine/TestDescription.java 2018-05-21 10:50:21.905498196 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_sync_direct_noredefine/TestDescription.java 2018-05-21 10:50:22.189498204 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_sync_direct_redefine/TestDescription.java 2018-05-21 10:50:22.477498211 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:50:22.753498218 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_sync_invoke_redefine/TestDescription.java 2018-05-21 10:50:23.029498225 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:50:23.309498232 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_sync_reflect_redefine/TestDescription.java 2018-05-21 10:50:23.589498239 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:50:23.869498246 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:50:24.149498253 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:24.425498260 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:50:24.701498267 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:24.981498274 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:50:25.261498281 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Basic_v52_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.BasicTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_direct_noredefine/TestDescription.java 2018-05-21 10:50:25.537498288 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_direct_redefine/TestDescription.java 2018-05-21 10:50:25.821498295 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_invoke_noredefine/TestDescription.java 2018-05-21 10:50:26.105498302 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_invoke_redefine/TestDescription.java 2018-05-21 10:50:26.389498309 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_reflect_noredefine/TestDescription.java 2018-05-21 10:50:26.673498316 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_reflect_redefine/TestDescription.java 2018-05-21 10:50:26.949498323 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_direct_noredefine/TestDescription.java 2018-05-21 10:50:27.229498330 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_direct_redefine/TestDescription.java 2018-05-21 10:50:27.505498337 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:27.785498344 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_invoke_redefine/TestDescription.java 2018-05-21 10:50:28.065498352 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:28.345498359 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_reflect_redefine/TestDescription.java 2018-05-21 10:50:28.621498366 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_direct_noredefine/TestDescription.java 2018-05-21 10:50:28.897498372 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_direct_redefine/TestDescription.java 2018-05-21 10:50:29.173498379 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:50:29.457498387 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_invoke_redefine/TestDescription.java 2018-05-21 10:50:29.733498394 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:50:30.013498401 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_reflect_redefine/TestDescription.java 2018-05-21 10:50:30.297498408 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:50:30.573498415 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:50:30.853498422 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:31.129498429 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:50:31.409498436 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:31.689498443 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:50:31.969498450 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v49_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_direct_noredefine/TestDescription.java 2018-05-21 10:50:32.245498457 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_direct_redefine/TestDescription.java 2018-05-21 10:50:32.525498464 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_invoke_noredefine/TestDescription.java 2018-05-21 10:50:32.809498471 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_invoke_redefine/TestDescription.java 2018-05-21 10:50:33.085498478 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_reflect_noredefine/TestDescription.java 2018-05-21 10:50:33.365498485 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_reflect_redefine/TestDescription.java 2018-05-21 10:50:33.641498492 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_direct_noredefine/TestDescription.java 2018-05-21 10:50:33.925498499 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_direct_redefine/TestDescription.java 2018-05-21 10:50:34.205498506 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:34.485498513 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_invoke_redefine/TestDescription.java 2018-05-21 10:50:34.761498520 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:35.041498527 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_reflect_redefine/TestDescription.java 2018-05-21 10:50:35.317498534 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_direct_noredefine/TestDescription.java 2018-05-21 10:50:35.597498541 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_direct_redefine/TestDescription.java 2018-05-21 10:50:35.873498548 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:50:36.157498555 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_invoke_redefine/TestDescription.java 2018-05-21 10:50:36.433498562 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:50:36.709498569 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_reflect_redefine/TestDescription.java 2018-05-21 10:50:36.985498576 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:50:37.261498583 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:50:37.537498590 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:37.821498597 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:50:38.097498604 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:38.373498611 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:50:38.649498618 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v50_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_direct_noredefine/TestDescription.java 2018-05-21 10:50:38.929498625 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_direct_redefine/TestDescription.java 2018-05-21 10:50:39.205498632 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_invoke_noredefine/TestDescription.java 2018-05-21 10:50:39.477498639 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_invoke_redefine/TestDescription.java 2018-05-21 10:50:39.753498646 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_reflect_noredefine/TestDescription.java 2018-05-21 10:50:40.025498653 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_reflect_redefine/TestDescription.java 2018-05-21 10:50:40.301498660 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_direct_noredefine/TestDescription.java 2018-05-21 10:50:40.577498667 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_direct_redefine/TestDescription.java 2018-05-21 10:50:40.861498674 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:41.141498681 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_invoke_redefine/TestDescription.java 2018-05-21 10:50:41.421498688 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:41.697498695 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_reflect_redefine/TestDescription.java 2018-05-21 10:50:41.973498702 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_direct_noredefine/TestDescription.java 2018-05-21 10:50:42.249498709 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_direct_redefine/TestDescription.java 2018-05-21 10:50:42.529498716 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:50:42.805498723 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_invoke_redefine/TestDescription.java 2018-05-21 10:50:43.101498730 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:50:43.377498737 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_reflect_redefine/TestDescription.java 2018-05-21 10:50:43.653498744 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:50:43.933498751 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:50:44.217498758 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:44.497498765 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:50:44.781498773 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:45.061498780 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:50:45.341498787 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v51_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_direct_noredefine/TestDescription.java 2018-05-21 10:50:45.625498794 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_direct_redefine/TestDescription.java 2018-05-21 10:50:45.905498801 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_invoke_noredefine/TestDescription.java 2018-05-21 10:50:46.181498808 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_invoke_redefine/TestDescription.java 2018-05-21 10:50:46.461498815 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_reflect_noredefine/TestDescription.java 2018-05-21 10:50:46.737498822 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_reflect_redefine/TestDescription.java 2018-05-21 10:50:47.013498829 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_direct_noredefine/TestDescription.java 2018-05-21 10:50:47.293498836 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_direct_redefine/TestDescription.java 2018-05-21 10:50:47.569498843 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:47.849498850 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_invoke_redefine/TestDescription.java 2018-05-21 10:50:48.129498857 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:48.405498864 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_reflect_redefine/TestDescription.java 2018-05-21 10:50:48.681498871 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_direct_noredefine/TestDescription.java 2018-05-21 10:50:48.957498878 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_direct_redefine/TestDescription.java 2018-05-21 10:50:49.241498885 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:50:49.521498892 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_invoke_redefine/TestDescription.java 2018-05-21 10:50:49.797498899 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:50:50.077498906 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_reflect_redefine/TestDescription.java 2018-05-21 10:50:50.349498913 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:50:50.629498920 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:50:50.905498927 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:51.185498934 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:50:51.461498941 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:51.741498948 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:50:52.017498955 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ConflictingDefaults_v52_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ConflictingDefaultsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_direct_noredefine/TestDescription.java 2018-05-21 10:50:52.293498962 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_direct_redefine/TestDescription.java 2018-05-21 10:50:52.569498969 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_invoke_noredefine/TestDescription.java 2018-05-21 10:50:52.845498976 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_invoke_redefine/TestDescription.java 2018-05-21 10:50:53.125498983 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_reflect_noredefine/TestDescription.java 2018-05-21 10:50:53.401498990 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_reflect_redefine/TestDescription.java 2018-05-21 10:50:53.677498997 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_direct_noredefine/TestDescription.java 2018-05-21 10:50:53.953499003 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_direct_redefine/TestDescription.java 2018-05-21 10:50:54.229499010 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:54.505499017 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_invoke_redefine/TestDescription.java 2018-05-21 10:50:54.789499025 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:55.065499031 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_reflect_redefine/TestDescription.java 2018-05-21 10:50:55.341499038 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_direct_noredefine/TestDescription.java 2018-05-21 10:50:55.621499046 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_direct_redefine/TestDescription.java 2018-05-21 10:50:55.897499052 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:50:56.177499060 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_invoke_redefine/TestDescription.java 2018-05-21 10:50:56.457499067 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:50:56.737499074 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_reflect_redefine/TestDescription.java 2018-05-21 10:50:57.025499081 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:50:57.297499088 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:50:57.581499095 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:50:57.857499102 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:50:58.141499109 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:50:58.421499116 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:50:58.697499123 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v49_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_direct_noredefine/TestDescription.java 2018-05-21 10:50:58.977499130 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_direct_redefine/TestDescription.java 2018-05-21 10:50:59.253499137 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_invoke_noredefine/TestDescription.java 2018-05-21 10:50:59.533499144 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_invoke_redefine/TestDescription.java 2018-05-21 10:50:59.813499151 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_reflect_noredefine/TestDescription.java 2018-05-21 10:51:00.089499158 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_reflect_redefine/TestDescription.java 2018-05-21 10:51:00.373499165 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_direct_noredefine/TestDescription.java 2018-05-21 10:51:00.653499172 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_direct_redefine/TestDescription.java 2018-05-21 10:51:00.937499179 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:01.213499186 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_invoke_redefine/TestDescription.java 2018-05-21 10:51:01.501499194 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:01.785499201 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_reflect_redefine/TestDescription.java 2018-05-21 10:51:02.057499208 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_direct_noredefine/TestDescription.java 2018-05-21 10:51:02.341499215 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_direct_redefine/TestDescription.java 2018-05-21 10:51:02.625499222 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:51:02.913499229 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_invoke_redefine/TestDescription.java 2018-05-21 10:51:03.189499236 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:51:03.465499243 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_reflect_redefine/TestDescription.java 2018-05-21 10:51:03.745499250 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:51:04.025499257 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:51:04.305499264 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:04.581499271 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:51:04.853499278 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:05.129499285 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:51:05.405499292 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v50_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_direct_noredefine/TestDescription.java 2018-05-21 10:51:05.681499299 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_direct_redefine/TestDescription.java 2018-05-21 10:51:05.961499306 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_invoke_noredefine/TestDescription.java 2018-05-21 10:51:06.245499313 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_invoke_redefine/TestDescription.java 2018-05-21 10:51:06.529499320 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_reflect_noredefine/TestDescription.java 2018-05-21 10:51:06.813499327 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_reflect_redefine/TestDescription.java 2018-05-21 10:51:07.093499334 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_direct_noredefine/TestDescription.java 2018-05-21 10:51:07.369499341 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_direct_redefine/TestDescription.java 2018-05-21 10:51:07.645499348 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:07.921499355 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_invoke_redefine/TestDescription.java 2018-05-21 10:51:08.197499362 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:08.473499369 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_reflect_redefine/TestDescription.java 2018-05-21 10:51:08.749499376 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_direct_noredefine/TestDescription.java 2018-05-21 10:51:09.025499383 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_direct_redefine/TestDescription.java 2018-05-21 10:51:09.301499390 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:51:09.581499397 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_invoke_redefine/TestDescription.java 2018-05-21 10:51:09.857499404 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:51:10.137499411 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_reflect_redefine/TestDescription.java 2018-05-21 10:51:10.413499418 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:51:10.689499425 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:51:10.965499432 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:11.245499439 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:51:11.521499446 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:11.797499453 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:51:12.077499460 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v51_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_direct_noredefine/TestDescription.java 2018-05-21 10:51:12.349499467 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_direct_redefine/TestDescription.java 2018-05-21 10:51:12.629499474 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_invoke_noredefine/TestDescription.java 2018-05-21 10:51:12.905499481 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_invoke_redefine/TestDescription.java 2018-05-21 10:51:13.181499488 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_reflect_noredefine/TestDescription.java 2018-05-21 10:51:13.465499495 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_reflect_redefine/TestDescription.java 2018-05-21 10:51:13.741499502 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_direct_noredefine/TestDescription.java 2018-05-21 10:51:14.021499509 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_direct_redefine/TestDescription.java 2018-05-21 10:51:14.301499516 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:14.581499523 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_invoke_redefine/TestDescription.java 2018-05-21 10:51:14.861499530 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:15.137499537 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_reflect_redefine/TestDescription.java 2018-05-21 10:51:15.417499544 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_direct_noredefine/TestDescription.java 2018-05-21 10:51:15.697499551 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_direct_redefine/TestDescription.java 2018-05-21 10:51:15.973499558 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:51:16.257499565 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_invoke_redefine/TestDescription.java 2018-05-21 10:51:16.537499572 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:51:16.813499579 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_reflect_redefine/TestDescription.java 2018-05-21 10:51:17.093499586 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:51:17.373499593 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:51:17.649499600 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:17.925499607 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:51:18.205499614 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:18.485499621 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:51:18.765499628 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/DefaultVsAbstract_v52_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.DefaultVsAbstractTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_none_direct_noredefine/TestDescription.java 2018-05-21 10:51:19.049499635 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_none_direct_redefine/TestDescription.java 2018-05-21 10:51:19.325499642 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_none_invoke_noredefine/TestDescription.java 2018-05-21 10:51:19.601499649 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_none_invoke_redefine/TestDescription.java 2018-05-21 10:51:19.877499656 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_none_reflect_noredefine/TestDescription.java 2018-05-21 10:51:20.153499663 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_none_reflect_redefine/TestDescription.java 2018-05-21 10:51:20.433499670 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_direct_noredefine/TestDescription.java 2018-05-21 10:51:20.709499677 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_direct_redefine/TestDescription.java 2018-05-21 10:51:20.997499685 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:21.277499692 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_invoke_redefine/TestDescription.java 2018-05-21 10:51:21.569499699 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:21.853499706 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_reflect_redefine/TestDescription.java 2018-05-21 10:51:22.137499713 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_direct_noredefine/TestDescription.java 2018-05-21 10:51:22.417499720 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_direct_redefine/TestDescription.java 2018-05-21 10:51:22.701499727 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:51:22.981499735 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_invoke_redefine/TestDescription.java 2018-05-21 10:51:23.261499742 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:51:23.537499749 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_reflect_redefine/TestDescription.java 2018-05-21 10:51:23.813499755 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:51:24.093499763 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:51:24.373499770 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:24.649499777 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:51:24.921499783 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:25.201499790 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:51:25.473499797 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v49_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_none_direct_noredefine/TestDescription.java 2018-05-21 10:51:25.761499805 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_none_direct_redefine/TestDescription.java 2018-05-21 10:51:26.037499811 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_none_invoke_noredefine/TestDescription.java 2018-05-21 10:51:26.317499819 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_none_invoke_redefine/TestDescription.java 2018-05-21 10:51:26.597499826 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_none_reflect_noredefine/TestDescription.java 2018-05-21 10:51:26.873499833 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_none_reflect_redefine/TestDescription.java 2018-05-21 10:51:27.153499840 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_direct_noredefine/TestDescription.java 2018-05-21 10:51:27.429499847 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_direct_redefine/TestDescription.java 2018-05-21 10:51:27.705499853 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:28.005499861 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_invoke_redefine/TestDescription.java 2018-05-21 10:51:28.277499868 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:28.561499875 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_reflect_redefine/TestDescription.java 2018-05-21 10:51:28.841499882 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_direct_noredefine/TestDescription.java 2018-05-21 10:51:29.121499889 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_direct_redefine/TestDescription.java 2018-05-21 10:51:29.397499896 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:51:29.677499903 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_invoke_redefine/TestDescription.java 2018-05-21 10:51:29.957499910 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:51:30.237499917 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_reflect_redefine/TestDescription.java 2018-05-21 10:51:30.513499924 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:51:30.793499931 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:51:31.077499938 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:31.353499945 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:51:31.637499953 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:31.913499959 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:51:32.185499966 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v50_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_none_direct_noredefine/TestDescription.java 2018-05-21 10:51:32.461499973 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_none_direct_redefine/TestDescription.java 2018-05-21 10:51:32.745499980 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_none_invoke_noredefine/TestDescription.java 2018-05-21 10:51:33.021499987 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_none_invoke_redefine/TestDescription.java 2018-05-21 10:51:33.301499994 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_none_reflect_noredefine/TestDescription.java 2018-05-21 10:51:33.577500001 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_none_reflect_redefine/TestDescription.java 2018-05-21 10:51:33.857500008 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_direct_noredefine/TestDescription.java 2018-05-21 10:51:34.133500015 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_direct_redefine/TestDescription.java 2018-05-21 10:51:34.409500022 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:34.685500029 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_invoke_redefine/TestDescription.java 2018-05-21 10:51:34.961500036 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:35.237500043 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_reflect_redefine/TestDescription.java 2018-05-21 10:51:35.513500050 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_direct_noredefine/TestDescription.java 2018-05-21 10:51:35.789500057 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_direct_redefine/TestDescription.java 2018-05-21 10:51:36.065500064 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:51:36.337500071 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_invoke_redefine/TestDescription.java 2018-05-21 10:51:36.617500078 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:51:36.893500085 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_reflect_redefine/TestDescription.java 2018-05-21 10:51:37.177500092 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:51:37.453500099 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:51:37.729500106 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:38.005500113 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:51:38.281500120 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:38.557500127 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:51:38.833500134 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v51_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_none_direct_noredefine/TestDescription.java 2018-05-21 10:51:39.113500141 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_none_direct_redefine/TestDescription.java 2018-05-21 10:51:39.393500148 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_none_invoke_noredefine/TestDescription.java 2018-05-21 10:51:39.669500155 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_none_invoke_redefine/TestDescription.java 2018-05-21 10:51:39.949500162 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_none_reflect_noredefine/TestDescription.java 2018-05-21 10:51:40.229500169 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_none_reflect_redefine/TestDescription.java 2018-05-21 10:51:40.505500176 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_direct_noredefine/TestDescription.java 2018-05-21 10:51:40.781500183 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_direct_redefine/TestDescription.java 2018-05-21 10:51:41.061500190 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:41.341500197 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_invoke_redefine/TestDescription.java 2018-05-21 10:51:41.617500204 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:41.893500211 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_reflect_redefine/TestDescription.java 2018-05-21 10:51:42.173500218 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_direct_noredefine/TestDescription.java 2018-05-21 10:51:42.449500225 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_direct_redefine/TestDescription.java 2018-05-21 10:51:42.729500232 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:51:43.009500239 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_invoke_redefine/TestDescription.java 2018-05-21 10:51:43.325500247 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:51:43.609500254 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_reflect_redefine/TestDescription.java 2018-05-21 10:51:43.885500261 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:51:44.165500268 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:51:44.445500275 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:44.725500282 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:51:45.009500289 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:45.281500296 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:51:45.561500303 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/MethodResolution_v52_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.MethodResolutionTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_direct_noredefine/TestDescription.java 2018-05-21 10:51:45.837500310 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ObjectMethodOverridesTest + * -ver 52 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_direct_redefine/TestDescription.java 2018-05-21 10:51:46.117500317 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ObjectMethodOverridesTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_invoke_noredefine/TestDescription.java 2018-05-21 10:51:46.397500324 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ObjectMethodOverridesTest + * -ver 52 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_invoke_redefine/TestDescription.java 2018-05-21 10:51:46.673500331 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ObjectMethodOverridesTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_reflect_noredefine/TestDescription.java 2018-05-21 10:51:46.961500338 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.ObjectMethodOverridesTest + * -ver 52 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_reflect_redefine/TestDescription.java 2018-05-21 10:51:47.241500345 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/ObjectMethodOverrides_v52_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.ObjectMethodOverridesTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_direct_noredefine/TestDescription.java 2018-05-21 10:51:47.525500353 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_direct_redefine/TestDescription.java 2018-05-21 10:51:47.801500360 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_invoke_noredefine/TestDescription.java 2018-05-21 10:51:48.085500367 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_invoke_redefine/TestDescription.java 2018-05-21 10:51:48.361500374 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_reflect_noredefine/TestDescription.java 2018-05-21 10:51:48.645500381 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_reflect_redefine/TestDescription.java 2018-05-21 10:51:48.917500388 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_direct_noredefine/TestDescription.java 2018-05-21 10:51:49.193500395 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_direct_redefine/TestDescription.java 2018-05-21 10:51:49.481500402 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:49.761500409 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_invoke_redefine/TestDescription.java 2018-05-21 10:51:50.041500416 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:50.317500423 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_reflect_redefine/TestDescription.java 2018-05-21 10:51:50.605500430 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_direct_noredefine/TestDescription.java 2018-05-21 10:51:50.881500437 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_direct_redefine/TestDescription.java 2018-05-21 10:51:51.165500444 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:51:51.441500451 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_invoke_redefine/TestDescription.java 2018-05-21 10:51:51.717500458 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:51:52.001500465 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_reflect_redefine/TestDescription.java 2018-05-21 10:51:52.281500472 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:51:52.561500479 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:51:52.837500486 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:53.125500494 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:51:53.405500501 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:53.685500508 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:51:53.961500515 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v49_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_direct_noredefine/TestDescription.java 2018-05-21 10:51:54.237500522 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_direct_redefine/TestDescription.java 2018-05-21 10:51:54.513500529 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_invoke_noredefine/TestDescription.java 2018-05-21 10:51:54.793500536 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_invoke_redefine/TestDescription.java 2018-05-21 10:51:55.069500543 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_reflect_noredefine/TestDescription.java 2018-05-21 10:51:55.345500550 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_reflect_redefine/TestDescription.java 2018-05-21 10:51:55.637500557 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_direct_noredefine/TestDescription.java 2018-05-21 10:51:55.917500564 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_direct_redefine/TestDescription.java 2018-05-21 10:51:56.197500571 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:56.477500578 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_invoke_redefine/TestDescription.java 2018-05-21 10:51:56.753500585 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:51:57.033500592 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_reflect_redefine/TestDescription.java 2018-05-21 10:51:57.321500599 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_direct_noredefine/TestDescription.java 2018-05-21 10:51:57.597500606 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_direct_redefine/TestDescription.java 2018-05-21 10:51:57.877500613 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:51:58.165500621 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_invoke_redefine/TestDescription.java 2018-05-21 10:51:58.449500628 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:51:58.725500635 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_reflect_redefine/TestDescription.java 2018-05-21 10:51:59.009500642 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:51:59.289500649 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:51:59.569500656 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:51:59.849500663 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:52:00.133500670 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:00.417500677 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:52:00.697500684 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v50_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_direct_noredefine/TestDescription.java 2018-05-21 10:52:00.977500691 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_direct_redefine/TestDescription.java 2018-05-21 10:52:01.253500698 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_invoke_noredefine/TestDescription.java 2018-05-21 10:52:01.541500706 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_invoke_redefine/TestDescription.java 2018-05-21 10:52:01.821500713 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_reflect_noredefine/TestDescription.java 2018-05-21 10:52:02.097500720 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_reflect_redefine/TestDescription.java 2018-05-21 10:52:02.381500727 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_direct_noredefine/TestDescription.java 2018-05-21 10:52:02.661500734 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_direct_redefine/TestDescription.java 2018-05-21 10:52:02.941500741 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:03.221500748 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_invoke_redefine/TestDescription.java 2018-05-21 10:52:03.493500755 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:03.773500762 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_reflect_redefine/TestDescription.java 2018-05-21 10:52:04.053500769 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_direct_noredefine/TestDescription.java 2018-05-21 10:52:04.333500776 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_direct_redefine/TestDescription.java 2018-05-21 10:52:04.605500783 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:52:04.885500790 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_invoke_redefine/TestDescription.java 2018-05-21 10:52:05.169500797 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:52:05.449500804 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_reflect_redefine/TestDescription.java 2018-05-21 10:52:05.721500811 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:52:06.001500818 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:52:06.285500825 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:06.569500832 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:52:06.849500839 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:07.129500846 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:52:07.413500853 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v51_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_direct_noredefine/TestDescription.java 2018-05-21 10:52:07.697500861 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_direct_redefine/TestDescription.java 2018-05-21 10:52:07.977500868 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_invoke_noredefine/TestDescription.java 2018-05-21 10:52:08.253500875 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_invoke_redefine/TestDescription.java 2018-05-21 10:52:08.533500882 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_reflect_noredefine/TestDescription.java 2018-05-21 10:52:08.813500889 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_reflect_redefine/TestDescription.java 2018-05-21 10:52:09.093500896 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_direct_noredefine/TestDescription.java 2018-05-21 10:52:09.369500903 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_direct_redefine/TestDescription.java 2018-05-21 10:52:09.653500910 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:09.937500917 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_invoke_redefine/TestDescription.java 2018-05-21 10:52:10.213500924 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:10.493500931 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_reflect_redefine/TestDescription.java 2018-05-21 10:52:10.773500938 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_direct_noredefine/TestDescription.java 2018-05-21 10:52:11.061500945 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_direct_redefine/TestDescription.java 2018-05-21 10:52:11.337500952 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:52:11.617500959 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_invoke_redefine/TestDescription.java 2018-05-21 10:52:11.897500966 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:52:12.177500973 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_reflect_redefine/TestDescription.java 2018-05-21 10:52:12.457500980 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:52:12.741500988 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:52:13.021500995 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:13.301501002 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:52:13.585501009 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:13.861501016 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:52:14.145501023 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/PrivateMethods_v52_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.PrivateMethodsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_none_direct_noredefine/TestDescription.java 2018-05-21 10:52:14.425501030 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_none_direct_redefine/TestDescription.java 2018-05-21 10:52:14.701501037 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_none_invoke_noredefine/TestDescription.java 2018-05-21 10:52:14.981501044 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_none_invoke_redefine/TestDescription.java 2018-05-21 10:52:15.261501051 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_strict_direct_noredefine/TestDescription.java 2018-05-21 10:52:15.537501058 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_strict_direct_redefine/TestDescription.java 2018-05-21 10:52:15.817501065 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:16.093501072 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_strict_invoke_redefine/TestDescription.java 2018-05-21 10:52:16.369501079 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_sync_direct_noredefine/TestDescription.java 2018-05-21 10:52:16.653501086 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_sync_direct_redefine/TestDescription.java 2018-05-21 10:52:16.929501093 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:52:17.209501100 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_sync_invoke_redefine/TestDescription.java 2018-05-21 10:52:17.485501107 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:52:17.769501114 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:52:18.045501121 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:18.321501128 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v49_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:52:18.601501135 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v49_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_none_direct_noredefine/TestDescription.java 2018-05-21 10:52:18.881501142 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_none_direct_redefine/TestDescription.java 2018-05-21 10:52:19.161501149 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_none_invoke_noredefine/TestDescription.java 2018-05-21 10:52:19.437501156 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_none_invoke_redefine/TestDescription.java 2018-05-21 10:52:19.717501163 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_strict_direct_noredefine/TestDescription.java 2018-05-21 10:52:19.997501170 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_strict_direct_redefine/TestDescription.java 2018-05-21 10:52:20.277501177 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:20.553501184 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_strict_invoke_redefine/TestDescription.java 2018-05-21 10:52:20.829501191 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_sync_direct_noredefine/TestDescription.java 2018-05-21 10:52:21.113501198 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_sync_direct_redefine/TestDescription.java 2018-05-21 10:52:21.389501205 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:52:21.669501212 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_sync_invoke_redefine/TestDescription.java 2018-05-21 10:52:21.949501220 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:52:22.225501226 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:52:22.509501234 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:22.789501241 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v50_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:52:23.065501248 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v50_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_none_direct_noredefine/TestDescription.java 2018-05-21 10:52:23.341501255 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_none_direct_redefine/TestDescription.java 2018-05-21 10:52:23.625501262 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_none_invoke_noredefine/TestDescription.java 2018-05-21 10:52:23.897501269 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_none_invoke_redefine/TestDescription.java 2018-05-21 10:52:24.177501276 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_strict_direct_noredefine/TestDescription.java 2018-05-21 10:52:24.453501283 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_strict_direct_redefine/TestDescription.java 2018-05-21 10:52:24.733501290 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:25.005501296 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_strict_invoke_redefine/TestDescription.java 2018-05-21 10:52:25.285501304 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_sync_direct_noredefine/TestDescription.java 2018-05-21 10:52:25.569501311 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_sync_direct_redefine/TestDescription.java 2018-05-21 10:52:25.845501318 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:52:26.125501325 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_sync_invoke_redefine/TestDescription.java 2018-05-21 10:52:26.405501332 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:52:26.681501339 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:52:26.957501346 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:27.233501353 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v51_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:52:27.509501360 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v51_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_none_direct_noredefine/TestDescription.java 2018-05-21 10:52:27.789501367 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_none_direct_redefine/TestDescription.java 2018-05-21 10:52:28.073501374 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_none_invoke_noredefine/TestDescription.java 2018-05-21 10:52:28.349501381 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_none_invoke_redefine/TestDescription.java 2018-05-21 10:52:28.629501388 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_strict_direct_noredefine/TestDescription.java 2018-05-21 10:52:28.909501395 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_strict_direct_redefine/TestDescription.java 2018-05-21 10:52:29.193501402 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:29.473501409 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_strict_invoke_redefine/TestDescription.java 2018-05-21 10:52:29.753501416 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_sync_direct_noredefine/TestDescription.java 2018-05-21 10:52:30.029501423 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_sync_direct_redefine/TestDescription.java 2018-05-21 10:52:30.313501430 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:52:30.593501437 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_sync_invoke_redefine/TestDescription.java 2018-05-21 10:52:30.897501445 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:52:31.169501452 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:52:31.449501459 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:31.729501466 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Redefine_v52_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:52:32.005501473 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Redefine_v52_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.RedefineTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_none_direct_noredefine/TestDescription.java 2018-05-21 10:52:32.285501480 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_none_direct_redefine/TestDescription.java 2018-05-21 10:52:32.565501487 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_none_invoke_noredefine/TestDescription.java 2018-05-21 10:52:32.849501494 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_none_invoke_redefine/TestDescription.java 2018-05-21 10:52:33.133501501 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_none_reflect_noredefine/TestDescription.java 2018-05-21 10:52:33.413501508 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_none_reflect_redefine/TestDescription.java 2018-05-21 10:52:33.685501515 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_direct_noredefine/TestDescription.java 2018-05-21 10:52:33.965501522 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_direct_redefine/TestDescription.java 2018-05-21 10:52:34.241501529 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:34.525501536 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_invoke_redefine/TestDescription.java 2018-05-21 10:52:34.805501543 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:35.085501550 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_reflect_redefine/TestDescription.java 2018-05-21 10:52:35.365501557 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_direct_noredefine/TestDescription.java 2018-05-21 10:52:35.649501565 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_direct_redefine/TestDescription.java 2018-05-21 10:52:35.925501571 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:52:36.201501578 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_invoke_redefine/TestDescription.java 2018-05-21 10:52:36.489501586 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:52:36.765501593 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_reflect_redefine/TestDescription.java 2018-05-21 10:52:37.045501600 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:52:37.321501607 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:52:37.605501614 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:37.897501621 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:52:38.173501628 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:38.457501635 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:52:38.741501642 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v49_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 49 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_none_direct_noredefine/TestDescription.java 2018-05-21 10:52:39.017501649 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_none_direct_redefine/TestDescription.java 2018-05-21 10:52:39.297501656 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_none_invoke_noredefine/TestDescription.java 2018-05-21 10:52:39.573501663 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_none_invoke_redefine/TestDescription.java 2018-05-21 10:52:39.861501671 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_none_reflect_noredefine/TestDescription.java 2018-05-21 10:52:40.141501678 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_none_reflect_redefine/TestDescription.java 2018-05-21 10:52:40.421501685 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_direct_noredefine/TestDescription.java 2018-05-21 10:52:40.697501692 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_direct_redefine/TestDescription.java 2018-05-21 10:52:40.977501699 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:41.257501706 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_invoke_redefine/TestDescription.java 2018-05-21 10:52:41.537501713 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:41.817501720 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_reflect_redefine/TestDescription.java 2018-05-21 10:52:42.097501727 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_direct_noredefine/TestDescription.java 2018-05-21 10:52:42.377501734 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_direct_redefine/TestDescription.java 2018-05-21 10:52:42.657501741 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:52:42.937501748 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_invoke_redefine/TestDescription.java 2018-05-21 10:52:43.209501755 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:52:43.489501762 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_reflect_redefine/TestDescription.java 2018-05-21 10:52:43.765501769 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:52:44.041501776 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:52:44.321501783 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:44.597501790 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:52:44.873501797 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:45.153501804 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:52:45.429501811 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v50_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 50 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_none_direct_noredefine/TestDescription.java 2018-05-21 10:52:45.705501818 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_none_direct_redefine/TestDescription.java 2018-05-21 10:52:45.981501825 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_none_invoke_noredefine/TestDescription.java 2018-05-21 10:52:46.261501832 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_none_invoke_redefine/TestDescription.java 2018-05-21 10:52:46.545501839 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_none_reflect_noredefine/TestDescription.java 2018-05-21 10:52:46.825501846 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_none_reflect_redefine/TestDescription.java 2018-05-21 10:52:47.101501853 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_direct_noredefine/TestDescription.java 2018-05-21 10:52:47.377501860 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_direct_redefine/TestDescription.java 2018-05-21 10:52:47.661501867 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:47.941501874 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_invoke_redefine/TestDescription.java 2018-05-21 10:52:48.217501881 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:48.501501888 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_reflect_redefine/TestDescription.java 2018-05-21 10:52:48.777501895 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_direct_noredefine/TestDescription.java 2018-05-21 10:52:49.057501902 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_direct_redefine/TestDescription.java 2018-05-21 10:52:49.333501909 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:52:49.613501916 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_invoke_redefine/TestDescription.java 2018-05-21 10:52:49.897501923 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:52:50.173501930 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_reflect_redefine/TestDescription.java 2018-05-21 10:52:50.457501937 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:52:50.733501944 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:52:51.009501951 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:51.293501959 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:52:51.581501966 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:51.853501973 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:52:52.133501980 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v51_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 51 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_none_direct_noredefine/TestDescription.java 2018-05-21 10:52:52.413501987 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_none_direct_redefine/TestDescription.java 2018-05-21 10:52:52.685501994 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_none_invoke_noredefine/TestDescription.java 2018-05-21 10:52:52.969502001 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_none_invoke_redefine/TestDescription.java 2018-05-21 10:52:53.249502008 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_none_reflect_noredefine/TestDescription.java 2018-05-21 10:52:53.529502015 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_none_reflect_redefine/TestDescription.java 2018-05-21 10:52:53.805502022 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_direct_noredefine/TestDescription.java 2018-05-21 10:52:54.097502029 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_direct_redefine/TestDescription.java 2018-05-21 10:52:54.373502036 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:54.649502043 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_invoke_redefine/TestDescription.java 2018-05-21 10:52:54.925502050 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:55.205502057 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_reflect_redefine/TestDescription.java 2018-05-21 10:52:55.485502064 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_direct_noredefine/TestDescription.java 2018-05-21 10:52:55.761502071 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_direct_redefine/TestDescription.java 2018-05-21 10:52:56.045502078 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:52:56.325502085 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_invoke_redefine/TestDescription.java 2018-05-21 10:52:56.605502092 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:52:56.881502099 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_reflect_redefine/TestDescription.java 2018-05-21 10:52:57.161502106 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:52:57.461502114 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:52:57.745502121 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:52:58.073502129 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:52:58.357502136 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:52:58.633502143 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:52:58.913502150 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/StaticMethods_v52_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.StaticMethodsTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Stress_noredefine/TestDescription.java 2018-05-21 10:52:59.189502157 -0700 @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Stress_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions vm.runtime.defmeth.StressTest + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/Stress_redefine/TestDescription.java 2018-05-21 10:52:59.461502164 -0700 @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/Stress_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.StressTest + * -redefine + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_none_direct_noredefine/TestDescription.java 2018-05-21 10:52:59.741502171 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_none_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 0 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_none_direct_redefine/TestDescription.java 2018-05-21 10:53:00.021502178 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_none_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_none_invoke_noredefine/TestDescription.java 2018-05-21 10:53:00.301502185 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_none_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 0 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_none_invoke_redefine/TestDescription.java 2018-05-21 10:53:00.585502193 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_none_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_none_reflect_noredefine/TestDescription.java 2018-05-21 10:53:00.865502200 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_none_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 0 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_none_reflect_redefine/TestDescription.java 2018-05-21 10:53:01.149502207 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_none_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 0 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_strict_direct_noredefine/TestDescription.java 2018-05-21 10:53:01.429502214 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_strict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2048 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_strict_direct_redefine/TestDescription.java 2018-05-21 10:53:01.709502221 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_strict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_strict_invoke_noredefine/TestDescription.java 2018-05-21 10:53:01.989502228 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_strict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2048 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_strict_invoke_redefine/TestDescription.java 2018-05-21 10:53:02.269502235 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_strict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_strict_reflect_noredefine/TestDescription.java 2018-05-21 10:53:02.549502242 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_strict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2048 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_strict_reflect_redefine/TestDescription.java 2018-05-21 10:53:02.833502249 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_strict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2048 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_sync_direct_noredefine/TestDescription.java 2018-05-21 10:53:03.117502256 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_sync_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 32 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_sync_direct_redefine/TestDescription.java 2018-05-21 10:53:03.397502263 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_sync_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_sync_invoke_noredefine/TestDescription.java 2018-05-21 10:53:03.673502270 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_sync_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 32 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_sync_invoke_redefine/TestDescription.java 2018-05-21 10:53:03.953502277 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_sync_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_sync_reflect_noredefine/TestDescription.java 2018-05-21 10:53:04.233502284 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_sync_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 32 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_sync_reflect_redefine/TestDescription.java 2018-05-21 10:53:04.509502291 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_sync_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 32 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_direct_noredefine/TestDescription.java 2018-05-21 10:53:04.789502298 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_direct_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2080 + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_direct_redefine/TestDescription.java 2018-05-21 10:53:05.065502305 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_direct_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode direct + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_invoke_noredefine/TestDescription.java 2018-05-21 10:53:05.365502313 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_invoke_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2080 + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_invoke_redefine/TestDescription.java 2018-05-21 10:53:05.641502320 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_invoke_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode invoke + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_reflect_noredefine/TestDescription.java 2018-05-21 10:53:05.921502327 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_reflect_noredefine. + * VM Testbase keywords: [defmeth, jdk8, quick] + * + * @library /vmTestbase /test/lib + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm + * -XX:+IgnoreUnrecognizedVMOptions + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2080 + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_reflect_redefine/TestDescription.java 2018-05-21 10:53:06.197502334 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + + +/* + * @test + * @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open + * + * @summary converted from VM Testbase vm/runtime/defmeth/scenarios/SuperCall_v52_syncstrict_reflect_redefine. + * VM Testbase keywords: [defmeth, jdk8, jdk_instrument, quick] + * + * @library /vmTestbase /test/lib + * + * @comment build retransform.jar in current dir + * @run driver vm.runtime.defmeth.shared.BuildJar + * + * @run driver jdk.test.lib.FileInstaller . . + * @run main/othervm/native + * -agentlib:redefineClasses + * -javaagent:retransform.jar + * vm.runtime.defmeth.SuperCallTest + * -ver 52 + * -flags 2080 + * -redefine + * -retransform + * -mode reflect + */ + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/BuildJar.java 2018-05-21 10:53:06.477502341 -0700 @@ -0,0 +1,102 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + +package vm.runtime.defmeth.shared; + +import jdk.test.lib.JDKToolLauncher; +import jdk.test.lib.Utils; +import jdk.test.lib.process.ProcessTools; +import jdk.test.lib.util.JarUtils; + +import java.io.File; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Arrays; + +/** + * Build {@code retransform.jar} in current directory using + * {@code vm/runtime/defmeth/shared/retransform.mf} and classes from + * {@code vm.runtime.defmeth.shared} package. + */ +public class BuildJar { + public static void main(String[] args) { + Path manifest = testRoot().resolve("vmTestbase") + .resolve("vm") + .resolve("runtime") + .resolve("defmeth") + .resolve("shared") + .resolve("retransform.mf") + .toAbsolutePath(); + if (Files.notExists(manifest)) { + throw new Error("can't find manifest file: " + manifest); + } + + Path file = foundInClassPath(Util.Transformer.class).toAbsolutePath(); + // Util$Transformer.class is in vm/runtime/defmeth/shared + Path dir = file.getParent() + .getParent() + .getParent() + .getParent() + .getParent() + .toAbsolutePath(); + + JDKToolLauncher jar = JDKToolLauncher.create("jar") + .addToolArg("cmf") + .addToolArg(manifest.toString()) + .addToolArg("retransform.jar") + .addToolArg("-C") + .addToolArg(dir.toString()) + .addToolArg(dir.relativize(file).toString()); + String[] command = jar.getCommand(); + try { + ProcessTools.executeCommand(command) + .shouldHaveExitValue(0); + } catch (Error | RuntimeException e) { + throw e; + } catch (Throwable e) { + throw new Error("execution of jar [" + Arrays.toString(command) + "] failed", e); + } + } + + private static Path foundInClassPath(Class aClass) { + Path file = Paths.get(aClass.getName() + .replace(".", File.separator) + ".class"); + for (String dir : Utils.TEST_CLASS_PATH.split(File.pathSeparator)) { + Path result = Paths.get(dir).resolve(file); + if (Files.exists(result)) { + return result; + } + } + throw new Error("can't find " + file + " in " + Utils.TEST_CLASS_PATH); + } + + private static Path testRoot() { + Path p = Paths.get(Utils.TEST_SRC); + while (!Files.exists(p.resolve("TEST.ROOT"))) { + p = p.getParent(); + } + return p; + } +} + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/ClassFileGenerator.java 2018-05-21 10:53:06.761502348 -0700 @@ -0,0 +1,771 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared; + + +import jdk.internal.org.objectweb.asm.Handle; +import jdk.internal.org.objectweb.asm.Type; +import nsk.share.TestFailure; +import nsk.share.test.TestUtils; +import jdk.internal.org.objectweb.asm.Label; +import jdk.internal.org.objectweb.asm.MethodVisitor; +import static jdk.internal.org.objectweb.asm.Opcodes.*; +import jdk.internal.org.objectweb.asm.ClassWriter; +import static jdk.internal.org.objectweb.asm.ClassWriter.*; + +import vm.runtime.defmeth.shared.data.*; +import vm.runtime.defmeth.shared.data.method.*; +import vm.runtime.defmeth.shared.data.method.body.*; +import vm.runtime.defmeth.shared.data.method.param.*; +import vm.runtime.defmeth.shared.data.method.result.*; + +import java.lang.invoke.CallSite; +import java.lang.invoke.MethodHandles; +import java.lang.invoke.MethodType; + +import static vm.runtime.defmeth.shared.ExecutionMode.*; + +/** + * Constructs class file from {@code Clazz} instance. + */ +public class ClassFileGenerator implements Visitor { + private final ExecutionMode invocationType; + + /** Default major version for generated class files + * Used when a class doesn't specify what major version should be specified. */ + private final int defaultMajorVer; + + /** Default access flags for generated class files + * Used when a class doesn't specify it's own access flags. */ + private final int defaultClassAccFlags; + + /** Represent current state of class file traversal. + * Used to avoid passing instances around. */ + private ClassWriter cw; + private MethodVisitor mv; + private Tester t; + + private String className; + + public ClassFileGenerator() { + this.defaultMajorVer = 52; + this.defaultClassAccFlags = ACC_PUBLIC; + this.invocationType = ExecutionMode.DIRECT; + } + + public ClassFileGenerator(int ver, int acc, ExecutionMode invocationType) { + this.defaultMajorVer = ver; + this.defaultClassAccFlags = acc; + this.invocationType = invocationType; + } + + /** + * Produce constructed class file as a {@code byte[]}. + * + * @return + */ + public byte[] getClassFile() { + return cw.toByteArray(); + } + + /** + * Push integer constant on stack. + * + * Choose most suitable bytecode to represent integer constant on stack. + * + * @param value + */ + private void pushIntConst(int value) { + switch (value) { + case 0: + mv.visitInsn(ICONST_0); + break; + case 1: + mv.visitInsn(ICONST_1); + break; + case 2: + mv.visitInsn(ICONST_2); + break; + case 3: + mv.visitInsn(ICONST_3); + break; + case 4: + mv.visitInsn(ICONST_4); + break; + case 5: + mv.visitInsn(ICONST_5); + break; + default: + mv.visitIntInsn(BIPUSH, value); + } + } + + @Override + public void visitClass(Clazz clz) { + throw new IllegalStateException("More specific method should be called"); + } + + @Override + public void visitMethod(Method m) { + throw new IllegalStateException("More specific method should be called"); + } + + @Override + public void visitConcreteClass(ConcreteClass clz) { + cw = new ClassWriter(COMPUTE_FRAMES | COMPUTE_MAXS); + + int ver = clz.ver(); + int flags = clz.flags(); + + className = clz.intlName(); + + cw.visit((ver != 0) ? ver : defaultMajorVer, + ACC_SUPER | ((flags != -1) ? flags : defaultClassAccFlags), + className, + /* signature */ clz.sig(), + clz.parent().intlName(), + Util.asStrings(clz.interfaces())); + + { // Default constructor: ()V + mv = cw.visitMethod(ACC_PUBLIC, "", "()V", null, null); + mv.visitCode(); + mv.visitVarInsn(ALOAD, 0); + mv.visitMethodInsn(INVOKESPECIAL, clz.parent().intlName(), "", "()V", false); + mv.visitInsn(RETURN); + mv.visitMaxs(0, 0); + mv.visitEnd(); + + mv = null; + } + + for (Method m : clz.methods()) { + m.visit(this); + } + + cw.visitEnd(); + } + + @Override + public void visitInterface(Interface intf) { + cw = new ClassWriter(COMPUTE_FRAMES | COMPUTE_MAXS); + + int ver = intf.ver(); + int flags = intf.flags(); + + className = intf.intlName(); + + cw.visit( + (ver != 0) ? ver : defaultMajorVer, + ACC_ABSTRACT | ACC_INTERFACE | ((flags != -1) ? flags : defaultClassAccFlags), + className, + intf.sig(), + "java/lang/Object", + Util.asStrings(intf.parents())); + + for (Method m : intf.methods()) { + m.visit(this); + } + + cw.visitEnd(); + } + + @Override + public void visitConcreteMethod(ConcreteMethod m) { + mv = cw.visitMethod( + m.acc(), + m.name(), + m.desc(), + m.sig(), + m.getExceptions()); + + m.body().visit(this); + + mv = null; + } + + @Override + public void visitAbstractMethod(AbstractMethod m) { + cw.visitMethod( + ACC_ABSTRACT | m.acc(), + m.name(), + m.desc(), + m.sig(), + m.getExceptions()); + + } + + @Override + public void visitDefaultMethod(DefaultMethod m) { + mv = cw.visitMethod( + m.acc(), + m.name(), + m.desc(), + m.sig(), + m.getExceptions()); + + m.body().visit(this); + + mv = null; + } + + /* ====================================================================== */ + + @Override + public void visitEmptyBody(EmptyBody aThis) { + mv.visitCode(); + mv.visitInsn(RETURN); + mv.visitMaxs(0, 0); + mv.visitEnd(); + } + + @Override + public void visitThrowExBody(ThrowExBody body) { + mv.visitCode(); + mv.visitTypeInsn(NEW, body.getExc().intlName()); + mv.visitInsn(DUP); + //mv.visitLdcInsn(body.getMsg()); + //mv.visitMethodInsn(INVOKESPECIAL, body.getExc(), "", "(Ljava/lang/String;)V", false); + mv.visitMethodInsn(INVOKESPECIAL, body.getExc().intlName(), "", "()V", false); + mv.visitInsn(ATHROW); + mv.visitMaxs(0, 0); + mv.visitEnd(); + } + + @Override + public void visitReturnIntBody(ReturnIntBody body) { + mv.visitCode(); + //mv.visitIntInsn(BIPUSH, body.getValue()); + pushIntConst(body.getValue()); + mv.visitInsn(IRETURN); + mv.visitMaxs(0, 0); + mv.visitEnd(); + } + + @Override + public void visitReturnNullBody(ReturnNullBody body) { + mv.visitCode(); + mv.visitInsn(ACONST_NULL); + mv.visitInsn(ARETURN); + mv.visitMaxs(0, 0); + mv.visitEnd(); + } + + private void generateCall(CallMethod callSite, ExecutionMode invocationType) { + switch (invocationType) { + case DIRECT: + generateDirectCall(callSite); + break; + case INVOKE_EXACT: + generateMHInvokeCall(callSite, /* isExact = */ true); + break; + case INVOKE_GENERIC: + generateMHInvokeCall(callSite, /* isExact = */ false); + break; + case INDY: + generateIndyCall(callSite); + break; + default: + throw new UnsupportedOperationException(invocationType.toString()); + } + } + + private void prepareParams(CallMethod callSite) { + // Prepare receiver + switch(callSite.invokeInsn()) { + case SPECIAL: // Put receiver (this) on stack + mv.visitVarInsn(ALOAD,0); + break; + case VIRTUAL: + case INTERFACE: // Construct receiver + if (callSite.receiverClass() != null) { + String receiver = callSite.receiverClass().intlName(); + // Construct new instance + mv.visitTypeInsn(NEW, receiver); + mv.visitInsn(DUP); + mv.visitMethodInsn(INVOKESPECIAL, receiver, + "", "()V", false); + } else { + // Use "this" + mv.visitVarInsn(ALOAD, 0); + } + mv.visitVarInsn(ASTORE, 1); + mv.visitVarInsn(ALOAD, 1); + break; + case STATIC: break; + } + + // Push parameters on stack + for (Param p : callSite.params()) { + p.visit(this); + } + + } + + private static Handle convertToHandle(CallMethod callSite) { + return new Handle( + /* tag */ callSite.invokeInsn().tag(), + /* owner */ callSite.staticClass().intlName(), + /* name */ callSite.methodName(), + /* desc */ callSite.methodDesc(), + /* interface */ callSite.isInterface()); + } + + private Handle generateBootstrapMethod(CallMethod callSite) { + String bootstrapName = "bootstrapMethod"; + MethodType bootstrapType = MethodType.methodType(CallSite.class, MethodHandles.Lookup.class, String.class, MethodType.class); + + MethodVisitor bmv = cw.visitMethod(ACC_PUBLIC | ACC_STATIC, bootstrapName, bootstrapType.toMethodDescriptorString(), null, null); + bmv.visitCode(); + + Handle mh = convertToHandle(callSite); + + String constCallSite = "java/lang/invoke/ConstantCallSite"; + bmv.visitTypeInsn(NEW, constCallSite); + bmv.visitInsn(DUP); + + bmv.visitLdcInsn(mh); + + bmv.visitMethodInsn(INVOKESPECIAL, constCallSite, "", "(Ljava/lang/invoke/MethodHandle;)V", false); + bmv.visitInsn(ARETURN); + + bmv.visitMaxs(0,0); + bmv.visitEnd(); + + return new Handle(H_INVOKESTATIC, className, bootstrapName, bootstrapType.toMethodDescriptorString()); + } + + private static String mhCallSiteDesc(CallMethod callSite) { + return (callSite.invokeInsn() != CallMethod.Invoke.STATIC) ? + prependType(callSite.methodDesc(), callSite.staticClass().intlName()) : + callSite.methodDesc(); // ignore receiver for static call + } + + private void generateIndyCall(CallMethod callSite) { + Handle bootstrap = generateBootstrapMethod(callSite); + String callSiteDesc = mhCallSiteDesc(callSite); + + prepareParams(callSite); + + // Call method + mv.visitInvokeDynamicInsn(callSite.methodName(), callSiteDesc, bootstrap); + + // Pop method result, if necessary + if (callSite.popReturnValue()) { + mv.visitInsn(POP); + } + } + + private void generateMHInvokeCall(CallMethod callSite, boolean isExact) { + // Construct a method handle for a callee + mv.visitLdcInsn(convertToHandle(callSite)); + + prepareParams(callSite); + + // Call method using MH + MethodHandle.invokeExact + mv.visitMethodInsn( + INVOKEVIRTUAL, + "java/lang/invoke/MethodHandle", + isExact ? "invokeExact" : "invoke", + mhCallSiteDesc(callSite), + false); + + // Pop method result, if necessary + if (callSite.popReturnValue()) { + mv.visitInsn(POP); + } + } + + // Prepend type as a first parameter + private static String prependType(String desc, String type) { + return desc.replaceFirst("\\(", "(L"+type+";"); + } + + private void generateDirectCall(CallMethod callSite) { + prepareParams(callSite); + + // Call method + mv.visitMethodInsn( + callSite.invokeInsn().opcode(), + callSite.staticClass().intlName(), + callSite.methodName(), callSite.methodDesc(), + callSite.isInterface()); + + // Pop method result, if necessary + if (callSite.popReturnValue()) { + mv.visitInsn(POP); + } + } + + @Override + public void visitCallMethod(CallMethod callSite) { + mv.visitCode(); + + generateCall(callSite, ExecutionMode.DIRECT); + + String typeName = callSite.returnType(); + + if (!callSite.popReturnValue()) { + // Call produces some value & it isn't popped out of the stack + // Need to return it + switch (typeName) { + // primitive types + case "I" : case "B" : case "C" : case "S" : case "Z" : + mv.visitInsn(IRETURN); + break; + case "L": mv.visitInsn(LRETURN); break; + case "F": mv.visitInsn(FRETURN); break; + case "D": mv.visitInsn(DRETURN); break; + case "V": mv.visitInsn(RETURN); break; + default: + // reference type + if ((typeName.startsWith("L") && typeName.endsWith(";")) + || typeName.startsWith("[")) + { + mv.visitInsn(ARETURN); + } else { + throw new IllegalStateException(typeName); + } + } + } else { + // Stack is empty. Plain return is enough. + mv.visitInsn(RETURN); + } + + mv.visitMaxs(0,0); + mv.visitEnd(); + } + + @Override + public void visitReturnNewInstanceBody(ReturnNewInstanceBody body) { + String className = body.getType().intlName(); + mv.visitCode(); + mv.visitTypeInsn(NEW, className); + mv.visitInsn(DUP); + mv.visitMethodInsn(INVOKESPECIAL, className, "", "()V", false); + mv.visitInsn(ARETURN); + mv.visitMaxs(0,0); + mv.visitEnd(); + } + + /* ====================================================================== */ + + @Override + public void visitTester(Tester tester) { + // If: + // cw = new ClassWriter(COMPUTE_FRAMES | COMPUTE_MAXS); + // then: + // java.lang.RuntimeException: java.lang.ClassNotFoundException: S + // at jdk.internal.org.objectweb.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1588) + // at jdk.internal.org.objectweb.asm.ClassWriter.getMergedType(ClassWriter.java:1559) + // at jdk.internal.org.objectweb.asm.Frame.merge(Frame.java:1407) + // at jdk.internal.org.objectweb.asm.Frame.merge(Frame.java:1308) + // at jdk.internal.org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1353) + //mv.visitMaxs(t.getParams().length > 1 ? t.getParams().length+1 : 2, 2); + + cw = new ClassWriter(COMPUTE_MAXS); + + int testMajorVer = defaultMajorVer; + + // JSR 292 is available starting Java 7 (major version 51) + if (invocationType == INVOKE_WITH_ARGS || + invocationType == INVOKE_EXACT || + invocationType == INVOKE_GENERIC) { + testMajorVer = Math.max(defaultMajorVer, 51); + } + + className = tester.intlName(); + + cw.visit(testMajorVer, ACC_PUBLIC | ACC_SUPER, className, null, "java/lang/Object", null); + + { // Test. + mv = cw.visitMethod(ACC_PUBLIC, "", "()V", null, null); + mv.visitCode(); + mv.visitVarInsn(ALOAD, 0); + mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "", "()V", false); + mv.visitInsn(RETURN); + mv.visitMaxs(0, 0); + mv.visitEnd(); + + mv = null; + } + + { // public static Test.test()V + mv = cw.visitMethod(ACC_PUBLIC | ACC_STATIC, "test", "()V", null, null); + try { + // Generate result handling + t = tester; + try { + tester.getResult().visit(this); + } finally { + t = null; + } + } finally { + mv = null; + } + } + + cw.visitEnd(); + } + + /* ====================================================================== */ + + @Override + public void visitResultInt(IntResult res) { + mv.visitCode(); + + generateCall(t.getCall(), invocationType); + + mv.visitIntInsn(BIPUSH, res.getExpected()); + mv.visitMethodInsn(INVOKESTATIC, Util.getInternalName(TestUtils.class), "assertEquals", "(II)V", false); + + mv.visitInsn(RETURN); + mv.visitMaxs(0, 0); + mv.visitEnd(); + + } + + /** + * Pseudo code: + * + * { + * try { + * I i = new C(); i.m(...); // C.m(); if m is static + * Assert.fail(); + * } catch (<exception> e) { + * Assert.assertEquals(<message>,e.getMessage()); + * } catch (Throwable e) { + * throw new RuntimeException("...", e); + * } + * } + * + */ + @Override + public void visitResultThrowExc(ThrowExResult res) { + mv.visitCode(); + + Label lblBegin = new Label(); + Label lblBootstrapMethodError = new Label(); + Label lblNoBME = new Label(); + if (invocationType == INDY) { + mv.visitTryCatchBlock(lblBegin, lblNoBME, lblBootstrapMethodError, "java/lang/BootstrapMethodError"); + } + + Label lblExpected = new Label(); + mv.visitTryCatchBlock(lblBegin, lblExpected, lblExpected, res.getExc().intlName()); + + Label lblThrowable = new Label(); + mv.visitTryCatchBlock(lblBegin, lblExpected, lblThrowable, "java/lang/Throwable"); + + + mv.visitLabel(lblBegin); + + generateCall(t.getCall(), invocationType); + + + if (Util.isNonVoid(t.getCall().returnType())) { + mv.visitInsn(POP); + } + + mv.visitLabel(lblNoBME); + + // throw new TestFailure("No exception was thrown") + mv.visitTypeInsn(NEW, "nsk/share/TestFailure"); + mv.visitInsn(DUP); + mv.visitLdcInsn("No exception was thrown"); + mv.visitMethodInsn(INVOKESPECIAL, "nsk/share/TestFailure", "", "(Ljava/lang/String;)V", false); + mv.visitInsn(ATHROW); + + // Unwrap exception during call site resolution from BootstrapMethodError + if (invocationType == INDY) { + // } catch (BootstrapMethodError e) { + // throw e.getCause(); + // } + mv.visitLabel(lblBootstrapMethodError); + mv.visitFrame(F_SAME1, 0, null, 1, new Object[] {"java/lang/BootstrapMethodError"}); + mv.visitVarInsn(ASTORE, 1); + mv.visitVarInsn(ALOAD, 1); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/BootstrapMethodError", "getCause", "()Ljava/lang/Throwable;", false); + + Label lblIsNull = new Label(); + mv.visitJumpInsn(IFNULL, lblIsNull); + // e.getCause() != null + mv.visitVarInsn(ALOAD, 1); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/BootstrapMethodError", "getCause", "()Ljava/lang/Throwable;", false); + mv.visitInsn(ATHROW); + + // e.getCause() == null + mv.visitLabel(lblIsNull); + mv.visitFrame(F_APPEND, 2, new Object[] {TOP, "java/lang/BootstrapMethodError"}, 0, null); + mv.visitVarInsn(ALOAD, 1); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/BootstrapMethodError", "getCause", "()Ljava/lang/Throwable;", false); + mv.visitInsn(ATHROW); + } + + // } catch ( e) { + // //if != null + // Assert.assertEquals(,e.getMessage()); + // } + mv.visitLabel(lblExpected); + mv.visitFrame(F_FULL, 0, new Object[] {}, 1, new Object[] { res.getExc().intlName() }); + + mv.visitVarInsn(ASTORE, 1); + + // Exception class comparison, if exact match is requested + if (res.isExact()) { + mv.visitVarInsn(ALOAD, 1); + mv.visitLdcInsn(Type.getType("L"+res.getExc().intlName()+";")); + mv.visitMethodInsn(INVOKESTATIC, Util.getInternalName(TestUtils.class), "assertExactClass", "(Ljava/lang/Object;Ljava/lang/Class;)V", false); + } + + // Compare exception's message, if needed + if (res.getMessage() != null) { + mv.visitVarInsn(ALOAD, 1); + mv.visitLdcInsn(res.getMessage()); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Exception", "getMessage", "()Ljava/lang/String;", false); + mv.visitMethodInsn(INVOKESTATIC, Util.getInternalName(TestUtils.class), "assertEquals", "(Ljava/lang/String;Ljava/lang/String;)V", false); + } + + mv.visitInsn(RETURN); + + // } catch (Throwable e) { + // throw new RuntimeException("Expected exception ", e); + // } + mv.visitLabel(lblThrowable); + mv.visitFrame(F_SAME1, 0, null, 1, new Object[]{"java/lang/Throwable"}); + mv.visitVarInsn(ASTORE, 1); + + // e.printStackTrace(); + //mv.visitVarInsn(ALOAD, 1); + //mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Throwable", "printStackTrace", "()V", false); + + // String msg = String.format("Expected exception J, got: %s: %s", + // e.getClass(), e.getMessage()); + // throw new RuntimeException(msg, e); + mv.visitTypeInsn(NEW, Util.getInternalName(TestFailure.class)); + mv.visitInsn(DUP); + mv.visitLdcInsn("Expected exception " + res.getExc().name() + ", got: %s: %s"); + mv.visitInsn(ICONST_2); + mv.visitTypeInsn(ANEWARRAY, "java/lang/Object"); + mv.visitInsn(DUP); + mv.visitInsn(ICONST_0); + mv.visitVarInsn(ALOAD, 1); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Object", "getClass", "()Ljava/lang/Class;", false); + mv.visitInsn(AASTORE); + mv.visitInsn(DUP); + mv.visitInsn(ICONST_1); + mv.visitVarInsn(ALOAD, 1); + mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Throwable", "getMessage", "()Ljava/lang/String;", false); + mv.visitInsn(AASTORE); + mv.visitMethodInsn(INVOKESTATIC, "java/lang/String", "format", "(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;", false); + + mv.visitVarInsn(ALOAD, 1); + mv.visitMethodInsn(INVOKESPECIAL, Util.getInternalName(TestFailure.class), "", "(Ljava/lang/String;Ljava/lang/Throwable;)V", false); + mv.visitInsn(ATHROW); + // end of lblThrowable + + mv.visitMaxs(0, 0); + mv.visitEnd(); + } + + @Override + public void visitResultIgnore() { + mv.visitCode(); + + generateCall(t.getCall(), invocationType); + + if (Util.isNonVoid(t.getCall().returnType())) { + mv.visitInsn(POP); + } + + mv.visitInsn(RETURN); + + mv.visitMaxs(0, 0); + mv.visitEnd(); + } + + /* ====================================================================== */ + + @Override + public void visitParamInt(IntParam i) { + pushIntConst(i.value()); + } + + @Override + public void visitParamLong(LongParam l) { + long value = l.value(); + + if (value == 0L) { + mv.visitInsn(LCONST_0); + } else { + mv.visitLdcInsn(new Long(value)); + } + } + + @Override + public void visitParamFloat(FloatParam f) { + float value = f.value(); + + if (value == 0.0f) { + mv.visitInsn(FCONST_0); + } else if (value == 1.0f) { + mv.visitInsn(FCONST_1); + } else if (value == 2.0f) { + mv.visitInsn(FCONST_2); + } else { + mv.visitLdcInsn(new Float(value)); + } + } + + @Override + public void visitParamDouble(DoubleParam d) { + double value = d.value(); + + if (value == 0.0d) { + mv.visitInsn(DCONST_0); + } else if (value == 1.0d) { + mv.visitInsn(DCONST_1); + } else { + mv.visitLdcInsn(new Double(value)); + } + } + + @Override + public void visitParamNewInstance(NewInstanceParam param) { + String className = param.clazz().intlName(); + + mv.visitTypeInsn(NEW, className); + mv.visitInsn(DUP); + mv.visitMethodInsn(INVOKESPECIAL, className, "", "()V", false); + } + + @Override + public void visitParamNull() { + mv.visitInsn(ACONST_NULL); + } + + @Override + public void visitParamString(StringParam str) { + mv.visitLdcInsn(str.value()); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/Constants.java 2018-05-21 10:53:07.041502355 -0700 @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared; + +import static java.lang.String.format; + +/** + * Set of constants which are used in the test suite. + * The actual values can be changed through corresponding property. + */ +public class Constants { + static public final boolean PRINT_ASSEMBLY = getValue("vm.runtime.defmeth.printAssembly", false); + static public final boolean PRINT_TESTS = getValue("vm.runtime.defmeth.printTests", false); + static public final boolean ASMIFY = getValue("vm.runtime.defmeth.printASMify", false); + static public final boolean DUMP_CLASSES = getValue("vm.runtime.defmeth.dumpClasses", false); + static public final boolean PRINT_STACK_TRACE = getValue("vm.runtime.defmeth.printStackTrace", false); + static public final boolean TRACE_CLASS_REDEF = getValue("vm.runtime.defmeth.traceClassRedefinition", false); + + /** + * Get value of the test suite's property + * Supported values: + * "" == true + * "true" == true + * "false" == false + * undefined == default value + */ + static boolean getValue(String property, boolean defaultValue) { + String value = System.getProperty(property); + + if ("false".equals(value)) return false; + if ("true".equals(value)) return true; + if ("".equals(value)) return true; + if (value == null ) return defaultValue; + + throw new IllegalArgumentException(format("Unknown value: -D%s=%s", property, value)); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/DefMethTest.java 2018-05-21 10:53:07.321502362 -0700 @@ -0,0 +1,366 @@ +/* +1;2c * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; +import java.util.ArrayList; +import java.util.List; +import java.util.TreeSet; +import java.util.regex.Pattern; +import nsk.share.TestFailure; +import nsk.share.log.Log; +import nsk.share.test.TestBase; +import vm.runtime.defmeth.AccessibilityFlagsTest; +import vm.runtime.defmeth.BasicTest; +import vm.runtime.defmeth.ConflictingDefaultsTest; +import vm.runtime.defmeth.DefaultVsAbstractTest; +import vm.runtime.defmeth.MethodResolutionTest; +import vm.runtime.defmeth.ObjectMethodOverridesTest; +import vm.runtime.defmeth.PrivateMethodsTest; +import vm.runtime.defmeth.StaticMethodsTest; +import vm.runtime.defmeth.SuperCallTest; +import vm.runtime.defmeth.shared.annotation.Crash; +import vm.runtime.defmeth.shared.annotation.KnownFailure; +import vm.runtime.defmeth.shared.annotation.NotApplicableFor; +import vm.runtime.defmeth.shared.builder.TestBuilderFactory; +import vm.share.options.Option; +import vm.share.options.OptionSupport; +import vm.share.options.Options; +import static java.lang.String.format; +import java.util.Collections; +import vm.runtime.defmeth.RedefineTest; +import vm.runtime.defmeth.shared.annotation.NotTest; + +/** + * Parent class for all default method tests. + * + * Contains common settings and code to run individual tests. + * + * Provides command-line interface to run arbitrary subset of + * tests on default methods with some customizations. + */ +public abstract class DefMethTest extends TestBase { + /** Classes that contain tests on default methods */ + static private final List> classes; + + // the number of tests has failed + // note that if more than one sub-test has failed within a test, + // it will be counted as 1 failure for that test + private int numFailures; + + static { + List> intlList = new ArrayList<>(); + + intlList.add(AccessibilityFlagsTest.class); + intlList.add(BasicTest.class); + intlList.add(ConflictingDefaultsTest.class); + intlList.add(DefaultVsAbstractTest.class); + intlList.add(MethodResolutionTest.class); + intlList.add(ObjectMethodOverridesTest.class); + intlList.add(SuperCallTest.class); + intlList.add(PrivateMethodsTest.class); + intlList.add(StaticMethodsTest.class); + intlList.add(RedefineTest.class); + + classes = Collections.unmodifiableList(intlList); + } + + public static List> getTests() { + return classes; + } + + @Option(name="list", default_value="false", description="list tests w/o executing them") + boolean listTests; + + @Option(name="filter", default_value="", description="filter executed tests") + String filterString; + + @Option(name="ignoreKnownFailures", default_value="false", description="ignore tests with known failures") + boolean ignoreKnownFailures; + + @Option(name="runOnlyFailingTests", default_value="false", description="run only failing tests") + boolean runOnlyFailingTests; + + @Option(name="ignoreCrashes", default_value="false", description="don't run tests with crash VM") + boolean ignoreCrashes; + + @Option(name="silent", default_value="false", description="silent mode - don't print anything") + boolean isSilent; + + @Option(name="failfast", default_value="false", description="fail the whole set of test on first failure") + boolean failFast; + + @Option(name="testAllModes", default_value="false", description="run each test in all possible modes") + boolean testAllModes; + + @Option(name="mode", description="invocation mode (direct, reflect, invoke)", default_value="direct") + private String mode; + + private Pattern filter; // Precompiled pattern for filterString + + /** + * Used from individual tests to get TestBuilder instances, + * which is aware of current testing configuration + */ + @Options + protected TestBuilderFactory factory = new TestBuilderFactory(this); + + private void init() { + if (isSilent) { + getLog().setInfoEnabled(false); + getLog().setWarnEnabled(false); + getLog().setDebugEnabled(false); + } + + if (filterString != null && !"".equals(filterString)) { + filter = Pattern.compile(".*" + filterString + ".*"); + } else { + filter = Pattern.compile(".*"); // match everything + } + + // Test-specific config + configure(); + } + + @Override + public final void run() { + init(); + + boolean success = runTest(); + if (!success) { + getLog().info("TEST FAILED"); + setFailed(true); + } else { + getLog().info("TEST PASSED"); + } + } + + protected void configure() { + // Is overriden by specific tests to do test-specific setup + } + + public Log getLog() { + return log; + } + + @Override + public String toString() { + return format("%s%s", + getClass().getSimpleName(), factory); + } + + /** Enumerate invocation modes to be tested */ + private ExecutionMode[] getInvocationModes() { + if (factory.getExecutionMode() != null) { + return new ExecutionMode[] { ExecutionMode.valueOf(factory.getExecutionMode()) }; + } + + if (testAllModes) { + return ExecutionMode.values(); + } + + switch(mode) { + case "direct": return new ExecutionMode[] { ExecutionMode.DIRECT }; + case "reflect": return new ExecutionMode[] { ExecutionMode.REFLECTION }; + case "invoke_exact": return new ExecutionMode[] { ExecutionMode.INVOKE_EXACT }; + case "invoke_generic": return new ExecutionMode[] { ExecutionMode.INVOKE_GENERIC }; + case "indy": return new ExecutionMode[] { ExecutionMode.INDY }; + case "invoke": return new ExecutionMode[] { ExecutionMode.INVOKE_WITH_ARGS, + ExecutionMode.INVOKE_EXACT, + ExecutionMode.INVOKE_GENERIC, + ExecutionMode.INDY }; + case "redefinition": + throw new Error("redefinition is only a pseudo-mode"); + default: + throw new Error("Unknown mode: " + mode); + } + } + + // Check whether the test is applicable to selected execution mode + private boolean shouldExecute(Method m, ExecutionMode mode) { + Class test = this.getClass(); + + int acc = m.getModifiers(); + if (m.isAnnotationPresent(NotTest.class) + || (ignoreCrashes && m.isAnnotationPresent(Crash.class)) + || !Modifier.isPublic(acc) || Modifier.isStatic(acc) + //|| m.getReturnType() != Void.class + || m.getParameterTypes().length != 0) + { + return false; // not a test + } + + String testName = format("%s.%s", test.getName(), m.getName()); + if (!filter.matcher(testName).matches()) { + return false; // test is filtered out + } + + if (m.isAnnotationPresent(NotApplicableFor.class)) { + for (ExecutionMode excludeFromMode : m.getAnnotation(NotApplicableFor.class).modes()) { + if (mode == excludeFromMode) { + return false; // not applicable to current execution mode + } else if (excludeFromMode == ExecutionMode.REDEFINITION && + (factory.isRedefineClasses() || factory.isRetransformClasses())) { + return false; // Can't redefine some tests. + } + + } + } + + if (ignoreKnownFailures && + m.isAnnotationPresent(KnownFailure.class)) { + ExecutionMode[] modes = m.getAnnotation(KnownFailure.class).modes(); + + if (modes.length == 0) return false; // by default, matches all modes + + for (ExecutionMode knownFailingMode : modes) { + if (mode == knownFailingMode) { + return false; // known failure in current mode + } + } + } + + return true; + } + + /** Information about the test being executed */ + public String shortTestName; + + public static class ComparableMethod implements Comparable { + final java.lang.reflect.Method m; + ComparableMethod(java.lang.reflect.Method m) { this.m = m; } + public int compareTo(ComparableMethod mo) { + String name = m.getName(); + String mo_name = mo.m.getName(); + return name.compareTo(mo_name); + } + } + + /** helper method for subclass to report the number of test failures. + * It is more important for the reflection case as an exception thrown + * deep in the call stack may not be propagated to this level. + * + * @param failures + */ + public void addFailureCount(int failures) { + numFailures += failures; + } + + /** + * Execute all tests from current class and report status. + * + * The following execution customization is supported: + * - filter tests by name using regex + * - ignore tests marked as @KnownFailure + * - ignore tests marked as @Crash + * - only run tests marked as @KnownFailure + * + * @return any failures occurred? + */ + public final boolean runTest() { + if (ignoreKnownFailures && runOnlyFailingTests) { + throw new IllegalArgumentException("conflicting parameters"); + } + + ExecutionMode[] invocationModes = getInvocationModes(); + + try { + int totalTests = 0; + int passedTests = 0; + + Class test = this.getClass(); + + getLog().info(format("\n%s %s", test.getSimpleName(), factory.toString())); + + TreeSet ts = new TreeSet(); + for (java.lang.reflect.Method m : test.getDeclaredMethods()) { + ts.add(new ComparableMethod(m)); + } + + for (ComparableMethod cm : ts) { + java.lang.reflect.Method m = cm.m; + for (ExecutionMode mode : invocationModes) { + shortTestName = format("%s.%s", test.getSimpleName(), m.getName()); + + if (!shouldExecute(m, mode)) { + continue; // skip the test due to current configuration + } + + totalTests++; + + getLog().info(shortTestName); + + if (listTests) { + continue; // just print test info + } + + // Iterate over all test modes + try { + factory.setExecutionMode(mode.name()); + getLog().info(format(" %s: ", mode)); + m.invoke(this); + } catch (IllegalAccessException | IllegalArgumentException e) { + throw new TestFailure(e); + } catch (InvocationTargetException e) { + if (e.getCause() instanceof TestFailure) { + // Failure details were printed in GeneratedTest.run()/ReflectionTest.run() + } else { + if (Constants.PRINT_STACK_TRACE) { + e.printStackTrace(); + } + } + + if (failFast) { + throw new TestFailure(e.getCause()); + } + } + } + } + + passedTests = totalTests - numFailures; + getLog().info(format("%d test run: %d passed, %d failed", totalTests, passedTests, numFailures)); + if (numFailures == 0) { + return true; + } else { + return false; + } + } catch (Exception | Error e) { + throw new RuntimeException(e); + } + } + + /** Command-line interface to initiate test run */ + public static void main(String[] args) { + for (Class clz : classes) { + try { + DefMethTest test = clz.newInstance(); + OptionSupport.setupAndRun(test, args); + } catch (InstantiationException | IllegalAccessException e) { + throw new TestFailure(e); + } + } + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/DefMethTestFailure.java 2018-05-21 10:53:07.601502369 -0700 @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared; + +import java.util.List; +import nsk.share.Pair; +import nsk.share.TestFailure; +import vm.runtime.defmeth.shared.data.Tester; + +/** + * Test failure in a test on default method. + * + * Contains details about possibly multiple errors in + * individual test cases. + */ +public class DefMethTestFailure extends TestFailure { + private final List> errors; + + public DefMethTestFailure(List> errors) { + this.errors = errors; + } + + public List> getErrors() { + return errors; + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/ExecutionMode.java 2018-05-21 10:53:07.897502377 -0700 @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared; + +/** + * Represents all supported methods of method invocation for testing purposes. + * Test scenarios can be run in all of these modes (with some exceptions). + */ +public enum ExecutionMode { + DIRECT, // invoke methods using invoke* instructions on bytecode level + REFLECTION, // use Reflection API (java.lang.reflect) for method invocation + REDEFINITION, // use RedefineClasses + INVOKE_EXACT, // use MethodHandle.invokeExact(...) + INVOKE_GENERIC, // use MethodHandle.invoke(...) + INVOKE_WITH_ARGS, // use MethodHandle.invokeWithArguments(...) + INDY; // use invokedynamic instruction + + public boolean isReflectionBased() { + return (this == REFLECTION || this == INVOKE_WITH_ARGS); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/MemoryClassLoader.java 2018-05-21 10:53:08.177502384 -0700 @@ -0,0 +1,195 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.Map.Entry; +import nsk.share.TestFailure; + +/** + * Class loader for classes from internal in-memory cache + */ +public class MemoryClassLoader extends ClassLoader { + private Map classes; + + public MemoryClassLoader(Map classes) { + this.classes = new LinkedHashMap<>(classes); + } + + public MemoryClassLoader(Map classes, ClassLoader parent) { + super(parent); + this.classes = new LinkedHashMap<>(classes); + } + + @Override + public Class loadClass(String name, boolean resolve) throws ClassNotFoundException { + // Lookup classes from default package eagerly. + // Otherwise, it may interfere with other classes on classpath in testbase + if (!name.contains(".") && classes.containsKey(name)) { + // First, check if the class has already been loaded + Class c = findLoadedClass(name); + if (c == null) { + byte[] code = classes.get(name); + c = defineClass(name, code, 0, code.length); + } + if (resolve) resolveClass(c); + return c; + } else { + return super.loadClass(name, resolve); + } + } + + @Override + protected Class findClass(String name) throws ClassNotFoundException { + if (classes.containsKey(name)) { + byte[] code = classes.get(name); + return defineClass(name, code, 0, code.length); + } + return null; + } + + /** + * Check whether a class called {@code className} is loaded by any of + * ancestor class loaders. + * + * @param className + * @return + */ + private boolean loadedByParent(String className) { + try { + return (getParent().loadClass(className) != null); + } catch (ClassNotFoundException ex) { + return false; + } + } + + /** + * Pre-load all classes which are present in internal storage. + * + */ + public void tryPreloadClasses() { + for (String name : classes.keySet()) { + try { + loadClass(name); + } catch (ClassNotFoundException e) { + // ignore errors during class loading + } + } + } + + /** + * Redefine all classes, loaded by this class loader with their very same + * versions. Used to stress class redefinition code. + * + * @return + */ + public MemoryClassLoader modifyClasses(boolean retransform) { + for (Entry entry : classes.entrySet()) { + modifyClass(entry, retransform); + } + return this; + } + + public void modifyClasses(Map redefine, boolean retransform) { + for (Entry entry : redefine.entrySet()) { + modifyClass(entry, retransform); + } + } + + private void modifyClass(Entry entry, boolean retransform) { + try { + String name = entry.getKey(); + + // Skip classes which are loaded by parent class loader and that are not + // in the unnamed package (otherwise it'll pick up classes from other Testbase + // tests, m.class for instance, that are on the regular classpath) e.g. + // j.l.AbstractMethodError. Their placeholders are used during test creation, + // but don't participate in test execution. + if (name.contains(".") && loadedByParent(name)) { + return; + } + + Class clz = loadClass(name); + byte[] code = entry.getValue(); + + if (clz == null) { + // Ignore not "loadable" classes. + // For example, reflection scenarios don't generate classes for testers + return; + } + + if (retransform) { + Util.retransformClass(clz, code); + } else { + Util.redefineClass(clz, code); + } + + } catch (LinkageError e) { + // Ignore errors during linkage, since some tests produce + // incorrect class files intentionally. + } catch (ClassNotFoundException ex) { + throw new TestFailure(ex); + } + } + + /** Prepare test context (vm.runtime.defmeth.shared.TestContext) */ + private Class contextClass; + + public synchronized Class getTestContext() { + if (contextClass == null) { + String context = TestContext.class.getName(); + byte[] classFile = getClassFileFromParent(context); + contextClass = defineClass(context, classFile, 0, classFile.length); + } + return contextClass; + } + + /** Get class file content from parent class loader */ + private byte[] getClassFileFromParent(String name) { + String resourceName = name.replaceAll("\\.","/")+".class"; + InputStream resource = getParent().getResourceAsStream(resourceName); + ByteArrayOutputStream output = new ByteArrayOutputStream(); + + byte[] buffer = new byte[8092]; + int count = -1; + try { + while ((count = resource.read(buffer)) != -1) { + output.write(buffer, 0, count); + } + resource.close(); + } catch (NullPointerException npe) { + // getResourceAsStream returns null for IOException + System.out.println("Unable to get resourceName " + resourceName); + throw new Error(npe); + } catch (IOException ex) { + throw new Error(ex); + } + + return output.toByteArray(); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/Printer.java 2018-05-21 10:53:08.453502391 -0700 @@ -0,0 +1,400 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared; + +import java.util.List; +import java.util.ArrayList; +import static jdk.internal.org.objectweb.asm.Opcodes.*; + +import vm.runtime.defmeth.shared.data.*; +import vm.runtime.defmeth.shared.data.method.*; +import vm.runtime.defmeth.shared.data.method.body.*; +import vm.runtime.defmeth.shared.data.method.param.*; +import vm.runtime.defmeth.shared.data.method.result.*; + +import static java.lang.String.*; +import nsk.share.Pair; + + +/** + * Construct text representation of a class. + * Used to print generated class hierarchies. + */ +public class Printer implements Visitor { + + private StringBuilder sb = new StringBuilder(); + private Tester t; + + private String output() { + return sb.toString(); + } + + static private String printAcc(int acc) { + List flags = new ArrayList<>(); + + if ((acc & ACC_STATIC) != 0) { + flags.add("static"); + } + + if ((acc & ACC_PUBLIC) != 0) { + flags.add("public"); + } + + if ((acc & ACC_PRIVATE) != 0) { + flags.add("private"); + } + + if ((acc & ACC_PROTECTED) != 0) { + flags.add("protected"); + } + + if ((acc & ACC_PUBLIC) == 0 && + (acc & ACC_PRIVATE) == 0 && + (acc & ACC_PROTECTED) == 0) { + flags.add("package"); + } + + if ((acc & ACC_STRICT) != 0) { + flags.add("strictfp"); + } + + if ((acc & ACC_SYNCHRONIZED) != 0) { + flags.add("synchronized"); + } + + return Util.intersperse(" ", flags.toArray(new String[0])); + } + static public String print(Clazz clz) { + Printer p = new Printer(); + clz.visit(p); + return p.output(); + } + + static public String print(Method m) { + Printer p = new Printer(); + m.visit(p); + return p.output(); + } + + @Override + public void visitClass(Clazz clz) { + throw new IllegalStateException("More specific method should be called"); + } + + @Override + public void visitMethod(Method m) { + sb.append(String.format( + "%s%s", + m.name(), m.desc())); + + if (m.sig() != null) { + sb.append("/* <").append(m.sig()).append("> */"); + } + } + + @Override + public void visitConcreteClass(ConcreteClass clz) { + sb.append("class ").append(clz.name()).append(" "); + + if (!clz.parent().name().equals("java.lang.Object")) { + sb.append("extends ").append(clz.parent().name()).append(" "); + } + + if (clz.interfaces().length > 0) { + sb.append("implements "); + sb.append(Util.intersperse(", ", Util.asStrings(clz.interfaces()))); + sb.append(" "); + } + + Method[] methods = clz.methods(); + + sb.append("{"); + if (methods.length > 0) { + for (Method m : methods) { + sb.append("\n "); + m.visit(this); + } + sb.append("\n"); + } + sb.append("}"); + } + + @Override + public void visitInterface(Interface intf) { + sb.append("interface ").append(intf.name()) + .append(" "); + + if (intf.parents().length > 0) { + sb.append("extends "); + sb.append(Util.intersperse(", ", Util.asStrings(intf.parents()))); + sb.append(" "); + } + + Method[] methods = intf.methods(); + + sb.append("{"); + if (methods.length > 0) { + for (Method m : methods) { + sb.append("\n "); + m.visit(this); + } + sb.append("\n"); + } + sb.append("}"); + } + @Override + + /* ====================================================================== */ + + public void visitTester(Tester t) { + this.t = t; + + //sb.append(t.name()).append(": "); + sb.append("TEST: "); + + //t.getCall().visit(this); + CallMethod call = t.getCall(); + + // call.receiverClass() is null when a .staticCallSite() invoke is + // used. There is a staticClass but no receiverClass. + sb.append(format("%s o = new %s(); o.%s%s", + call.staticClass().name(), + (call.receiverClass() == null ? "" : call.receiverClass().name()), + call.methodName(), + call.methodDesc())); + + sb.append(" "); + + t.getResult().visit(this); + + this.t = null; + } + + /* ====================================================================== */ + + @Override + public void visitAbstractMethod(AbstractMethod m) { + Pair desc = Util.parseDesc(m.desc()); + + sb.append(format( + "abstract %s %s %s(%s);", + printAcc(m.acc()), + Util.decodeClassName(desc.second), + m.name(), + Util.intersperse(", ", desc.first))); + + if (m.sig() != null) { + sb.append("<").append(m.sig()).append(">"); + } + } + + @Override + public void visitConcreteMethod(ConcreteMethod m) { + Pair desc = Util.parseDesc(m.desc()); + + sb.append(format( + "%s %s %s(%s)", + printAcc(m.acc()), + Util.decodeClassName(desc.second), + m.name(), + Util.intersperse(", ", desc.first))); + + if (m.sig() != null) { + sb.append("<").append(m.sig()).append(">"); + } + + sb.append(" "); + + sb.append(" { "); + m.body().visit(this); + sb.append(" }"); + } + + @Override + public void visitDefaultMethod(DefaultMethod m) { + Pair desc = Util.parseDesc(m.desc()); + + sb.append(format( + "default %s %s %s(%s)", + printAcc(m.acc()), + Util.decodeClassName(desc.second), + m.name(), + Util.intersperse(", ", desc.first))); + + if (m.sig() != null) { + sb.append("<").append(m.sig()).append(">"); + } + + sb.append(" { "); + m.body().visit(this); + sb.append(" }"); + } + + /* ====================================================================== */ + + @Override + public void visitThrowExBody(ThrowExBody body) { + sb.append(String.format( + "throw new %s();", body.getExc().name())); + } + + @Override + public void visitReturnIntBody(ReturnIntBody body) { + sb.append(String.format( + "return %d;", body.getValue())); + } + + @Override + public void visitReturnNullBody(ReturnNullBody body) { + sb.append("return null;"); + } + + @Override + public void visitEmptyBody(EmptyBody aThis) { + } + + /* ====================================================================== */ + + @Override + public void visitResultIgnore() { + sb.append("/* result ignored */"); + } + + @Override + public void visitResultInt(IntResult res) { + sb.append("== ").append(res.getExpected()); + } + + @Override + public void visitResultThrowExc(ThrowExResult res) { + sb.append(String.format( + "throws %s%s", + abbreviateExcName(res.getExc().name()), + res.getMessage() != null ? "(\"" + res.getMessage() + "\")" : "")); + } + + private String abbreviateExcName(String name) { + switch(name) { + case "java.lang.AbstractMethodError" : return "AME"; + case "java.lang.NoSuchMethodError" : return "NSME"; + default: return name.replaceAll("java\\.lang\\.", ""); + } + } + /* ====================================================================== */ + + @Override + public void visitParamInt(IntParam param) { + sb.append(param.value()); + } + + @Override + public void visitParamString(StringParam param) { + sb.append(param.value()); + } + + @Override + public void visitParamNull() { + sb.append("null"); + } + @Override + public void visitParamLong(LongParam param) { + sb.append(param.value()); + } + + @Override + public void visitParamFloat(FloatParam param) { + sb.append(param.value()); + } + + @Override + public void visitParamDouble(DoubleParam param) { + sb.append(param.value()); + } + + @Override + public void visitParamNewInstance(NewInstanceParam param) { + sb.append(String.format( + "new %s()", + param.clazz().name())); + } + + @Override + public void visitCallMethod(CallMethod call) { + String[] paramTypes = Util.parseDesc(call.methodDesc()).first; + + if (paramTypes.length != call.params().length) { + throw new IllegalStateException(); + } + + //sb.append("{ "); + if (!call.popReturnValue()) { + sb.append("return "); + } + + switch (call.invokeInsn()) { + case VIRTUAL: case INTERFACE: + sb.append(String.format( + "((%s)%s).%s(", + call.staticClass().name(), + call.receiverClass() != null ? call.receiverClass().name() : "this", + call.methodName())); + break; + case STATIC: + sb.append(String.format( + "%s.%s(", + call.staticClass().name(), + call.methodName())); + break; + case SPECIAL: + sb.append(String.format( + "%s.super.%s(", + call.staticClass().name(), + call.methodName())); + break; + default: + throw new IllegalStateException(); + } + + for (int i = 0; i declaringClass, + String methodName, MethodType type, Object... arguments) throws Throwable { + // Need to do method lookup in the right context + // Otherwise, ClassNotFoundException is thrown + MethodHandles.Lookup LOOKUP = MethodHandles.lookup(); + MethodHandle mh; + + // FYI: can't use switch over enum here, because to implement it javac produces auxiliary class TestContext$1 + // and it can't be accessed from the context where TestContext is loaded + if (invokeType == CallMethod.Invoke.VIRTUAL || invokeType == CallMethod.Invoke.INTERFACE) { + mh = LOOKUP.findVirtual(declaringClass, methodName, type); + } else if (invokeType == CallMethod.Invoke.SPECIAL) { + mh = LOOKUP.findSpecial(declaringClass, methodName, type, declaringClass); + } else if (invokeType == CallMethod.Invoke.STATIC) { + mh = LOOKUP.findStatic(declaringClass, methodName, type); + } else { + throw new Error("Unknown invoke instruction: "+invokeType); + } + + return mh.invokeWithArguments(arguments); + } +} + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/Util.java 2018-05-21 10:53:09.013502405 -0700 @@ -0,0 +1,463 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared; + +import vm.runtime.defmeth.shared.data.Clazz; +import java.io.PrintWriter; +import java.lang.instrument.ClassFileTransformer; +import java.lang.instrument.IllegalClassFormatException; +import java.lang.instrument.Instrumentation; +import java.lang.instrument.UnmodifiableClassException; +import java.security.ProtectionDomain; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.regex.Matcher; +import java.util.regex.Pattern; +import nsk.share.Pair; +import nsk.share.TestFailure; +import vm.runtime.defmeth.shared.data.method.param.*; + + +/** + * Utility class with auxiliary miscellaneous methods. + */ +public class Util { + public static class Transformer { + private static Instrumentation inst; + + public static void premain(String agentArgs, Instrumentation inst) { + Transformer.inst = inst; + + /* + inst.addTransformer(new ClassFileTransformer() { + @Override + public byte[] transform(ClassLoader loader, String className, Class classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer) throws IllegalClassFormatException { + System.out.println("Retransform (initial): " + className); + return classfileBuffer; + } + }); + */ + } + } + + /** + * Concatenate {@code strings} array interleaving with {@code sep} in between. + * + * @param sep + * @param strings + * @return + */ + public static String intersperse(String sep, String... strings) { + StringBuilder sb = new StringBuilder(); + if (strings.length == 0) { + return ""; + } else if (strings.length == 1) { + return strings[0]; + } else { + sb.append(strings[0]); + + for (int i=1; i parseDesc(String desc) { + Pattern p = Pattern.compile("\\((.*)\\)(.*)"); + Matcher m = p.matcher(desc); + + if (m.matches()) { + String opts = m.group(1); + String returnVal = m.group(2); + + return Pair.of(parseParams(opts), returnVal); + } else { + throw new IllegalArgumentException(desc); + } + + } + + /** + * Check whether a type isn't Void by it's name. + * + * @param type return type name + * @return + */ + public static boolean isNonVoid(String type) { + return !("V".equals(type)); + } + + /** + * Split a sequence of type names (in VM internal form). + * + * Example: + * "BCD[[ALA;I" => [ "B", "C", "D", "[[A", "LA;", "I" ] + * + * @param str + * @return + */ + public static String[] parseParams(String str) { + List params = new ArrayList<>(); + + /* VM basic type notation: + B byte signed byte + C char Unicode character code point in the Basic Multilingual Plane, encoded with UTF-16 + D double double-precision floating-point value + F float single-precision floating-point value + I int integer + J long long integer + L Classname ; reference an instance of class Classname + S short signed short + Z boolean true or false + [ reference one array dimension + */ + int i = 0; + int start = 0; + while (i < str.length()) { + char c = str.charAt(i); + switch (c) { + case 'B': case 'C': case 'D': case 'F': + case 'I': case 'J': case 'S': case 'Z': + params.add(str.substring(start, i+1)); + start = i+1; + break; + case 'L': + int k = str.indexOf(';', i); + if (k != 1) { + params.add(str.substring(start, k+1)); + start = k+1; + i = k; + } else { + throw new IllegalArgumentException(str); + } + break; + case '[': + break; + default: + throw new IllegalArgumentException( + String.format("%d(%d): %c \'%s\'", i, start, c, str)); + } + + i++; + } + + if (start != str.length()) { + throw new IllegalArgumentException(str); + } + + return params.toArray(new String[0]); + } + + /** + * Returns default values for different types: + * - byte: 0 + * - short: 0 + * - int: 0 + * - long: 0L + * - char: \U0000 + * - boolean: false + * - float: 0.0f + * - double: 0.0d + * - array: null + * - Object: null + * + * @param types + * @return + */ + public static Param[] getDefaultValues(String[] types) { + List values = new ArrayList<>(); + + for (String type : types) { + switch (type) { + case "I": case "B": case "C": case "Z": case "S": + values.add(new IntParam(0)); + break; + case "J": + values.add(new LongParam(0L)); + break; + case "D": + values.add(new DoubleParam(0.0d)); + break; + case "F": + values.add(new FloatParam(0.0f)); + break; + default: + if (type.startsWith("L") || type.startsWith("[")) { + values.add(new NullParam()); + } else { + throw new IllegalArgumentException(Arrays.toString(types)); + } + break; + } + } + + return values.toArray(new Param[0]); + } + + /** + * Decode class name from internal VM representation into normal Java name. + * Internal class naming convention is extensively used to describe method type (descriptor). + * + * Examples: + * "Ljava/lang/Object" => "java.lang.Object" + * "I" => "int" + * "[[[C" => "char[][][]" + * + * @param name + * @return + */ + public static String decodeClassName(String name) { + switch (name) { + case "Z": return "boolean"; + case "B": return "byte"; + case "S": return "short"; + case "C": return "char"; + case "I": return "int"; + case "J": return "long"; + case "F": return "float"; + case "D": return "double"; + default: + if (name.startsWith("L")) { + // "Ljava/lang/String;" => "java.lang.String" + return name.substring(1, name.length()-1).replaceAll("/", "."); + } else if (name.startsWith("[")) { + // "[[[C" => "char[][][]" + return decodeClassName(name.substring(1)) + "[]"; + } else { + throw new IllegalArgumentException(name); + } + } + } + + /** + * Decode class name from internal VM format into regular name and resolve it using {@code cl} {@code ClassLoader}. + * It is used during conversion of method type from string representation to strongly typed variants (e.g. MethodType). + * + * @param name + * @param cl + * @return + */ + public static Class decodeClass(String name, ClassLoader cl) { + switch (name) { + case "Z": return boolean.class; + case "B": return byte.class; + case "S": return short.class; + case "C": return char.class; + case "I": return int.class; + case "J": return long.class; + case "F": return float.class; + case "D": return double.class; + case "V": return void.class; + default: + if (name.startsWith("L")) { + // "Ljava/lang/String;" => "java.lang.String" + String decodedName = name.substring(1, name.length()-1).replaceAll("/", "."); + try { + return cl.loadClass(decodedName); + } catch (Exception e) { + throw new Error(e); + } + } else if (name.startsWith("[")) { + // "[[[C" => "char[][][]" + //return decodeClassName(name.substring(1)) + "[]"; + throw new UnsupportedOperationException("Resolution of arrays isn't supported yet: "+name); + } else { + throw new IllegalArgumentException(name); + } + } + } + + /** + * Redefine a class with a new version. + * + * @param clz class for redefinition + */ + static public void retransformClass(final Class clz, final byte[] classFile) { + ClassFileTransformer transformer = new ClassFileTransformer() { + @Override + public byte[] transform(ClassLoader loader, String className, Class classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer) throws IllegalClassFormatException { + if (clz.getClassLoader() == loader && className.equals(clz.getName())) { + if (Constants.TRACE_CLASS_REDEF) System.out.println("RETRANSFORM: " + className); + + return classFile; + } else { + // leave the class as-is + return classfileBuffer; + } + } + }; + + Transformer.inst.addTransformer(transformer, true); + try { + Transformer.inst.retransformClasses(clz); + } catch (UnmodifiableClassException e) { + throw new TestFailure(e); + } finally { + Transformer.inst.removeTransformer(transformer); + } + } + + /** + * Redefine a class with a new version (class file in byte array). + * + * @param clz class for redefinition + * @param classFile new version as a byte array + * @return false if any errors occurred during class redefinition + */ + static public void redefineClass(Class clz, byte[] classFile) { + if (clz == null) { + throw new IllegalArgumentException("clz == null"); + } + + if (classFile == null || classFile.length == 0) { + throw new IllegalArgumentException("Incorrect classFile"); + } + + if (Constants.TRACE_CLASS_REDEF) System.out.println("REDEFINE: "+clz.getName()); + + if (!redefineClassIntl(clz, classFile)) { + throw new TestFailure("redefineClass failed: "+clz.getName()); + } + } + + + native static public boolean redefineClassIntl(Class clz, byte[] classFile); + + /** + * Get VM internal name of {@code Class clz}. + * + * @param clz + * @return + */ + public static String getInternalName(Class clz) { + if (!clz.isPrimitive()) { + return clz.getName().replaceAll("\\.", "/"); + } else { + throw new UnsupportedOperationException(); + } + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/annotation/Crash.java 2018-05-21 10:53:09.297502412 -0700 @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.annotation; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * Mark a test that it may crash VM. + * Allows to exclude all such tests when crashes are undesirable + * (e.g. same VM execution mode). + */ +@Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.METHOD) +public @interface Crash {} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/annotation/KnownFailure.java 2018-05-21 10:53:09.573502419 -0700 @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.annotation; + +import vm.runtime.defmeth.shared.ExecutionMode; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * Mark a test that it may fail (due to a test or product bug). + * Allows to exclude all failing tests when failures are undesirable. + */ +@Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.METHOD) +public @interface KnownFailure { + ExecutionMode[] modes() default {}; +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/annotation/NotApplicableFor.java 2018-05-21 10:53:09.853502426 -0700 @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.annotation; + +import vm.runtime.defmeth.shared.ExecutionMode; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +/** + * Marks that a test isn't applicable for execution in particular invocation mode. + */ +@Retention( RetentionPolicy.RUNTIME) +public @interface NotApplicableFor { + ExecutionMode[] modes(); +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/annotation/NotTest.java 2018-05-21 10:53:10.133502433 -0700 @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.annotation; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/* + * Explicitly marks a method as not a test, thus ensuring that it won't be + * executed as part of a test run. + */ +@Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.METHOD) +public @interface NotTest { + +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/AccessFlag.java 2018-05-21 10:53:10.417502440 -0700 @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +import static jdk.internal.org.objectweb.asm.Opcodes.*; + +/** + * Access flags, related to element visibility (public, private, etc). + * + * Introduced to simplify management of access flags due to peculiarity how + * package-private is represented ((ACC_PUBLIC | ACC_PROTECTED | ACC_PRIVATE) == 0). + */ +public enum AccessFlag { + PUBLIC (ACC_PUBLIC), + PROTECTED (ACC_PROTECTED), + PRIVATE (ACC_PRIVATE), + PACKAGE_PRIVATE (0); + + public final int mask; + + AccessFlag(int mask) { + this.mask = mask; + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/Builder.java 2018-05-21 10:53:10.697502447 -0700 @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +/** + * Builder for some arbitrary type {@code }. + * + * @param + */ +interface Builder { + + T build(); + + TestBuilder done(); + +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/ClassBuilder.java 2018-05-21 10:53:10.973502454 -0700 @@ -0,0 +1,119 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +import java.util.ArrayList; +import java.util.List; +import vm.runtime.defmeth.shared.data.method.Method; +import static jdk.internal.org.objectweb.asm.Opcodes.*; + +/** + * Generic builder for classes of type {@code } using + * builder of type {@code }. + * + * Builder type is necessary to support type-safe fluent code style. + * + * Example: + * + * public class InterfaceBuilder + * extends ClassBuilder<InterfaceBuilder,Interface> { ... + * + * + * It produces {@code Interface} instance and all interim method calls return + * {@code InterfaceBuilder} instance. + * + * @param + * @param + */ +public abstract class ClassBuilder implements Builder { + protected String name; + + // Class flags + protected int flags = ACC_PUBLIC; + + // Exact class file major version, if needed + protected int majorVer; + + // Class signature (if applicable) + protected String sig; + + // Declared methods + protected List methods = new ArrayList<>(); + + // Enclosing test builder + protected TestBuilder builder; + + public ClassBuilder(TestBuilder builder) { + this.builder = builder; + } + + @SuppressWarnings("unchecked") + public T flags(int flags) { + this.flags = flags; + + return (T)this; + } + + @SuppressWarnings("unchecked") + public T addFlags(int flags) { + this.flags |= flags; + + return (T)this; + } + + @SuppressWarnings("unchecked") + public T name(String name) { + this.name = name; + + return (T)this; + } + + @SuppressWarnings("unchecked") + public T method(Method m) { + methods.add(m); + + return (T)this; + } + + @SuppressWarnings("unchecked") + public T ver(int ver) { + this.majorVer = ver; + + return (T)this; + } + + @SuppressWarnings("unchecked") + public T sig(String sig) { + this.sig = sig; + + return (T)this; + } + + @Override + public TestBuilder done() { + build(); + + return builder; + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/ClassMethodBuilder.java 2018-05-21 10:53:11.253502461 -0700 @@ -0,0 +1,107 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.ConcreteClass; +import vm.runtime.defmeth.shared.data.method.body.CallMethod; +import vm.runtime.defmeth.shared.data.method.body.MethodBody; + +/** + * Context-specific builder for method instances of type {@code }. + * Allows to construct type-safe nested builders for classes with methods. + * + * Example: + * + * Interface I = + * new TestBuilder().intf("I") + * .defaultMethod("m", "()V").emptyBody().build() + * .build(); + * + * + * @param + */ +public class ClassMethodBuilder { + /* Enclosing Clazz builder */ + private ClassBuilder cb; + + private MethodBuilder mb; + + /* package-private */ ClassMethodBuilder(ClassBuilder cb, MethodBuilder mb) { + this.cb = cb; + this.mb = mb; + } + + public ClassMethodBuilder name(String name) { mb.name(name); return this; } + public ClassMethodBuilder desc(String desc) { mb.desc(desc); return this; } + public ClassMethodBuilder sig(String sig) { mb.sig(sig); return this; } + + public ClassMethodBuilder body(MethodBody body) { mb.body(body); return this; } + + public ClassMethodBuilder emptyBody() { mb.empty(); return this; } + public ClassMethodBuilder returns(int i) { mb.returns(i); return this; } + public ClassMethodBuilder returnsNull() { mb.returnsNull(); return this; } + public ClassMethodBuilder throw_(Clazz clz) { mb.throws_(clz); return this; } + public ClassMethodBuilder throw_(Class exc) { + mb.throws_(exc); + return this; + } + public ClassMethodBuilder returnsNewInstance(ConcreteClass clz) { mb.returnsNewInstance(clz); return this; } + + public ClassMethodBuilder callSuper(Clazz callee, String methodName, String methodDesc) { + mb.superCall(callee, methodName, methodDesc); + return this; + } + + public ClassMethodBuilder invokeSpecial(Clazz callee, String methodName, String methodDesc) { + mb.invokeSpecial(callee, methodName, methodDesc); + return this; + } + + public ClassMethodBuilder invokeStatic(Clazz callee, String methodName, String methodDesc) { + mb.invokeStatic(callee, methodName, methodDesc); + return this; + } + + public ClassMethodBuilder invoke(CallMethod.Invoke callInsn, Clazz staticCallee, + ConcreteClass callee, String methodName, + String methodDesc, CallMethod.IndexbyteOp generateIndexbyteOp) { + mb.invoke(callInsn, staticCallee, callee, methodName, methodDesc, generateIndexbyteOp); + return this; + } + + public ClassMethodBuilder public_() { mb.public_(); return this; } + public ClassMethodBuilder protected_() { mb.protected_(); return this; } + public ClassMethodBuilder private_() { mb.private_(); return this; } + public ClassMethodBuilder package_private() { mb.package_private(); return this; } + + public ClassMethodBuilder static_() { mb.static_(); return this; } + public ClassMethodBuilder synthetic() { mb.synthetic(); return this; } + + public ClassMethodBuilder flags(int flags) { mb.flags(flags); return this; } + public ClassMethodBuilder addFlags(int flags) { mb.addFlags(flags); return this; } + + @SuppressWarnings("unchecked") + public T build() { cb.method(mb.build()); return (T)cb; } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/ConcreteClassBuilder.java 2018-05-21 10:53:11.529502468 -0700 @@ -0,0 +1,106 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import vm.runtime.defmeth.shared.data.ConcreteClass; +import vm.runtime.defmeth.shared.data.Interface; +import vm.runtime.defmeth.shared.data.method.Method; + +import static jdk.internal.org.objectweb.asm.Opcodes.*; +import vm.runtime.defmeth.shared.data.ConcreteClassImpl; + +/** + * Builder of {@link Data.ConcreteClass} instances. + */ +public class ConcreteClassBuilder extends ClassBuilder{ + // Super class + private ConcreteClass parent; + + // Implemented interfaces + private List interfaces = new ArrayList<>(); + + /* package-private */ ConcreteClassBuilder(TestBuilder builder) { + super(builder); + } + + public ConcreteClassBuilder extend(ConcreteClass parent) { + this.parent = parent; + + return this; + } + + public ConcreteClassBuilder extend(Class parent) { + this.parent = builder.toConcreteClass(parent); + + return this; + } + + public ConcreteClassBuilder implement(Interface... ifaces) { + interfaces.addAll(Arrays.asList(ifaces)); + + return this; + } + + public ClassMethodBuilder abstractMethod(String name, String desc) { + MethodBuilder mb = new MethodBuilder(builder).name(name).desc(desc).type(MethodType.ABSTRACT); + + // Ensure that the class enclosing abstract method is also abstract + addFlags(ACC_ABSTRACT); + + return new ClassMethodBuilder<>(this, mb); + } + + public ClassMethodBuilder concreteMethod(String name, String desc) { + MethodBuilder mb = new MethodBuilder(builder).name(name).desc(desc).type(MethodType.CONCRETE); + return new ClassMethodBuilder<>(this, mb); + } + + /** + * Construct Data.ConcreteClass instance. + * @return instance of Data.Interface class + */ + @Override + public ConcreteClass build() { + if (name == null) { + throw new IllegalStateException(); + } + + if (builder.hasElement(name)) { + throw new IllegalStateException(name); + } + + ConcreteClass clz = new ConcreteClassImpl(name, flags, majorVer, sig, + (parent != null) ? parent : ConcreteClass.OBJECT, + interfaces.toArray(new Interface[0]), + methods.toArray(new Method[0])); + + builder.register(clz); + builder.finishConstruction(this); + + return clz; + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/InterfaceBuilder.java 2018-05-21 10:53:11.809502475 -0700 @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import vm.runtime.defmeth.shared.data.Interface; +import vm.runtime.defmeth.shared.data.InterfaceImpl; +import vm.runtime.defmeth.shared.data.method.Method; + +/** + * Builder for Interface instances. + */ +public class InterfaceBuilder extends ClassBuilder { + + // Superinterfaces + private List parents = new ArrayList<>(); + + /* package-private */ InterfaceBuilder(TestBuilder builder) { + super(builder); + } + + public InterfaceBuilder extend(Interface... intf) { + parents.addAll(Arrays.asList(intf)); + + return this; + } + + public ClassMethodBuilder defaultMethod(String name, String desc) { + MethodBuilder mb = builder.method().name(name).desc(desc).type(MethodType.DEFAULT); + return new ClassMethodBuilder<>(this, mb); + } + + public ClassMethodBuilder abstractMethod(String name, String desc) { + MethodBuilder mb = builder.method().name(name).desc(desc).type(MethodType.ABSTRACT); + return new ClassMethodBuilder<>(this, mb); + } + + /** + * Construct Data.Interface instance. + * @return instance of Data.Interface class + */ + @Override + public Interface build() { + if (name == null) { + throw new IllegalStateException(); + } + + Interface intf = new InterfaceImpl(flags, name, majorVer, sig, parents.toArray(new Interface[0]), + methods.toArray(new Method[0])); + + if (builder.hasElement(name)) { + throw new IllegalStateException(); + } + + builder.register(intf); + builder.finishConstruction(this); + + return intf; + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/MethodBuilder.java 2018-05-21 10:53:12.089502482 -0700 @@ -0,0 +1,222 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +import java.util.HashSet; +import java.util.Set; +import nsk.share.Pair; +import vm.runtime.defmeth.shared.Util; +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.method.AbstractMethod; +import vm.runtime.defmeth.shared.data.method.ConcreteMethod; +import vm.runtime.defmeth.shared.data.method.DefaultMethod; +import vm.runtime.defmeth.shared.data.method.Method; +import vm.runtime.defmeth.shared.data.method.body.CallMethod; +import vm.runtime.defmeth.shared.data.method.body.EmptyBody; +import vm.runtime.defmeth.shared.data.method.body.MethodBody; +import vm.runtime.defmeth.shared.data.method.body.ReturnIntBody; +import vm.runtime.defmeth.shared.data.method.body.ReturnNewInstanceBody; +import vm.runtime.defmeth.shared.data.method.body.ReturnNullBody; +import vm.runtime.defmeth.shared.data.method.body.ThrowExBody; +import vm.runtime.defmeth.shared.data.method.param.Param; +import static jdk.internal.org.objectweb.asm.Opcodes.*; +import vm.runtime.defmeth.shared.data.ConcreteClass; + +/** + * Builder of Method instances. + */ +public class MethodBuilder { + private MethodType type; + private int flags = 0; + private String name; + private MethodBody body; + + // Method's erased signature + private String desc; + + // Method's language-level signature + private String sig; + + private TestBuilder builder; + + /* package-private */ MethodBuilder(TestBuilder builder) { + this.builder = builder; + } + + /* package-private */ MethodBuilder type(MethodType type) { + this.type = type; + return this; + } + + public MethodBuilder name(String name) { + this.name = name; + + return this; + } + + public MethodBuilder desc(String desc) { + this.desc = desc; + return this; + } + + public MethodBuilder sig(String sig) { + this.sig = sig; + return this; + } + + public MethodBuilder body(MethodBody body) { + if (type == null || type == MethodType.ABSTRACT) { + throw new IllegalStateException(); + } + + this.body = body; + + return this; + } + + public MethodBuilder empty() { return body(new EmptyBody()); } + public MethodBuilder returns(int i) { return body(new ReturnIntBody(i)); } + public MethodBuilder returnsNull() { return body(new ReturnNullBody()); } + public MethodBuilder throws_(Clazz clz) { return body(new ThrowExBody(clz)); } + public MethodBuilder throws_(Class exc) { + return body(new ThrowExBody(builder.toClazz(exc))); + } + + public MethodBuilder returnsNewInstance(ConcreteClass clz) { + return body(new ReturnNewInstanceBody(clz)); + } + + public MethodBuilder superCall(Clazz callee, String methodName, String methodDesc) { + return invokeSpecial(callee, methodName, methodDesc); + } + + public MethodBuilder invokeSpecial(Clazz callee, String methodName, String methodDesc) { + return invoke(CallMethod.Invoke.SPECIAL, callee, null, methodName, + methodDesc, CallMethod.IndexbyteOp.CALLSITE); + } + + public MethodBuilder invokeStatic(Clazz callee, String methodName, String methodDesc) { + return invoke(CallMethod.Invoke.STATIC, callee, null, methodName, + methodDesc, CallMethod.IndexbyteOp.CALLSITE); + } + + public MethodBuilder invoke(CallMethod.Invoke callInsn, Clazz staticCallee, + ConcreteClass callee, String methodName, String methodDesc, + CallMethod.IndexbyteOp generateIndexbyteOp) { + Pair calleeDetails = Util.parseDesc(methodDesc); + Param[] params = Util.getDefaultValues(calleeDetails.first); + String returnType = calleeDetails.second; + + boolean popResult = Util.isNonVoid(returnType) + && !Util.isNonVoid(Util.parseDesc(desc).second); + + return body(new CallMethod( + callInsn, staticCallee, callee, + methodName, methodDesc, params, returnType, + popResult, generateIndexbyteOp)); + } + + // set of accessibility flags for the method + private Set methodAccFlags = new HashSet<>(); + + public MethodBuilder public_() { methodAccFlags.add(AccessFlag.PUBLIC); return this; } + public MethodBuilder protected_() { methodAccFlags.add(AccessFlag.PROTECTED); return this; } + public MethodBuilder private_() { methodAccFlags.add(AccessFlag.PRIVATE); return this; } + public MethodBuilder package_private() { methodAccFlags.add(AccessFlag.PACKAGE_PRIVATE); return this; } + + public MethodBuilder static_() { return addFlags(ACC_STATIC); } + public MethodBuilder synthetic() { return addFlags(ACC_SYNTHETIC); } + + private void parseFlags(int flags) { + if ((flags & ACC_PUBLIC) != 0) { + public_(); + } + if ((flags & ACC_PROTECTED) != 0) { + protected_(); + } + if ((flags & ACC_PRIVATE) != 0) { + private_(); + } + if ((flags & (ACC_PUBLIC | ACC_PROTECTED | ACC_PRIVATE)) == 0) { + package_private(); + } + } + + public MethodBuilder flags(int flags) { + methodAccFlags.clear(); + + parseFlags(flags); + this.flags = flags; + + return this; + } + + public MethodBuilder addFlags(int flags) { + parseFlags(flags); + this.flags |= flags; + + return this; + } + + public Method build() { + if (name == null) { + throw new IllegalStateException(); + } + + int lFlags = flags; + if (!methodAccFlags.isEmpty()) { + for (AccessFlag flag : methodAccFlags) { + lFlags |= flag.mask; + } + } else { + lFlags |= AccessFlag.PUBLIC.mask; + } + + if (type != null) { + switch (type) { + case ABSTRACT: + // Excerpt from JVMS8 4.6 "Methods [Modified]: + // If a specific method of a class or interface has its ACC_ABSTRACT flag set, + // it must not have any of its ACC_FINAL, ACC_NATIVE, ACC_PRIVATE, ACC_STATIC, ACC_STRICT, or + // ACC_SYNCHRONIZED flags set (8.4.3.1, 8.4.3.3, 8.4.3.4). + lFlags |= (builder.accFlags & ~(ACC_NATIVE | ACC_PRIVATE | ACC_STATIC | ACC_STRICT | ACC_SYNCHRONIZED)); + return new AbstractMethod(lFlags, name, desc, sig); + case CONCRETE: + lFlags |= builder.accFlags; + return new ConcreteMethod(lFlags, name, desc, sig, body); + case DEFAULT: + // Excerpt from JVMS8 4.6 "Methods [Modified]: + // Methods of interfaces may set any of the flags in Table 4.5 except ACC_PROTECTED, ACC_FINAL, + // ACC_NATIVE, and ACC_SYNCHRONIZED (9.4); they must have exactly one of the ACC_PUBLIC or + // ACC_PRIVATE flags set. + lFlags |= (builder.accFlags & ~(ACC_NATIVE | ACC_PRIVATE | ACC_STATIC | ACC_STRICT | ACC_SYNCHRONIZED)); + return new DefaultMethod(lFlags, name, desc, sig, body); + default: + throw new IllegalStateException(); + } + } else { + return new Method(lFlags, name, desc, sig); + } + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/MethodType.java 2018-05-21 10:53:12.365502489 -0700 @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +public enum MethodType { + ABSTRACT, + CONCRETE, + DEFAULT +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/TestBuilder.java 2018-05-21 10:53:12.645502496 -0700 @@ -0,0 +1,529 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +import java.io.File; +import java.io.FileOutputStream; +import java.util.*; + +import nsk.share.Pair; + +import static jdk.internal.org.objectweb.asm.Opcodes.*; + +import nsk.share.TestFailure; +import vm.runtime.defmeth.shared.ClassFileGenerator; +import vm.runtime.defmeth.shared.Constants; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.DefMethTestFailure; +import vm.runtime.defmeth.shared.ExecutionMode; +import vm.runtime.defmeth.shared.executor.GeneratedTest; +import vm.runtime.defmeth.shared.MemoryClassLoader; +import vm.runtime.defmeth.shared.executor.MHInvokeWithArgsTest; +import vm.runtime.defmeth.shared.Printer; +import vm.runtime.defmeth.shared.executor.ReflectionTest; +import vm.runtime.defmeth.shared.executor.TestExecutor; +import vm.runtime.defmeth.shared.Util; + +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.ConcreteClass; +import vm.runtime.defmeth.shared.data.ConcreteClassLazyAdapter; +import vm.runtime.defmeth.shared.data.Interface; +import vm.runtime.defmeth.shared.data.InterfaceLazyAdapter; +import vm.runtime.defmeth.shared.data.Tester; + +/** + * Builder for test cases. + * + * Simplifies construction of test cases. + * + * Example: + * + * TestBuilder b = new TestBuilder(); + * + * Interface I = b.intf("I").build(); + * ConcreteClazz C = b.clazz("C").implements(I).build(); + * + * b.test().callSite(I, C, "hashCode","()I").returns(0).build(); + * + * b.run(); + * + * + * produces + * + * + * interface I {} + * + * class C implements I {} + * + * class Test1 { + * public void test() { + * I i = new C(); + * if (c.hashCode() != 0) { + * throw new RuntimeException("Expected 0"); + * } + * } + * } + * + */ +public class TestBuilder { + // Class file major version + // Used for separate compilation scenarios + public final int minMajorVer; + + // Additional access flags for all methods + public final int accFlags; + + // Redefine classes as part of testing + public final boolean redefineClasses; + + // Redefine classes using Retransformation API + public final boolean retransformClasses; + + public final ExecutionMode executionMode; + + // GeneratedTest counter which is used to name the tests. + private int testNo = 0; + + // List of classes constructed for the testcase so far + private List elements = new ArrayList<>(); + public List getElements() { + return new ArrayList<>(elements); + } + + // List of tests constructed as part of the testcase + private List tests = new ArrayList<>(); + + // Elements under construction + private Set> underConstruction = new LinkedHashSet<>(); + + private DefMethTest testInstance; + + TestBuilder(DefMethTest testInstance, int minMajorVer, int accFlags, + boolean redefineClasses, boolean retransformClasses, ExecutionMode executionMode) { + this.testInstance = testInstance; + this.minMajorVer = minMajorVer; + this.accFlags = accFlags; + this.redefineClasses = redefineClasses; + this.retransformClasses = retransformClasses; + this.executionMode = executionMode; + } + + /** + * Factory method for Interface builder. + * + * @param name + * @return class builder + */ + public InterfaceBuilder intf(String name) { + InterfaceBuilder b = new InterfaceBuilder(this).name(name); + underConstruction.add(b); + return b; + } + + /** + * Factory method for Clazz builder. + * + * @param name + * @return class builder + */ + public ConcreteClassBuilder clazz(String name) { + ConcreteClassBuilder b = new ConcreteClassBuilder(this).name(name).ver(minMajorVer); + underConstruction.add(b); + return b; + } + + /** + * Factory method for Tester builder. + * + * @return test builder + */ + public TesterBuilder test() { + TesterBuilder b = new TesterBuilder(++testNo, this); + underConstruction.add(b); + return b; + } + + /** + * Find previously constructed class by it's name. + * + * The method is considered safe: if it fails to find a class, it throws + * IllegalArgumentException. + * + * @param name + * @return + */ + public Clazz lookup(String name) { + for (Clazz clz : elements) { + if (clz.name().equals(name)) { + return clz; + } + } + + throw new IllegalArgumentException("Unknown element: " + name); + } + + /** + * Lazy binding of {@code Clazz} instance + * + * @param name + * @return + */ + public ConcreteClass clazzByName(String name) { + return new ConcreteClassLazyAdapter(this, name); + } + + /** + * Lazy binding of {@code Interface} instance + * + * @param name + * @return + */ + public Interface intfByName(String name) { + return new InterfaceLazyAdapter(this, name); + } + + /** + * Construct corresponding {@code Clazz} instance for a {@code Class}. + * + * @param cls + * @return + */ + public Clazz toClazz(Class cls) { + String name = cls.getName(); + + if (hasElement(name)) { + return lookup(name); + } else { + return clazz(name).build(); + } + } + + /** + * Construct corresponding {@code ConcreteClass} instance for a {@code Class}. + * + * Throws {@code IllegalArgumentException} if {@code Class} can't be + * represented as {@code ConcreteClass} + * + * @param cls + * @return + */ + public ConcreteClass toConcreteClass(Class cls) { + if (!cls.isInterface()) { + return (ConcreteClass)toClazz(cls); + } else { + throw new IllegalArgumentException(cls.getName()); + } + } + + /** + * Factory method for Method builder. + * + * @return method builder + */ + /* package-private */ MethodBuilder method() { + return new MethodBuilder(this); + } + + /** + * Factory method for Data.DefaultMethod builder. + * + * @param name method name + * @return + */ + public MethodBuilder defaultMethod(String name) { + return method().name(name).type(MethodType.DEFAULT); + } + + /** + * Factory method for Data.AbstractMethod builder. + * + * @param name + * @return + */ + public MethodBuilder abstractMethod(String name) { + return method().name(name).type(MethodType.ABSTRACT); + } + + /** + * Factory method for Data.ConcreteMethod builder. + * + * @param name + * @return + */ + public MethodBuilder concreteMethod(String name) { + return method().name(name).type(MethodType.CONCRETE); + } + + /** + * Signal that {@code Builder} instance won't be used anymore. + * + * @param builder + */ + /* package-private */ void finishConstruction(Builder builder) { + if (underConstruction.contains(builder)) { + underConstruction.remove(builder); + } else { + throw new IllegalStateException(); + } + } + + /** + * Register class with the test builder, so it'll be enumerated during + * hierarchy traversals (e.g. class file generation, hierarchy printing). + * + * @param clz + * @return + */ + public TestBuilder register(Clazz clz) { + elements.add(clz); + return this; + } + + /** + * Register class with the test builder as a test, so it'll be enumerated during + * hierarchy traversals and executed during test runs. + * + * @param test + * @return + */ + public TestBuilder register(Tester test) { + tests.add(test); + return this; + } + + /** + * Check whether a class with some name has been already constructed. + * + * @param name + * @return whether a class with the same name has been already created + */ + /* package-private */ boolean hasElement(String name) { + for (Clazz clz : elements) { + if (clz.name().equals(name)) { + return true; + } + } + + return false; + } + + /** + * Create all classes and return a class loader which can load them. + * + * @return class loader instance which loads all generated classes + */ + public MemoryClassLoader build() { + Map classes = produce(); + + MemoryClassLoader cl = new MemoryClassLoader(classes); + + return cl; + } + + /** + * Produce class files for a set of {@code Clazz} instances. + * + * @return + */ + public Map produce() { + if (!underConstruction.isEmpty()) { + throw new IllegalStateException("Some of the classes haven't been fully constructed"); + } + + List items = new ArrayList<>(); + items.addAll(elements); + items.addAll(tests); + + return produce(52, items); + } + + /** + * Produce class files for {@Clazz} instances from {@code elements}. + * + * @param defaultMajorVer + * @param elements + * @return + */ + private Map produce(int defaultMajorVer, List elements) { + LinkedHashMap classes = new LinkedHashMap<>(); + + if (Constants.PRINT_TESTS) { + System.out.printf("\nTEST: %s\n\n", Util.getTestName()); + } + + for (Clazz clazz : elements) { + if (Constants.PRINT_TESTS) { + System.out.println(Printer.print(clazz)); + } + + if (clazz instanceof Tester && + (executionMode == ExecutionMode.REFLECTION || + executionMode == ExecutionMode.INVOKE_WITH_ARGS)) { + // No need to generate testers for reflection cases + continue; + } + + Pair p = produceClassFile(defaultMajorVer, executionMode, clazz); + classes.put(p.first, p.second); + } + + if (Constants.PRINT_ASSEMBLY) { + System.out.println("\nDISASSEMBLY"); + + for (byte[] cf : classes.values()) { + Util.printClassFile(cf); + System.out.println(); + } + } + + if (Constants.ASMIFY) { + System.out.println("\nASM"); + + for (byte[] cf : classes.values()) { + Util.asmifyClassFile(cf); + System.out.println(); + } + } + + if (Constants.DUMP_CLASSES) { + try { + File dumpDir = new File("DUMP_CLASS_FILES", testInstance.shortTestName); + if (!dumpDir.exists()) { + dumpDir.mkdirs(); + } + + for (Map.Entry entry : classes.entrySet()) { + String name = entry.getKey(); + byte[] classFile = entry.getValue(); + File dumpFile = new File(dumpDir, name+".class"); + dumpFile.getParentFile().mkdirs(); + try (FileOutputStream file = new FileOutputStream(dumpFile)) { + file.write(classFile); + } + } + } catch (Exception e) { + throw new Error(e); + } + } + + return classes; + } + + /** + * Produce class file from {@code Clazz} instance. + * + * @param defaultMajorVer + * @param clazz + * @return + */ + public static Pair produceClassFile(int defaultMajorVer, + ExecutionMode execMode, Clazz clazz) { + int majorVer = clazz.ver() != 0 ? clazz.ver() : defaultMajorVer; + + ClassFileGenerator cfg = new ClassFileGenerator(majorVer, ACC_PUBLIC, execMode); + clazz.visit(cfg); + + byte[] classFile = cfg.getClassFile(); + + return Pair.of(clazz.name(), classFile); + } + + /** + * Make all preparations for execution. + * + * @return + */ + public TestExecutor prepare() { + return prepare(build()); + } + + private TestExecutor prepare(MemoryClassLoader cl) { + if (redefineClasses) { + try { + cl.modifyClasses(/* retransform = */ false); + } catch (TestFailure e) { + testInstance.getLog().info(e.getMessage()); + throw e; + } + } + + if (retransformClasses) { + try { + cl.modifyClasses(/* redefine = */ true); + } catch (TestFailure e) { + testInstance.getLog().info(e.getMessage()); + throw e; + } + } + + switch (executionMode) { + case DIRECT: + case INDY: + case INVOKE_EXACT: + case INVOKE_GENERIC: + // Run tests using direct invocation methods + return new GeneratedTest(cl, testInstance, tests); + case REFLECTION: + // Use reflection for testing + return new ReflectionTest(cl, this, testInstance, tests); + case INVOKE_WITH_ARGS: + return new MHInvokeWithArgsTest(cl, testInstance, tests); + default: + throw new Error("Unknown execution mode: " + executionMode); + } + } + + public interface LoaderConstructor { + public MemoryClassLoader construct(Map< String,byte[]> classFiles); + } + + /** + * Customize class loader construction. + * + * @param constructLoader + * @return + */ + public TestExecutor prepare(LoaderConstructor constructLoader) { + return prepare(constructLoader.construct(produce())); + } + + /** + * Construct a test with all necessary classes and execute all tests + * from it. + */ + public void run() { + if (tests.isEmpty()) { + throw new IllegalStateException("No tests to run"); + } + + TestExecutor executor = prepare(); + + List> errors = executor.run(); + + if (!errors.isEmpty()) { + throw new DefMethTestFailure(errors); + } + + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/TestBuilderFactory.java 2018-05-21 10:53:12.921502503 -0700 @@ -0,0 +1,98 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.ExecutionMode; +import vm.share.options.Option; + +/** + * Factory for TestBuilder instances. + * + * Parameterizes TestBuilder with some specific configuration properties. + * It is used to run the very same set of tests in different configurations. + * TestBuilderFactory.getBuilder() is called from individual tests to get + * TestBuilder instance for test construction. + */ +public class TestBuilderFactory { + @Option(name="ver", description="class file major version", default_value="52") + private int minMajorVer; + + @Option(name="flags", description="additional access flags on default methods", default_value="0") + private int accFlags; + + @Option(name="redefine", description="redefine classes during execution", default_value="false") + private boolean redefineClasses; + + @Option(name="retransform", description="retransform classes during execution", default_value="false") + private boolean retransformClasses; + + @Option(name="execMode", description="override execution mode with a concrete mode (DIRECT, REFLECTION, INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY)", default_value="") + private String modeName; + + private final DefMethTest testInstance; + + // Default construction is used when the instance will be configured + // by OptionSupport.setup* + public TestBuilderFactory(DefMethTest testInstance) { + this.testInstance = testInstance; + } + + public TestBuilderFactory(DefMethTest testInstance, int minMajorVer, + int accFlags, boolean redefineClasses, boolean retransformClasses, + String modeName) { + this.testInstance = testInstance; + this.minMajorVer = minMajorVer; + this.accFlags = accFlags; + this.redefineClasses = redefineClasses; + this.retransformClasses = retransformClasses; + this.modeName = modeName; + } + + public TestBuilder getBuilder() { + ExecutionMode mode = (!"".equals(modeName) ? ExecutionMode.valueOf(modeName) : null); + return new TestBuilder(testInstance, minMajorVer, accFlags, redefineClasses, retransformClasses, mode); + } + + public int getVer() { return minMajorVer; } + public void setVer(int x) { minMajorVer = x; } + + public int getFlags() { return accFlags; } + public void setFlags(int x) { accFlags = x; } + + public boolean isRedefineClasses() { return redefineClasses; } + public void setRedefineClasses(boolean x) { redefineClasses = x; } + + public boolean isRetransformClasses() { return retransformClasses; } + public void setRetransformClasses(boolean x) { retransformClasses = x; } + + public String getExecutionMode() { return (!"".equals(modeName) ? modeName : null); } + public void setExecutionMode(String x) { modeName = x; } + + @Override + public String toString() { + return String.format("{ver=%d; flags=%d; redefine=%b; execMode=%s}", + minMajorVer, accFlags, redefineClasses, modeName); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/TestExecutor.java 2018-05-21 10:53:13.205502510 -0700 @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +import java.util.List; +import nsk.share.Pair; +import vm.runtime.defmeth.shared.data.Tester; + + +public interface TestExecutor { + + public ClassLoader getLoader(); + + public List> run(); +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/builder/TesterBuilder.java 2018-05-21 10:53:13.485502517 -0700 @@ -0,0 +1,286 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.builder; + +import nsk.share.Pair; +import jdk.internal.org.objectweb.asm.Opcodes; +import vm.runtime.defmeth.shared.Util; +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.ConcreteClass; +import vm.runtime.defmeth.shared.data.Tester; +import vm.runtime.defmeth.shared.data.method.Method; +import vm.runtime.defmeth.shared.data.method.param.IntParam; +import vm.runtime.defmeth.shared.data.method.param.Param; +import vm.runtime.defmeth.shared.data.method.param.StringParam; +import vm.runtime.defmeth.shared.data.method.result.IntResult; +import vm.runtime.defmeth.shared.data.method.result.Result; +import vm.runtime.defmeth.shared.data.method.result.ResultIgnore; +import vm.runtime.defmeth.shared.data.method.result.ThrowExResult; +import static jdk.internal.org.objectweb.asm.Opcodes.*; +import vm.runtime.defmeth.shared.data.Interface; +import vm.runtime.defmeth.shared.data.method.body.CallMethod; +import vm.runtime.defmeth.shared.data.method.body.CallMethod.Invoke; + +/** + * Builder for data.Tester instances. + * + * Simplifies single test construction during test case preparation. + * Test scenario is the following: call some method and check it's result. + */ +public class TesterBuilder implements Builder { + // Test number + private final int id; + + // Test class name + private String name; + + // Static receiver of the call + private Clazz staticReceiver; + + // Dynamic receiver of the call + // Null, if calling static method. + private ConcreteClass dynamicReceiver; + + // Method to call: name + erased signature + private Method m; + + // Expected result of method invocation + private Result result; + + // Parameters for method invocation + private Param[] params = new Param[0]; + + // Enclosing test builder + private TestBuilder builder; + + // private method test + private boolean testPrivateMethod; + + // Type of constant pool entry used at call site + private CallMethod.IndexbyteOp cpEntryType = CallMethod.IndexbyteOp.CALLSITE; // Callee-specific by default + + /* package-private */ TesterBuilder(int id, TestBuilder builder) { + this.id = id; + this.builder = builder; + this.testPrivateMethod = false; + } + + public TesterBuilder name(String name) { + this.name = name; + return this; + } + + private TesterBuilder static_(Clazz receiver) { + staticReceiver = receiver; + return this; + } + + private TesterBuilder dynamic(ConcreteClass receiver) { + dynamicReceiver = receiver; + return this; + } + + public TesterBuilder callee(Method m) { + this.m = m; + return this; + } + + public TesterBuilder callee(String name, String desc) { + return callee( + builder.method().name(name).desc(desc).build()); + } + + public TesterBuilder callee(String name, String desc, int acc) { + return callee( + builder.method().name(name).desc(desc).flags(acc).build()); + } + + public TesterBuilder cpEntryType(CallMethod.IndexbyteOp type) { + cpEntryType = type; + return this; + } + + public TesterBuilder callSite(Clazz staticReceiver, ConcreteClass receiver, + String methodName, String methodDesc) { + return static_(staticReceiver) + .dynamic(receiver) + .callee(methodName, methodDesc); + } + + public TesterBuilder callSite(ConcreteClass receiver, + String methodName, String methodDesc) { + return dynamic(receiver).callee(methodName, methodDesc); + } + + public TesterBuilder staticCallSite(Clazz I, String methodName, String methodDesc) { + return static_(I).callee(methodName, methodDesc, ACC_STATIC); + } + + public TesterBuilder privateCallSite(Clazz staticReceiver, ConcreteClass receiver, + String methodName, String methodDesc) { + this.testPrivateMethod = true; + return static_(staticReceiver) + .dynamic(receiver) + .callee(methodName, methodDesc); + } + + public TesterBuilder interfaceCallSite(Clazz staticReceiver, ConcreteClass receiver, + String methodName, String methodDesc) { + return static_(staticReceiver) + .dynamic(receiver) + .callee(methodName, methodDesc, ACC_INTERFACE) + .cpEntryType(CallMethod.IndexbyteOp.INTERFACEMETHODREF); + } + + public TesterBuilder params(int... intParams) { + this.params = new Param[intParams.length]; + for (int i = 0; i < intParams.length; i++) { + this.params[i] = new IntParam(intParams[i]); + } + + return this; + } + + public TesterBuilder params(String... strParams) { + this.params = new Param[strParams.length]; + for (int i = 0; i < strParams.length; i++) { + this.params[i] = new StringParam(strParams[i]); + } + + return this; + } + + public TesterBuilder params(Param... params) { + this.params = params; + return this; + } + + public TesterBuilder result(Result result) { + this.result = result; + return this; + } + + public TesterBuilder ignoreResult() { return result(new ResultIgnore());} + public TesterBuilder returns(int i) { return result(new IntResult(i)); } + public TesterBuilder throws_(Clazz clz) { + return result(new ThrowExResult(clz, false, null)); + } + + public TesterBuilder throws_(Class exc) { + return result(new ThrowExResult(builder.toClazz(exc), false, null)); + } + + public TesterBuilder throwsExact(Clazz clz) { + return result(new ThrowExResult(clz, true, null)); + } + + public TesterBuilder throwsExact(Class exc) { + return result(new ThrowExResult(builder.toClazz(exc), true, null)); + } + + public TesterBuilder succeeds() { + return result(new ResultIgnore()); + } + + public TesterBuilder loadClass(Clazz clz) { + return static_(builder.clazz("java.lang.Class").build()) + .callee("forName", "(Ljava/lang/String;)Ljava/lang/Class;", ACC_STATIC) + .params(clz.name()); + } + + /** + * Choose right instruction for a call depending on the callee type. + * + * @return + */ + private CallMethod.Invoke getCallInsn() { + if ((m.acc() & Opcodes.ACC_STATIC) != 0) { + return Invoke.STATIC; + } else { + if (staticReceiver instanceof Interface) { + return Invoke.INTERFACE; + } else if (staticReceiver instanceof ConcreteClass) { + if ((m.acc() & Opcodes.ACC_INTERFACE) == 0) { + return Invoke.VIRTUAL; + } else { + return Invoke.INTERFACE; + } + } else { + throw new UnsupportedOperationException("Can't detect invoke instruction"); + } + } + } + + @Override + public Tester build() { + if (staticReceiver == null) { + throw new IllegalStateException(); + } + + if (m == null) { + throw new IllegalStateException(); + } + + if (result == null) { + throw new IllegalStateException(); + } + + if (params.length == 0) { + params = + Util.getDefaultValues( + Util.parseDesc(m.desc()).first); + } + + if (name == null) { + name = String.format("Test%d_%s_%s_%s", id, + staticReceiver != null ? staticReceiver.getShortName() : "", + dynamicReceiver != null ? dynamicReceiver.getShortName() : "", + m.name()); + } + + Invoke callInsn = getCallInsn(); + + Pair calleeDetails = Util.parseDesc(m.desc()); + String returnType = calleeDetails.second; + + CallMethod call = new CallMethod(callInsn, staticReceiver, dynamicReceiver, + m.name(), m.desc(), params, + returnType, false, cpEntryType); + + Tester tester = new Tester(name, call, result, testPrivateMethod); + + builder.register(tester); + + // Notify test builder that test construction is finished + builder.finishConstruction(this); + + return tester; + } + + @Override + public TestBuilder done() { + build(); + return builder; + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/AbstractVisitor.java 2018-05-21 10:53:13.765502524 -0700 @@ -0,0 +1,170 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import vm.runtime.defmeth.shared.data.method.AbstractMethod; +import vm.runtime.defmeth.shared.data.method.ConcreteMethod; +import vm.runtime.defmeth.shared.data.method.DefaultMethod; +import vm.runtime.defmeth.shared.data.method.Method; +import vm.runtime.defmeth.shared.data.method.body.CallMethod; +import vm.runtime.defmeth.shared.data.method.body.EmptyBody; +import vm.runtime.defmeth.shared.data.method.body.ReturnIntBody; +import vm.runtime.defmeth.shared.data.method.body.ReturnNewInstanceBody; +import vm.runtime.defmeth.shared.data.method.body.ReturnNullBody; +import vm.runtime.defmeth.shared.data.method.body.ThrowExBody; +import vm.runtime.defmeth.shared.data.method.param.DoubleParam; +import vm.runtime.defmeth.shared.data.method.param.FloatParam; +import vm.runtime.defmeth.shared.data.method.param.IntParam; +import vm.runtime.defmeth.shared.data.method.param.LongParam; +import vm.runtime.defmeth.shared.data.method.param.NewInstanceParam; +import vm.runtime.defmeth.shared.data.method.param.StringParam; +import vm.runtime.defmeth.shared.data.method.result.IntResult; +import vm.runtime.defmeth.shared.data.method.result.ThrowExResult; + +/** + * {@code AbstactVisitor} provides implementation for all methods from {@code Visitor}, + * which throws {@code UnsupportedOperationException}. It is useful + * for custom visitors, which expect only a subset of events to occur. + */ +public class AbstractVisitor implements Visitor { + @Override + public void visitClass(Clazz clz) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitConcreteClass(ConcreteClass clz) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitInterface(Interface intf) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitMethod(Method m) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitConcreteMethod(ConcreteMethod m) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitAbstractMethod(AbstractMethod m) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitDefaultMethod(DefaultMethod m) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitTester(Tester t) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitThrowExBody(ThrowExBody body) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitReturnIntBody(ReturnIntBody body) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitReturnNullBody(ReturnNullBody body) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitEmptyBody(EmptyBody body) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitCallMethod(CallMethod call) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitReturnNewInstanceBody(ReturnNewInstanceBody body) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitResultInt(IntResult res) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitResultThrowExc(ThrowExResult res) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitResultIgnore() { + throw new UnsupportedOperationException(); + } + + @Override + public void visitParamInt(IntParam i) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitParamLong(LongParam l) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitParamFloat(FloatParam f) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitParamDouble(DoubleParam d) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitParamString(StringParam str) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitParamNewInstance(NewInstanceParam type) { + throw new UnsupportedOperationException(); + } + + @Override + public void visitParamNull() { + throw new UnsupportedOperationException(); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/Clazz.java 2018-05-21 10:53:14.045502531 -0700 @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import vm.runtime.defmeth.shared.data.method.Method; + +/** + * Represents Java classes (interfaces & concrete classes). + */ +public interface Clazz extends Element { + + public String name(); + + public int ver(); + + public Method[] methods(); + + public int flags(); + + public String sig(); + + /** + * Class name in VM-internal format + * (e.g. java/lang/Object and not Ljava/lang/Object;) + */ + public String intlName(); + + public String getShortName(); +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/ClazzImpl.java 2018-05-21 10:53:14.325502539 -0700 @@ -0,0 +1,82 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import vm.runtime.defmeth.shared.data.method.Method; + +public abstract class ClazzImpl implements Clazz { + + /** Fixed major version of class file if needed. + * "0" means default value (depends on the context). */ + int ver = 0; // class file major version + + String name; + + /** Access flags of the class. + * "-1" means default (depends on the context). */ + int flags = -1; + + Method[] methods; + + /** Language-level signature of the class. + * Represents information about generic parameters */ + String sig; + + ClazzImpl(String name, int ver, int flags, String sig, Method[] methods) { + this.name = name; + this.ver = ver; + this.flags = flags; + this.sig = sig; + this.methods = methods; + } + + public String name() { + return name; + } + + public int ver() { + return ver; + } + + public Method[] methods() { + return methods; + } + + public int flags() { + return flags; + } + + public String sig() { + return sig; + } + + /** Class name in VM-internal format */ + public String intlName() { + return name.replaceAll("\\.","/"); + } + + public String getShortName() { + return name.replaceAll(".*\\.",""); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/ClazzLazyAdapter.java 2018-05-21 10:53:14.605502546 -0700 @@ -0,0 +1,94 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import vm.runtime.defmeth.shared.builder.TestBuilder; +import vm.runtime.defmeth.shared.data.method.Method; + +/** + * Wrapper around some {@link Clazz} instance. It delegates all calls + * to underlying instance. Lazy resolution of target instance by it's name + * allows to delay resolution till runtime and "tie-the-knot" in recursive + * hierarchies. + */ +public class ClazzLazyAdapter implements Clazz { + + private final TestBuilder builder; + private final String name; + + private Clazz target; + + public ClazzLazyAdapter(TestBuilder builder, String name) { + this.builder = builder; + this.name = name; + } + + private Clazz delegate() { + if (target == null) { + target = builder.lookup(name); + } + + return target; + } + + @Override + public String name() { + return delegate().name(); + } + + @Override + public int ver() { + return delegate().ver(); + } + + @Override + public Method[] methods() { + return delegate().methods(); + } + + @Override + public int flags() { + return delegate().flags(); + } + + @Override + public String sig() { + return delegate().sig(); + } + + @Override + public String intlName() { + return delegate().intlName(); + } + + @Override + public String getShortName() { + return delegate().getShortName(); + } + + @Override + public void visit(Visitor v) { + delegate().visit(v); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/ConcreteClass.java 2018-05-21 10:53:14.881502553 -0700 @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import jdk.internal.org.objectweb.asm.Opcodes; +import vm.runtime.defmeth.shared.data.method.Method; + +/** + * Represents concrete class (not interface). + */ +public interface ConcreteClass extends Clazz { + static public final ConcreteClass OBJECT = + new ConcreteClassImpl("java.lang.Object", Opcodes.ACC_PUBLIC, 52, null, null, new Interface[0]); + + public ConcreteClass parent(); + + public Interface[] interfaces(); +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/ConcreteClassImpl.java 2018-05-21 10:53:15.169502560 -0700 @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import vm.runtime.defmeth.shared.data.method.Method; + +/** + * Represents "concrete" class (not interface). + */ +public class ConcreteClassImpl extends ClazzImpl implements ConcreteClass { + + ConcreteClass parent; + Interface[] interfaces; + + public ConcreteClassImpl(String name, int flags, int ver, String sig, ConcreteClass parent, + Interface[] interfaces, Method... methods) + { + super(name, ver, flags, sig, methods); + this.parent = parent; + this.interfaces = interfaces; + } + + @Override + public ConcreteClass parent() { + return parent; + } + + @Override + public Interface[] interfaces() { + return interfaces; + } + + @Override + public void visit(Visitor v) { + v.visitConcreteClass(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/ConcreteClassLazyAdapter.java 2018-05-21 10:53:15.449502567 -0700 @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import vm.runtime.defmeth.shared.builder.TestBuilder; + +/** + * Wrapper around some ConcreteClass instance. It delegates all calls to + * underlying instance. Lazy resolution of a target instance by it's name + * allows to delay resolution till runtime and "tie-the-knot" in recursive + * hierarchies. + */ +public class ConcreteClassLazyAdapter extends ClazzLazyAdapter implements ConcreteClass { + private final TestBuilder builder; + private final String name; + + private ConcreteClass target; + + public ConcreteClassLazyAdapter(TestBuilder builder, String name) { + super(builder, name); + + this.builder = builder; + this.name = name; + } + + private ConcreteClass delegate() { + if (target == null) { + target = (ConcreteClass)builder.lookup(name); + } + + return target; + } + + @Override + public ConcreteClass parent() { + return delegate().parent(); + } + + @Override + public Interface[] interfaces() { + return delegate().interfaces(); + } + + @Override + public void visit(Visitor v) { + delegate().visit(v); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/Element.java 2018-05-21 10:53:15.729502574 -0700 @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +/** + * Root of hierarchy. + */ +public interface Element { + + void visit(Visitor v); +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/Interface.java 2018-05-21 10:53:16.013502581 -0700 @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +/** + * Represents Java interface. + */ +public interface Interface extends Clazz { + + public Interface[] parents(); +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/InterfaceImpl.java 2018-05-21 10:53:16.293502588 -0700 @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import vm.runtime.defmeth.shared.data.method.Method; + +/** + * Represents Java interface class. + */ +public class InterfaceImpl extends ClazzImpl implements Interface { + Interface[] parents; // superinterfaces + + public InterfaceImpl(int flags, String name, int ver, String sig, Interface[] parents, Method... methods) { + super(name, ver, flags, sig, methods); + this.parents = parents; + } + + public Interface[] parents() { + return parents; + } + + @Override + public void visit(Visitor v) { + v.visitInterface(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/InterfaceLazyAdapter.java 2018-05-21 10:53:16.573502595 -0700 @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import vm.runtime.defmeth.shared.builder.TestBuilder; + +/** + * Wrapper around some Interface instance. It delegates all calls to + * underlying instance. Lazy resolution of a target instance by it's name + * allows to delay resolution till runtime and "tie-the-knot" in recursive + * hierarchies. + */ +public class InterfaceLazyAdapter extends ClazzLazyAdapter implements Interface { + + private final TestBuilder builder; + private final String name; + + private Interface target; + + public InterfaceLazyAdapter(TestBuilder builder, String name) { + super(builder, name); + + this.builder = builder; + this.name = name; + } + + private Interface delegate() { + if (target == null) { + target = (Interface)builder.lookup(name); + } + + return target; + } + + @Override + public Interface[] parents() { + return delegate().parents(); + } + + @Override + public void visit(Visitor v) { + delegate().visit(v); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/ParamValueExtractor.java 2018-05-21 10:53:16.857502602 -0700 @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import vm.runtime.defmeth.shared.data.AbstractVisitor; +import vm.runtime.defmeth.shared.data.method.param.*; +import vm.runtime.defmeth.shared.executor.AbstractReflectionTest; + +/** + * Extracts a value from Param object. + * It is used when method is invoked using Reflection API + * or through MethodHandle.invokeWithArguments. + */ +public class ParamValueExtractor extends AbstractVisitor { + private Object value; + private AbstractReflectionTest methodInvokeTest; + + public Object value() { + param.visit(this); + return value; + } + + private Param param; + public ParamValueExtractor(AbstractReflectionTest methodInvokeTest, Param param) { + this.methodInvokeTest = methodInvokeTest; + this.param = param; } + + @Override public void visitParamInt(IntParam i) { value = i.value(); } + @Override public void visitParamLong(LongParam l) { value = l.value(); } + @Override public void visitParamFloat(FloatParam f) { value = f.value(); } + @Override public void visitParamDouble(DoubleParam d) { value = d.value(); } + @Override public void visitParamString(StringParam str) { value = str.value(); } + @Override public void visitParamNull() { value = null; } + @Override public void visitParamNewInstance(NewInstanceParam type) { + try { + value = methodInvokeTest.resolve(type.clazz()).newInstance(); + } catch (InstantiationException | IllegalAccessException e) { + throw new Error(e); + } + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/Tester.java 2018-05-21 10:53:17.145502610 -0700 @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import vm.runtime.defmeth.shared.data.method.Method; +import vm.runtime.defmeth.shared.data.method.result.Result; +import vm.runtime.defmeth.shared.data.method.body.CallMethod; + +/** + * Represents a single test assertion checker. + * Normally, any test contains multiple {@code Tester} instances. + */ +public class Tester extends ClazzImpl { + private final CallMethod call; + private final Result result; + private final boolean testPrivateMethod; + + public Tester(String name, CallMethod call, Result result) { + super(name, 0, 0, null, new Method[0]); + this.call = call; + this.result = result; + this.testPrivateMethod = false; + } + + public Tester(String name, CallMethod call, Result result, boolean testPrivateMethod) { + super(name, 0, 0, null, new Method[0]); + this.call = call; + this.result = result; + this.testPrivateMethod = testPrivateMethod; + } + + public CallMethod getCall() { + return call; + } + + public Result getResult() { + return result; + } + + public boolean getTestPrivateMethod() { + return testPrivateMethod; + } + + @Override + public void visit(Visitor v) { + v.visitTester(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/Visitor.java 2018-05-21 10:53:17.429502617 -0700 @@ -0,0 +1,87 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data; + +import vm.runtime.defmeth.shared.data.method.body.ReturnNewInstanceBody; +import vm.runtime.defmeth.shared.data.method.body.ReturnNullBody; +import vm.runtime.defmeth.shared.data.method.param.NewInstanceParam; +import vm.runtime.defmeth.shared.data.method.param.LongParam; +import vm.runtime.defmeth.shared.data.method.result.IntResult; +import vm.runtime.defmeth.shared.data.method.param.IntParam; +import vm.runtime.defmeth.shared.data.method.param.FloatParam; +import vm.runtime.defmeth.shared.data.method.body.EmptyBody; +import vm.runtime.defmeth.shared.data.method.param.DoubleParam; +import vm.runtime.defmeth.shared.data.method.DefaultMethod; +import vm.runtime.defmeth.shared.data.method.ConcreteMethod; +import vm.runtime.defmeth.shared.data.method.body.CallMethod; +import vm.runtime.defmeth.shared.data.method.AbstractMethod; +import vm.runtime.defmeth.shared.data.method.Method; +import vm.runtime.defmeth.shared.data.method.body.ReturnIntBody; +import vm.runtime.defmeth.shared.data.method.body.ThrowExBody; +import vm.runtime.defmeth.shared.data.method.result.ThrowExResult; +import vm.runtime.defmeth.shared.data.method.param.StringParam; +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.Interface; +import vm.runtime.defmeth.shared.data.*; + +/** + * Visitor for vm.runtime.defmeth.shared.data.* class hierarchy. + */ +public interface Visitor { + + // extends Clazz + public void visitClass ( Clazz clz); + public void visitConcreteClass(ConcreteClass clz); + public void visitInterface ( Interface intf); + + // extends Method + public void visitMethod ( Method m); + public void visitConcreteMethod(ConcreteMethod m); + public void visitAbstractMethod(AbstractMethod m); + public void visitDefaultMethod ( DefaultMethod m); + + public void visitTester( Tester t); + + // implements MethodBody + public void visitThrowExBody ( ThrowExBody body); + public void visitReturnIntBody ( ReturnIntBody body); + public void visitReturnNullBody ( ReturnNullBody body); + public void visitEmptyBody ( EmptyBody body); + public void visitCallMethod ( CallMethod call); + public void visitReturnNewInstanceBody(ReturnNewInstanceBody body); + + // implements Result + public void visitResultInt ( IntResult res); + public void visitResultThrowExc(ThrowExResult res); + public void visitResultIgnore (); + + // implements Param + public void visitParamInt ( IntParam i); + public void visitParamLong ( LongParam l); + public void visitParamFloat ( FloatParam f); + public void visitParamDouble ( DoubleParam d); + public void visitParamString ( StringParam str); + public void visitParamNewInstance(NewInstanceParam type); + public void visitParamNull (); +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/AbstractMethod.java 2018-05-21 10:53:17.713502624 -0700 @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method; + +import jdk.internal.org.objectweb.asm.Opcodes; +import vm.runtime.defmeth.shared.Printer; +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents abstract method (method w/o code) in both concrete classes + * and interfaces. + */ +public class AbstractMethod extends Method { + + public AbstractMethod(int acc, String name, String desc, String sig) { + super(Opcodes.ACC_ABSTRACT | acc, name, desc, sig); + } + + @Override + public void visit(Visitor v) { + v.visitAbstractMethod(this); + } + + @Override + public String toString() { + return Printer.print(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/ConcreteMethod.java 2018-05-21 10:53:17.989502631 -0700 @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method; + +import vm.runtime.defmeth.shared.Printer; +import vm.runtime.defmeth.shared.data.method.body.MethodBody; +import jdk.internal.org.objectweb.asm.Opcodes; +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents non-abstract method in concrete class. + */ +public class ConcreteMethod extends Method { + MethodBody body; + + private ConcreteMethod(String name, String desc, MethodBody body) { + this(Opcodes.ACC_PUBLIC, name, desc, null, body); + } + + public ConcreteMethod(int acc, String name, String desc, String sig, MethodBody body) { + super(acc, name, desc, sig); + this.body = body; + } + + public MethodBody body() { + return body; + } + + @Override + public void visit(Visitor v) { + v.visitConcreteMethod(this); + } + + @Override + public String toString() { + return Printer.print(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/DefaultMethod.java 2018-05-21 10:53:18.265502638 -0700 @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method; + +import vm.runtime.defmeth.shared.Printer; +import vm.runtime.defmeth.shared.data.method.body.MethodBody; +import jdk.internal.org.objectweb.asm.Opcodes; +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents default method - non-abstract method in an interface. + */ +public class DefaultMethod extends Method { + MethodBody body; // Only in interface + + public DefaultMethod(int acc, String name, String desc, String sig, MethodBody body) { + super(acc, name, desc, sig); + this.body = body; + } + + private DefaultMethod(String name, String desc, String sig, MethodBody body) { + super(Opcodes.ACC_PUBLIC, name, desc, sig); + this.body = body; + } + + public MethodBody body() { + return body; + } + + @Override + public void visit(Visitor v) { + v.visitDefaultMethod(this); + } + + @Override + public String toString() { + return Printer.print(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/Method.java 2018-05-21 10:53:18.553502645 -0700 @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method; + +import vm.runtime.defmeth.shared.data.Visitor; +import vm.runtime.defmeth.shared.data.Element; + +/* + * Represents a method w/o a link to any class. + */ +public class Method implements Element { + protected int acc; + protected String name; + protected String desc; + protected String sig; + + public Method(int acc, String name, String desc, String sig) { + this.acc = acc; + this.name = name; + this.desc = desc; + this.sig = sig; + } + + public int acc() { + return acc; + } + + public String name() { + return name; + } + + public String desc() { + return desc; + } + + public String sig() { + return sig; + } + + public String[] getExceptions() { + return new String[0]; // No exceptions supported yet + } + + public boolean hasNonVoidReturn() { + return !desc.matches(".*V"); + } + + @Override + public void visit(Visitor v) { + v.visitMethod(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/body/CallMethod.java 2018-05-21 10:53:18.837502652 -0700 @@ -0,0 +1,178 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.body; + +import vm.runtime.defmeth.shared.data.method.param.Param; +import jdk.internal.org.objectweb.asm.Opcodes; +import vm.runtime.defmeth.shared.data.Visitor; +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.Interface; + +/** + * Represents arbitrary method call (invoke*). + */ +public class CallMethod implements MethodBody { + + /** Invocation byte code instruction */ + public static enum Invoke { + VIRTUAL( Opcodes.INVOKEVIRTUAL, "INVOKEVIRTUAL", 5), + INTERFACE( Opcodes.INVOKEINTERFACE, "INVOKEINTERFACE", 9), + SPECIAL( Opcodes.INVOKESPECIAL, "INVOKESPECIAL", 7), + STATIC( Opcodes.INVOKESTATIC, "INVOKESTATIC", 6); + + private final int opcode; + private final String name; + + // Kind Description Interpretation + // 1 REF_getField, getfield C.f:T + // 2 REF_getStatic getstatic C.f:T + // 3 REF_putField putfield C.f:T + // 4 REF_putStatic putstatic C.f:T + // 5 REF_invokeVirtual invokevirtual C.m:(A*)T + // 6 REF_invokeStatic invokestatic C.m:(A*)T + // 7 REF_invokeSpecial invokespecial C.m:(A*)T + // 8 REF_newInvokeSpecial new C; dup; invokespecial C.:(A*)void + // 9 REF_invokeInterface invokeinterface C.m:(A*)T + private final int tag; + + Invoke(int opcode, String name, int tag) { + this.opcode = opcode; + this.name = name; + this.tag = tag; + } + + public int opcode() { + return opcode; + } + + @Override + public String toString() { + return name; + } + + public int tag() { + return tag; + } + } + + /** At callsite direct visitMethodInsn() to issue a CONSTANT_Methodref, + a CONSTANT_InterfaceMethodref or let it be determined at the + callsite if the callee is an instance of an Interface */ + public static enum IndexbyteOp { + METHODREF, + INTERFACEMETHODREF, + CALLSITE + } + + /** Invoke instruction which should be used for the call */ + final Invoke invokeInsn; + + /** Static receiver class */ + final Clazz staticClass; + + /** Dynamic receiver class */ + final Clazz receiverClass; + + /** Name of the method to be invoked*/ + final String methodName; + + /** Descriptor of the method to be invoked */ + final String methodDesc; + + /** Parameter values */ + final Param[] params; + + /** Name of method's return type */ + final String returnType; + + /** Should return value be popped off the stack after the call */ + final boolean popReturnValue; + + /** Indexbyte operand to generate at call site */ + final IndexbyteOp generateIndexbyteOp; + + public CallMethod(Invoke invokeInsn, Clazz staticClass, Clazz receiverClass, + String methodName, String methodDesc, Param[] params, + String returnType, boolean popReturnValue, + IndexbyteOp generateIndexbyteOp) { + this.invokeInsn = invokeInsn; + this.staticClass = staticClass; + this.receiverClass = receiverClass; + this.methodName = methodName; + this.methodDesc = methodDesc; + this.params = params; + this.returnType = returnType; + this.popReturnValue = popReturnValue; + this.generateIndexbyteOp = generateIndexbyteOp; + } + + public boolean popReturnValue() { + return popReturnValue; + } + + public IndexbyteOp generateIndexbyteOp() { + return generateIndexbyteOp; + } + + public Invoke invokeInsn() { + return invokeInsn; + } + + public Clazz staticClass() { + return staticClass; + } + + public Clazz receiverClass() { + return receiverClass; + } + + public String methodName() { + return methodName; + } + + public String methodDesc() { + return methodDesc; + } + + public Param[] params() { + return params; + } + + public String returnType() { + return returnType; + } + + public boolean isInterface() { + return generateIndexbyteOp() == IndexbyteOp.METHODREF ? + false : + (generateIndexbyteOp() == IndexbyteOp.INTERFACEMETHODREF ? + true : + staticClass() instanceof Interface); + } + + @Override + public void visit(Visitor v) { + v.visitCallMethod(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/body/EmptyBody.java 2018-05-21 10:53:19.113502659 -0700 @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.body; + +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents empty method body - it simply returns out of a method call. + * It has type void. + */ +public class EmptyBody implements MethodBody { + + @Override + public void visit(Visitor v) { + v.visitEmptyBody(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/body/MethodBody.java 2018-05-21 10:53:19.393502666 -0700 @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.body; + +import vm.runtime.defmeth.shared.data.Element; + +/** + * Represents method body. + */ +public interface MethodBody extends Element {} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/body/ReturnIntBody.java 2018-05-21 10:53:19.673502673 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.body; + +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents method body which returns integer constant. + */ +public class ReturnIntBody implements MethodBody { + int value; + + public ReturnIntBody(int value) { + this.value = value; + } + + public int getValue() { + return value; + } + + @Override + public void visit(Visitor v) { + v.visitReturnIntBody(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/body/ReturnNewInstanceBody.java 2018-05-21 10:53:19.953502680 -0700 @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.body; + +import vm.runtime.defmeth.shared.data.ConcreteClass; +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents method body which returns null constant. + */ +public class ReturnNewInstanceBody implements MethodBody { + private ConcreteClass clz; + + public ReturnNewInstanceBody(ConcreteClass clz) { + this.clz = clz; + } + + public ConcreteClass getType() { + return clz; + } + + @Override + public void visit(Visitor v) { + v.visitReturnNewInstanceBody(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/body/ReturnNullBody.java 2018-05-21 10:53:20.233502687 -0700 @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.body; + +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents method body which returns null constant. + */ +public class ReturnNullBody implements MethodBody { + public ReturnNullBody() {} + + @Override + public void visit(Visitor v) { + v.visitReturnNullBody(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/body/ThrowExBody.java 2018-05-21 10:53:20.513502694 -0700 @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.body; + +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents method body which throws new exception of type {@code excClass}. + */ +public class ThrowExBody implements MethodBody { + Clazz excClass; // exception type + + public ThrowExBody(Clazz exc) { + this.excClass = exc; + } + + public Clazz getExc() { + return excClass; + } + + @Override + public void visit(Visitor v) { + v.visitThrowExBody(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/param/DoubleParam.java 2018-05-21 10:53:20.797502702 -0700 @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.param; + +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents parameter constant value of primitive type double. + * Used to pass double constant as a parameter during method call. + */ +public class DoubleParam implements Param { + double value; + + public DoubleParam(double value) { + this.value = value; + } + + public double value() { + return value; + } + + @Override + public void visit(Visitor v) { + v.visitParamDouble(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/param/FloatParam.java 2018-05-21 10:53:21.077502709 -0700 @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.param; + +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents parameter constant value of type float. + * Used to pass float constant as a parameter during method call. + */ +public class FloatParam implements Param { + float value; + + public FloatParam(float value) { + this.value = value; + } + + public float value() { + return value; + } + + @Override + public void visit(Visitor v) { + v.visitParamFloat(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/param/IntParam.java 2018-05-21 10:53:21.361502716 -0700 @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.param; + +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents parameter constant value of type int. + * Used to pass int constant as a parameter during method call. + */ +public class IntParam implements Param { + int value; + + public IntParam(int value) { + this.value = value; + } + + public int value() { + return value; + } + + @Override + public void visit(Visitor v) { + v.visitParamInt(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/param/LongParam.java 2018-05-21 10:53:21.641502723 -0700 @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.param; + +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents parameter constant value of type long. + * Used to pass long constant as a parameter during method call. + */ +public class LongParam implements Param { + long value; + + public LongParam(long value) { + this.value = value; + } + + public long value() { + return value; + } + + @Override + public void visit(Visitor v) { + v.visitParamLong(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/param/NewInstanceParam.java 2018-05-21 10:53:21.917502730 -0700 @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.param; + +import vm.runtime.defmeth.shared.data.Visitor; +import vm.runtime.defmeth.shared.data.Clazz; + +/** + * Represents a parameter value which is a fresh new instance of some + * predefined type. Used to pass new instance of type {@code clz} as a parameter + * to method calls. + */ +public class NewInstanceParam implements Param { + Clazz clz; + + public NewInstanceParam(Clazz clz) { + this.clz = clz; + } + + public Clazz clazz() { + return clz; + } + + @Override + public void visit(Visitor v) { + v.visitParamNewInstance(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/param/NullParam.java 2018-05-21 10:53:22.193502737 -0700 @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.param; + +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents null value as a parameter. + * Used to pass null value as a parameter to method calls. + */ +public class NullParam implements Param { + + public NullParam() {} + + @Override + public void visit(Visitor v) { + v.visitParamNull(); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/param/Param.java 2018-05-21 10:53:22.481502744 -0700 @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.param; + +import vm.runtime.defmeth.shared.data.Element; + +/** + * Method parameter constant. + */ +public interface Param extends Element {} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/param/StringParam.java 2018-05-21 10:53:22.761502751 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.param; + +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Constant value for a method parameter of type j.l.String. + * Used to pass a {@code String} as a method parameters during calls. + */ +public class StringParam implements Param { + String value; + + public StringParam(String value) { + this.value = value; + } + + public String value() { + return value; + } + + @Override + public void visit(Visitor v) { + v.visitParamString(this); + } + +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/result/IntResult.java 2018-05-21 10:53:23.033502758 -0700 @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.result; + +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Return value of integer constant (int). + */ +public class IntResult implements Result { + int expected; + + public IntResult(int expected) { + this.expected = expected; + } + + public int getExpected() { + return expected; + } + + @Override + public void visit(Visitor v) { + v.visitResultInt(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/result/Result.java 2018-05-21 10:53:23.313502765 -0700 @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.result; + +import vm.runtime.defmeth.shared.data.Element; + +/** + * Method result value. + * Used to represent and check expected return value from a method call. + */ +public interface Result extends Element {} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/result/ResultIgnore.java 2018-05-21 10:53:23.593502772 -0700 @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.result; + +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Represents an action: ignore result of a method call, + * i.e. if a method doesn't throw exception, the check always pass. + */ +public class ResultIgnore implements Result { + + @Override + public void visit(Visitor v) { + v.visitResultIgnore(); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/data/method/result/ThrowExResult.java 2018-05-21 10:53:23.865502779 -0700 @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.data.method.result; + +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.Visitor; + +/** + * Check that an exception of type {@code excCall} is thrown from a call. + */ +public class ThrowExResult implements Result { + Clazz excClass; + private String msg; + private boolean isExact; + + public ThrowExResult(Clazz excClass, boolean isExact, String msg) { + if ("java/lang/Throwable".equals(excClass.name())) { + throw new IllegalArgumentException("Throwable isn't supported"); + } + this.excClass = excClass; + this.isExact = isExact; + } + + public Clazz getExc() { + return excClass; + } + + public boolean isExact() { + return isExact; + } + + public boolean hasMessage() { + return msg != null; + } + + public String getMessage() { + return msg; + } + + @Override + public void visit(Visitor v) { + v.visitResultThrowExc(this); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/executor/AbstractReflectionTest.java 2018-05-21 10:53:24.149502786 -0700 @@ -0,0 +1,121 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.executor; + +import nsk.share.Pair; +import vm.runtime.defmeth.shared.Constants; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.MemoryClassLoader; +import vm.runtime.defmeth.shared.Util; +import vm.runtime.defmeth.shared.builder.TestBuilder; +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.ParamValueExtractor; +import vm.runtime.defmeth.shared.data.Tester; +import vm.runtime.defmeth.shared.data.method.param.Param; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +/** + * Commmon ancestor for reflection-based tests (Method.invoke & MethodHandle.invokeWithArguments). + * Encapsulates all necessary state for test execution and contains some utility methods. + */ +public abstract class AbstractReflectionTest implements TestExecutor { + protected MemoryClassLoader cl; + protected Collection tests; + protected DefMethTest testInstance; + + public AbstractReflectionTest(DefMethTest testInstance, MemoryClassLoader cl, Collection tests) { + this.testInstance = testInstance; + this.cl = cl; + this.tests = tests; + } + + @Override + public MemoryClassLoader getLoader() { + return cl; + } + + protected Class[] paramType(String desc) throws ClassNotFoundException { + Pair p = Util.parseDesc(desc); + Class[] ptypes = new Class[p.first.length]; + for (int i = 0; i < ptypes.length; i++) { + ptypes[i] = Util.decodeClass(p.first[i], getLoader()); + } + return ptypes; + } + + public Class resolve(Clazz clazz) { + try { + return cl.loadClass(clazz.name()); + } catch (ClassNotFoundException e) { + throw new Error(e); + } + } + + protected Object[] values(Param[] params) { + Object[] result = new Object[params.length]; + for (int i = 0; i < result.length; i++) { + result[i] = new ParamValueExtractor(this, params[i]).value(); + } + return result; + } + + public List> run() { + List> errors = new ArrayList<>(); + + if (tests.isEmpty()) { + throw new IllegalStateException("No tests to run"); + } + + for (Tester t : tests) { + StringBuilder msg = + new StringBuilder(String.format("\t%-30s: ", t.name())); + + Throwable error = null; + try { + run(t); + + msg.append("PASSED"); + } catch (Throwable e) { + error = e; + errors.add(Pair.of(t,e)); + msg.append("FAILED"); + } finally { + testInstance.getLog().info(msg.toString()); + if (error != null) { + //testInstance.getLog().info("\t\t"+error.getMessage()); + testInstance.getLog().info("\t\t"+error); + if (Constants.PRINT_STACK_TRACE) { + error.printStackTrace(); + } + } + } + } + + testInstance.addFailureCount(errors.isEmpty() ? 0 : 1); + return errors; + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/executor/GeneratedTest.java 2018-05-21 10:53:24.429502793 -0700 @@ -0,0 +1,121 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.executor; + +import java.lang.reflect.InvocationTargetException; + +import vm.runtime.defmeth.shared.Constants; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.MemoryClassLoader; +import vm.runtime.defmeth.shared.data.Tester; +import java.util.*; +import nsk.share.Pair; +import static vm.runtime.defmeth.shared.Constants.*; + +/** + * Run a single test with bytecode-generated asserts. + */ +public class GeneratedTest implements TestExecutor { + + /** Assertions to check */ + private Collection tests; + + /** Class loader to load all necessary classes for execution */ + private MemoryClassLoader cl; + + private DefMethTest testInstance; + + public GeneratedTest(MemoryClassLoader cl, DefMethTest testInstance, + Collection tests) { + this.cl = cl; + this.tests = tests; + this.testInstance = testInstance; + } + + public GeneratedTest(MemoryClassLoader cl, DefMethTest testObj, + Tester... tests) { + this(cl, testObj, Arrays.asList(tests)); + } + + @Override + public MemoryClassLoader getLoader() { + return cl; + } + + /** + * Run individual assertion for the test by it's name. + * + * @param test + * @throws Throwable + */ + public void run(Tester test) throws Throwable { + try { + Class clz = cl.loadClass(test.name()); + java.lang.reflect.Method m = clz.getMethod("test"); + m.invoke(null); + } catch (InvocationTargetException e) { + throw e.getCause(); + } + } + + /** + * Check assertions from a test and return errors if any. + * + * @return + */ + public List> run() { + List> errors = new ArrayList<>(); + + if (tests.isEmpty()) { + throw new IllegalStateException("No tests to run"); + } + + for (Tester t : tests) { + StringBuilder msg = + new StringBuilder(String.format("\t%-30s: ", t.name())); + + Throwable error = null; + try { + run(t); + + msg.append("PASSED"); + } catch (Throwable e) { + error = e; + errors.add(Pair.of(t,e)); + msg.append("FAILED"); + } finally { + testInstance.getLog().info(msg.toString()); + if (error != null) { + testInstance.getLog().info("\t\t"+error.getMessage()); + if (PRINT_STACK_TRACE) { + error.printStackTrace(); + } + } + } + } + + testInstance.addFailureCount(errors.isEmpty() ? 0 : 1); + return errors; + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/executor/MHInvokeWithArgsTest.java 2018-05-21 10:53:24.705502800 -0700 @@ -0,0 +1,221 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.executor; + +import nsk.share.Pair; +import nsk.share.TestFailure; +import nsk.share.test.TestUtils; +import vm.runtime.defmeth.shared.data.AbstractVisitor; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.MemoryClassLoader; +import vm.runtime.defmeth.shared.Util; +import vm.runtime.defmeth.shared.data.Visitor; +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.Tester; +import vm.runtime.defmeth.shared.data.method.body.CallMethod; +import vm.runtime.defmeth.shared.data.method.param.*; +import vm.runtime.defmeth.shared.data.method.result.IntResult; +import vm.runtime.defmeth.shared.data.method.result.ThrowExResult; + +import java.lang.invoke.MethodHandle; +import java.lang.invoke.MethodHandles; +import java.lang.invoke.MethodType; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.Collection; + +/** + * Test runner for invocation mode through MethodHandle.invokeWithArguments(...). + */ +public class MHInvokeWithArgsTest extends AbstractReflectionTest { + + + public MHInvokeWithArgsTest(MemoryClassLoader cl, DefMethTest testInstance, + Collection tests) { + super(testInstance, cl, tests); + } + + public MHInvokeWithArgsTest(MemoryClassLoader cl, DefMethTest testInstance, Tester... tests) { + super(testInstance, cl, Arrays.asList(tests)); + } + + private MethodType descToMethodType(String desc) throws ClassNotFoundException { + Pair p = Util.parseDesc(desc); + Class rtype = Util.decodeClass(p.second, cl); + if (p.first.length > 0) { + Class[] ptypes = new Class[p.first.length]; + for (int i = 0; i < ptypes.length; i++) { + ptypes[i] = Util.decodeClass(p.first[i], cl); + } + return MethodType.methodType(rtype, ptypes); + } else { + return MethodType.methodType(rtype); + } + } + private class InvokeWithArgsVisitor extends AbstractVisitor implements Visitor { + private CallMethod call; + + private CallMethod.Invoke invokeType; + Class declaringClass; + String methodName; + MethodType methodType; + private Object[] args; + + @Override + public void visitTester(Tester t) { + // Resolve targetMethod & prepare invocation parameters + t.getCall().visit(this); + + // Invoke resolved targetMethod and check returned value + t.getResult().visit(this); + } + + private void prepareForInvocation() + throws IllegalAccessException, InstantiationException, ClassNotFoundException, NoSuchMethodException { + final Clazz staticClass = call.staticClass(); + final Clazz receiverClass = call.receiverClass(); + + final Param[] params = call.params(); + + // MethodHandle construction is skipped deliberately + // Need to perform the lookup in correct context + invokeType = call.invokeInsn(); + declaringClass = resolve(staticClass); + methodName = call.methodName(); + methodType = descToMethodType(call.methodDesc()); + + Object[] values = values(params); + + if (call.invokeInsn() != CallMethod.Invoke.STATIC) { + // Prepare receiver for non-static call + args = new Object[params.length+1]; + Class recClass = resolve(receiverClass); + args[0] = recClass.newInstance(); + System.arraycopy(values, 0, args, 1, values.length); + } else { + // No need for a receiver for static call + args = values; + } + } + + @Override + public void visitCallMethod(CallMethod call) { + // Cache call site info for future uses + this.call = call; + + // NB! don't call prepareForInvocation yet - it can throw exceptions expected by a test + } + + @Override + public void visitResultInt(IntResult res) { + try { + prepareForInvocation(); + int result = (int) invokeInTestContext(); + TestUtils.assertEquals(res.getExpected(), result); + } catch (Throwable e) { + throw new TestFailure("Unexpected exception", e); + } + } + + @Override + public void visitResultThrowExc(ThrowExResult res) { + String expectedExcName = res.getExc().name(); + String originalExpectedExcName = expectedExcName; + // *Error <==> *Exception correspondence for reflection invocation + switch (expectedExcName) { + case "java.lang.IllegalAccessError": + case "java.lang.InstantiationError": + expectedExcName = expectedExcName.replace("Error", "Exception"); + break; + } + + try { + prepareForInvocation(); // can throw an exception expected by a test + invokeInTestContext(); + throw new TestFailure("No exception was thrown: " + expectedExcName); + } catch (Throwable ex) { + // Need to dig 1 level down (MH.invoke* doesn't wrap exceptions), since there are 2 levels of indirection + // during invocation: + // invokeInTestContext(...) => TestContext.invoke(...) => Method.invoke(...) + Throwable target = ex; + Class actualExc = (target.getCause() != null) ? target.getCause().getClass() + : target.getClass(); + Class expectedExc; + try { + expectedExc = cl.loadClass(expectedExcName); + } catch (ClassNotFoundException e) { + throw new Error(e); + } + if (!expectedExc.isAssignableFrom(actualExc) && + !originalExpectedExcName.equals(actualExc.getName()) && + !expectedExc.isAssignableFrom(target.getClass())) { + throw new TestFailure( + String.format("Caught exception as expected, but it's type is wrong: expected: %s; actual: %s.", + expectedExcName, actualExc.getName()), target); + } + } + } + + @Override + public void visitResultIgnore() { + try { + prepareForInvocation(); + invokeInTestContext(); + } catch (Throwable e) { + throw new TestFailure("Unexpected exception", e); + } + } + + private Object invokeInTestContext() throws Throwable { + Class context = cl.getTestContext(); + // Invoke target method from TestContext using: + // public static Object invokeWithArguments( + // CallMethod.Invoke invokeType, Class declaringClass, String methodName, MethodType type, + // Object... arguments) throws Throwable + MethodHandle invoker; + try { + invoker = MethodHandles.lookup(). + findStatic(context, "invokeWithArguments", + MethodType.methodType(Object.class, CallMethod.Invoke.class, Class.class, + String.class, MethodType.class, Object[].class)); + } catch (NoSuchMethodException | IllegalAccessException e) { + throw new TestFailure("Exception during reflection invocation", e.getCause()); + } + + return invoker.invokeExact(invokeType, declaringClass, methodName, methodType, args); + + } + } + + /** + * Run individual assertion for the test by it's name. + * + * @param test + * @throws Throwable + */ + public void run(Tester test) throws Throwable { + test.visit(new InvokeWithArgsVisitor()); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/executor/ReflectionTest.java 2018-05-21 10:53:24.981502807 -0700 @@ -0,0 +1,328 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.executor; + +import nsk.share.TestFailure; +import nsk.share.test.TestUtils; +import vm.runtime.defmeth.shared.builder.TestBuilder; +import vm.runtime.defmeth.shared.data.AbstractVisitor; +import vm.runtime.defmeth.shared.DefMethTest; +import vm.runtime.defmeth.shared.MemoryClassLoader; +import vm.runtime.defmeth.shared.data.Clazz; +import vm.runtime.defmeth.shared.data.ConcreteClass; +import vm.runtime.defmeth.shared.data.Interface; +import vm.runtime.defmeth.shared.data.Visitor; +import vm.runtime.defmeth.shared.data.Tester; +import vm.runtime.defmeth.shared.data.method.AbstractMethod; +import vm.runtime.defmeth.shared.data.method.ConcreteMethod; +import vm.runtime.defmeth.shared.data.method.DefaultMethod; +import vm.runtime.defmeth.shared.data.method.body.CallMethod; +import vm.runtime.defmeth.shared.data.method.body.EmptyBody; +import vm.runtime.defmeth.shared.data.method.body.ReturnIntBody; +import vm.runtime.defmeth.shared.data.method.body.ThrowExBody; +import vm.runtime.defmeth.shared.data.method.result.IntResult; +import vm.runtime.defmeth.shared.data.method.result.ThrowExResult; +import static jdk.internal.org.objectweb.asm.Opcodes.*; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; +import java.util.Arrays; +import java.util.Collection; +import java.util.List; + +import static java.lang.String.format; + +/** + * Test runner for invocation mode through Reflection API (Method.invoke). + */ +public class ReflectionTest extends AbstractReflectionTest { + private TestBuilder builder; + + public ReflectionTest(MemoryClassLoader cl, TestBuilder builder, DefMethTest testInstance, + Collection tests) { + super(testInstance, cl, tests); + this.builder = builder; + } + + public ReflectionTest(MemoryClassLoader cl, TestBuilder builder, DefMethTest testInstance, + Tester... tests) { + this(cl, builder, testInstance, Arrays.asList(tests)); + } + + private class ReflectionTesterVisitor extends AbstractVisitor implements Visitor { + private CallMethod call; + private Object receiver; + + private Method targetMethod; + private Object[] values; + + private Tester tester; + + @Override + public void visitTester(Tester t) { + tester = t; + try { + // Resolve targetMethod & prepare invocation parameters + t.getCall().visit(this); + + // Invoke resolved targetMethod and check returned value + t.getResult().visit(this); + } finally { + tester = null; + } + } + + @Override + public void visitCallMethod(CallMethod call) { + // Cache call site info for future uses + this.call = call; + + // NB! don't call prepareForInvocation yet - it can throw exceptions expected by a test + } + + private void prepareForInvocation() + throws IllegalAccessException, InstantiationException, ClassNotFoundException, NoSuchMethodException { + Class staticClass = resolve(call.staticClass()); + + String methodName = call.methodName(); + Class[] paramTypes = paramType(call.methodDesc()); + + if (tester.getTestPrivateMethod() != true) { + targetMethod = staticClass.getMethod(methodName, paramTypes); + } else { + try { + targetMethod = staticClass.getDeclaredMethod(methodName, paramTypes); + } catch (NoSuchMethodException nsme) {} + + Class clazz = staticClass.getSuperclass(); + while ((targetMethod == null) && (clazz != null)) { + try { + targetMethod = clazz.getDeclaredMethod(methodName, paramTypes); + } catch (NoSuchMethodException nsme) {} + clazz = clazz.getSuperclass(); + } + } + + // Check reflection info for Class.getMethod(...) + checkReflectionInfo(targetMethod); + + // Prepare receiver after resolving target method, because it can throw instantiation exception + if (call.invokeInsn() != CallMethod.Invoke.STATIC) { + Class receiverClass = resolve(call.receiverClass()); + receiver = receiverClass.newInstance(); + } else { + // receiver == null; Method.invoke ignores first argument when static method is called + } + + // Check reflection info for Class.getDeclaredMethod(...) + try { + Method m = staticClass.getDeclaredMethod(methodName, paramTypes); + checkReflectionInfo(m); + } catch (NoSuchMethodException e) {} + + values = values(call.params()); + } + + /** Calculate Method.isDefault() property for a Method */ + private abstract class AbstractResultExtractor extends AbstractVisitor { + public boolean isDefault; + public void visitConcreteMethod(ConcreteMethod m) { + isDefault = false; + m.body().visit(this); // extract return value + } + + public void visitAbstractMethod(AbstractMethod m) { + isDefault = false; + } + + public void visitDefaultMethod(DefaultMethod m) { + isDefault = true; + m.body().visit(this); // extract return value + } + + public void visitEmptyBody(EmptyBody body) { + // ignore body + } + + public void visitThrowExBody(ThrowExBody body) { + // ignore body + } + + public void visitReturnIntBody(ReturnIntBody body) { + // ignore body + } + + public void visitResultInt(IntResult res) { + // ignore body + } + + public void visitCallMethod(CallMethod call) { + // ignore body + } + } + + private vm.runtime.defmeth.shared.data.method.Method findMethod(Clazz clz, String name, String desc) { + if (clz == null) return null; + + // Look for the method declaration in current class only + for (vm.runtime.defmeth.shared.data.method.Method m : clz.methods()) { + if (name.equals(m.name()) && desc.equals(m.desc())) { + return m; + } + } + + return null; + } + + /** Verify reflection info for a statically known method */ + private void checkReflectionInfo(Method method) { + vm.runtime.defmeth.shared.data.method.Method m = + findMethod(call.staticClass(), call.methodName(), call.methodDesc()); + + if (m != null) { + int flags = m.acc(); + boolean shouldBeDefault = (m instanceof DefaultMethod) && + ((flags & ACC_PUBLIC) == ACC_PUBLIC) && + ((flags & ACC_STATIC) != ACC_STATIC) && + ((flags & ACC_ABSTRACT) != ACC_ABSTRACT); + boolean shouldBeAbstract = Modifier.isAbstract(flags); + + // check isDefault property + boolean isDefault = method.isDefault(); + if (shouldBeDefault != isDefault) { + throw new TestFailure(format("Reflection info for Method.isDefault() is invalid:" + + " expected: %b; actual: %b. Method info: %s vs %s", + shouldBeDefault, isDefault, method.toString(), m.toString())); + } + + boolean isAbstract = Modifier.isAbstract(method.getModifiers()); + // check that the method w/ a body shouldn't be abstract + if (shouldBeAbstract != isAbstract) { + throw new TestFailure(format("Method shouldn't be abstract: %s vs %s", method.toString(), m.toString())); + } + } + } + + private Object invokeInTestContext(Method m, Object obj, Object... args) + throws InvocationTargetException { + Class context = cl.getTestContext(); + try { + // Invoke target method from TestContext using TestContext.invoke(Method, Object, Object...) + Method invoker = context.getDeclaredMethod("invoke", Method.class, Object.class, Object[].class); + return invoker.invoke(null, m, obj, args); + } catch (NoSuchMethodException | IllegalAccessException e) { + throw new TestFailure("Exception during reflection invocation", e.getCause()); + } + } + + @Override + public void visitResultInt(IntResult res) { + try { + prepareForInvocation(); + int result = (int) invokeInTestContext(targetMethod, receiver, values); + TestUtils.assertEquals(res.getExpected(), result); + } catch (TestFailure e) { + throw e; // no need to wrap test exception + } catch (Exception e) { + throw new TestFailure("Unexpected exception", e); + } + } + + private void checkExpectedException(ThrowExResult exceptionInfo, Throwable actualExc, boolean unwrap) { + String expectedExcName = exceptionInfo.getExc().name(); + String initialExpectedExcName = expectedExcName; + + // *Error <==> *Exception correspondence for reflection invocation + switch (expectedExcName) { + case "java.lang.NoSuchMethodError": + case "java.lang.InstantiationError": + case "java.lang.IllegalAccessError": + expectedExcName = expectedExcName.replace("Error", "Exception"); + break; + } + + // Need to dig 2 levels down since there are 2 levels of indirection during invocation: + // invokeInTestContext(...) => TestContext.invoke(...) => Method.invoke(...) + // For some exceptions, it's not the case (like NMSE) + Throwable target = actualExc; + if (unwrap) { + if (target.getCause() != null) target = target.getCause(); + if (target.getCause() != null) target = target.getCause(); + } + + Class expectedExc; + try { + expectedExc = cl.getSystemClassLoader().loadClass(expectedExcName); + } catch (ClassNotFoundException e) { + throw new Error(e); + } + + String excName = target.getClass().getName(); + if (!expectedExc.isAssignableFrom(target.getClass()) && + !initialExpectedExcName.equals(excName)) { + throw new TestFailure( + format("Caught exception as expected, but it's type is wrong: expected: %s; actual: %s.", + expectedExcName, excName), target); + } + } + + @Override + public void visitResultThrowExc(ThrowExResult res) { + String expectedExcName = res.getExc().name(); + try { + prepareForInvocation(); // can throw an exception expected by a test + invokeInTestContext(targetMethod, receiver, values); + + throw new TestFailure("No exception was thrown: " + expectedExcName); + } catch (IllegalAccessException | IllegalArgumentException | ClassNotFoundException e) { + throw new TestFailure("Exception during reflection invocation", e.getCause()); + } catch (InstantiationException | NoSuchMethodException | InvocationTargetException e) { + checkExpectedException(res, e, true); + } catch (Throwable e) { + checkExpectedException(res, e, false); + } + } + + @Override + public void visitResultIgnore() { + try { + prepareForInvocation(); + invokeInTestContext(targetMethod, receiver, values); + } catch (Exception e) { + throw new TestFailure("Unexpected exception", e); + } + } + } + + /** + * Run individual assertion for the test by it's name. + * + * @param test + * @throws Throwable + */ + public void run(Tester test) throws Throwable { + test.visit(new ReflectionTesterVisitor()); + } +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/executor/TestExecutor.java 2018-05-21 10:53:25.265502814 -0700 @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +package vm.runtime.defmeth.shared.executor; + +import java.util.List; +import nsk.share.Pair; +import vm.runtime.defmeth.shared.MemoryClassLoader; +import vm.runtime.defmeth.shared.data.Tester; + +public interface TestExecutor { + + public MemoryClassLoader getLoader(); + + public List> run(); + + public void run(Tester test) throws Throwable; +} --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/libredefineClasses.c 2018-05-21 10:53:25.549502821 -0700 @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2017, 2018, 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. + */ + +#include "redefineClasses.c" +#include "jni_tools.c" +#include "nsk_tools.c" +#include "JVMTITools.c" +#include "jvmti_tools.c" +#include "agent_tools.c" +#include "native_thread.c" + --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/redefineClasses.c 2018-05-21 10:53:25.825502828 -0700 @@ -0,0 +1,131 @@ +/* + * Copyright (c) 2013, 2018, 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. + */ + +#include +#include +#include + +#include "jni_tools.h" +#include "nsk_tools.h" +#include "JVMTITools.h" +#include "jvmti_tools.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef JNI_ENV_ARG + +#ifdef __cplusplus +#define JNI_ENV_ARG(x, y) y +#define JNI_ENV_PTR(x) x +#else +#define JNI_ENV_ARG(x,y) x, y +#define JNI_ENV_PTR(x) (*x) +#endif + +#endif + +static jvmtiEnv *test_jvmti = NULL; +static jvmtiCapabilities caps; + +/* + * Redefine a class with a new version (class file in byte array). + * + * native static public boolean redefineClassIntl(Class clz, byte[] classFile); + * + * @param clz class for redefinition + * @param classFile new version as a byte array + * @return false if any errors occurred during class redefinition + */ +JNIEXPORT jboolean JNICALL +Java_vm_runtime_defmeth_shared_Util_redefineClassIntl(JNIEnv *env, jclass clazz, jclass clazzToRedefine, jbyteArray bytecodeArray) { + jvmtiClassDefinition classDef; + jboolean result = JNI_TRUE; + + if (!NSK_VERIFY(env != NULL) || !NSK_VERIFY(clazzToRedefine != NULL) || !NSK_VERIFY(bytecodeArray != NULL)) { + return JNI_FALSE; + } + + classDef.klass = clazzToRedefine; + if (!NSK_JNI_VERIFY(env, + (classDef.class_byte_count = /* jsize */ NSK_CPP_STUB2(GetArrayLength, env, bytecodeArray)) > 0)) { + return JNI_FALSE; + } + + if (!NSK_JNI_VERIFY(env, + (classDef.class_bytes = (const unsigned char *) /* jbyte* */ NSK_CPP_STUB3(GetByteArrayElements, env, bytecodeArray, NULL)) != NULL)) { + return JNI_FALSE; + } + + if (!NSK_JVMTI_VERIFY( + NSK_CPP_STUB3(RedefineClasses, test_jvmti, 1, &classDef))) { + result = JNI_FALSE; + } + + // Need to cleanup reference to byte[] whether RedefineClasses succeeded or not + if (!NSK_JNI_VERIFY_VOID(env, + NSK_CPP_STUB4(ReleaseByteArrayElements, env, bytecodeArray, (jbyte*)classDef.class_bytes, JNI_ABORT))) { + return JNI_FALSE; + } + + return result; +} + +jint Agent_Initialize(JavaVM *jvm, char *options, void *reserved) { + /* init framework and parse options */ + if (!NSK_VERIFY(nsk_jvmti_parseOptions(options))) + return JNI_ERR; + + /* create JVMTI environment */ + if (!NSK_VERIFY((test_jvmti = + nsk_jvmti_createJVMTIEnv(jvm, reserved)) != NULL)) + return JNI_ERR; + + memset(&caps, 0, sizeof(jvmtiCapabilities)); + caps.can_redefine_classes = 1; + if (!NSK_JVMTI_VERIFY(NSK_CPP_STUB2(AddCapabilities, + test_jvmti, &caps))) + return JNI_ERR; + + if (!NSK_JVMTI_VERIFY(NSK_CPP_STUB2(GetCapabilities, + test_jvmti, &caps))) + return JNI_ERR; + + if (!caps.can_redefine_classes) + printf("Warning: RedefineClasses is not implemented\n"); + + return JNI_OK; +} + +JNIEXPORT jint JNICALL Agent_OnLoad(JavaVM *jvm, char *options, void *reserved) { + return Agent_Initialize(jvm, options, reserved); +} + +JNIEXPORT jint JNICALL Agent_OnAttach(JavaVM *jvm, char *options, void *reserved) { + return Agent_Initialize(jvm, options, reserved); +} + +#ifdef __cplusplus +} +#endif --- /dev/null 2018-05-14 10:15:02.574213890 -0700 +++ new/test/hotspot/jtreg/vmTestbase/vm/runtime/defmeth/shared/retransform.mf 2018-05-21 10:53:26.109502835 -0700 @@ -0,0 +1,3 @@ +Premain-Class: vm.runtime.defmeth.shared.Util$Transformer +Can-Retransform-Classes: true +Can-Redefine-Classes: true