8267095: Miscellaneous cleanups in vm.runtime.defmeth tests

Reviewed-by: dholmes, hseigel
This commit is contained in:
Vladimir Ivanov 2021-06-01 11:09:35 +00:00
parent 6149b9ad75
commit 229a6e2f36
394 changed files with 648 additions and 17288 deletions

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2013, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2013, 2021, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -21,22 +21,44 @@
* questions.
*/
/*
* @test
*
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
* @library /vmTestbase /test/lib
*
* @comment build retransform.jar in current dir
* @run 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
*/
package vm.runtime.defmeth;
import nsk.share.test.TestBase;
import static jdk.internal.org.objectweb.asm.Opcodes.*;
import java.util.Set;
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;
import static jdk.internal.org.objectweb.asm.Opcodes.*;
import static vm.runtime.defmeth.shared.ExecutionMode.*;
/*
* Test allowed combinations of access flags on methods in interfaces.
* Based on assertions from JVMS8.
* Based on assertions from JVMS.
*/
public class AccessibilityFlagsTest extends DefMethTest {
public static void main(String[] args) {
TestBase.runTest(new AccessibilityFlagsTest(), args);
DefMethTest.runTest(AccessibilityFlagsTest.class,
/* majorVer */ Set.of(MAX_MAJOR_VER),
/* flags */ Set.of(0, ACC_SYNCHRONIZED),
/* redefine */ Set.of(false, true),
/* execMode */ Set.of(DIRECT, REFLECTION, INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY));
}
/* ====================================================================== */
@ -207,7 +229,6 @@ public class AccessibilityFlagsTest extends DefMethTest {
// 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.
/**
@ -222,22 +243,10 @@ public class AccessibilityFlagsTest extends DefMethTest {
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,
// it must not have any of its ACC_FINAL, ACC_NATIVE, ACC_PRIVATE, ACC_STATIC,
// or ACC_SYNCHRONIZED flags set (8.4.3.1, 8.4.3.3, 8.4.3.4).
/**
@ -326,26 +335,6 @@ public class AccessibilityFlagsTest extends DefMethTest {
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));
}
/* =============================================================================== */
/**

View File

@ -21,19 +21,36 @@
* questions.
*/
/*
* @test
*
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
* @library /vmTestbase /test/lib
*
* @comment build retransform.jar in current dir
* @run 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
*/
package vm.runtime.defmeth;
import java.util.Map;
import java.util.Set;
import nsk.share.TestFailure;
import nsk.share.test.TestBase;
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.data.*;
import static jdk.internal.org.objectweb.asm.Opcodes.*;
import vm.runtime.defmeth.shared.DefMethTest;
import vm.runtime.defmeth.shared.executor.TestExecutor;
import java.util.Map;
import static jdk.internal.org.objectweb.asm.Opcodes.*;
import static vm.runtime.defmeth.shared.ExecutionMode.*;
/**
@ -42,7 +59,11 @@ import static vm.runtime.defmeth.shared.ExecutionMode.*;
public class BasicTest extends DefMethTest {
public static void main(String[] args) {
TestBase.runTest(new BasicTest(), args);
DefMethTest.runTest(BasicTest.class,
/* majorVer */ Set.of(MIN_MAJOR_VER, MAX_MAJOR_VER),
/* flags */ Set.of(0, ACC_SYNCHRONIZED),
/* redefine */ Set.of(false, true),
/* execMode */ Set.of(DIRECT, REFLECTION, INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY));
}
/*
@ -63,9 +84,7 @@ public class BasicTest extends DefMethTest {
* objectref does not implement the resolved interface, invokevirtual throws
* an IncompatibleClassChangeError.
*/
public void testInterfaceNotImplemented() {
TestBuilder b = factory.getBuilder();
public void testInterfaceNotImplemented(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()V").emptyBody().build()
.build();
@ -92,9 +111,7 @@ public class BasicTest extends DefMethTest {
expectedClass = IncompatibleClassChangeError.class;
}
b.test().callSite(I, C, "m", "()V").throws_(expectedClass).done()
.run();
b.test().callSite(I, C, "m", "()V").throws_(expectedClass).done();
}
/*
@ -105,9 +122,7 @@ public class BasicTest extends DefMethTest {
*
* ...
*/
public void testNoMatch() {
TestBuilder b = factory.getBuilder();
public void testNoMatch(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "(Ljava/lang/Object;)V").emptyBody().build()
.build();
@ -116,9 +131,7 @@ public class BasicTest extends DefMethTest {
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();
.test().callSite(C, C, "m", "(I)V").throws_(NoSuchMethodError.class).done();
}
/*
@ -133,9 +146,7 @@ public class BasicTest extends DefMethTest {
*
* ...
*/
public void testNonPublic() {
TestBuilder b = factory.getBuilder();
public void testNonPublic(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m1", "()V").private_().emptyBody().build()
.defaultMethod("m2", "()I").private_().returns(1).build()
@ -144,9 +155,7 @@ public class BasicTest extends DefMethTest {
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();
.test().callSite(C, C, "m2", "()I").throws_(NoSuchMethodError.class).done();
}
/*
@ -160,9 +169,7 @@ public class BasicTest extends DefMethTest {
* }
*
*/
public void testNonPublicOverride() {
TestBuilder b = factory.getBuilder();
public void testNonPublicOverride(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -181,9 +188,7 @@ public class BasicTest extends DefMethTest {
b.test().callSite(I, C, "m", "()I").returns(1).done()
.test().callSite(I, D, "m", "()I").throws_(IllegalAccessError.class).done()
.test().callSite(I, E, "m", "()I").throws_(IllegalAccessError.class).done()
.run();
.test().callSite(I, E, "m", "()I").throws_(IllegalAccessError.class).done();
}
@ -199,9 +204,7 @@ public class BasicTest extends DefMethTest {
* 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();
public void testStaticInit(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("<clinit>", "()V")
.flags(ACC_STATIC)
@ -218,9 +221,7 @@ public class BasicTest extends DefMethTest {
Class expectedError = isReflectionMode ? RuntimeException.class
: ExceptionInInitializerError.class;
b.test().new_(C).throws_(expectedError).done()
.run();
b.test().new_(C).throws_(expectedError).done();
}
/**
@ -235,9 +236,7 @@ public class BasicTest extends DefMethTest {
* 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();
public void testStaticInitPrivate(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("<clinit>", "()V")
.flags(ACC_STATIC)
@ -255,9 +254,7 @@ public class BasicTest extends DefMethTest {
Class expectedError = isReflectionMode ? RuntimeException.class
: ExceptionInInitializerError.class;
b.test().new_(C).throws_(expectedError).done()
.run();
b.test().new_(C).throws_(expectedError).done();
}
/**
@ -274,9 +271,7 @@ public class BasicTest extends DefMethTest {
* 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();
public void testNotStaticInitNoDefault(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("<clinit>", "()V")
.flags(ACC_STATIC)
@ -291,9 +286,7 @@ public class BasicTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I,J).build();
b.test().callSite(C, C, "m", "()I").returns(1).done()
.run();
b.test().callSite(C, C, "m", "()I").returns(1).done();
}
/*
@ -313,9 +306,8 @@ public class BasicTest extends DefMethTest {
// 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{
public void testLoaderConstraint() {
TestBuilder b = factory.getBuilder();
ConcreteClass A = b.clazz("A").build();
Interface I = b.intf("I")
@ -324,10 +316,10 @@ public class BasicTest extends DefMethTest {
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()
b.test().callSite(I, C, "m", "()LA;").throws_(LinkageError.class).done();
b.test().callSite(C, C, "m", "()LA;").throws_(LinkageError.class).done();
.prepare(new TestBuilder.LoaderConstructor() {
TestExecutor executor = b.prepare(new TestBuilder.LoaderConstructor() {
@Override
public MemoryClassLoader construct(Map<String, byte[]> classFiles) {
final byte[] cfI = classFiles.get("I");
@ -371,6 +363,8 @@ public class BasicTest extends DefMethTest {
return l2;
}
}).run();
});
executor.run();
}
}

View File

@ -21,15 +21,33 @@
* questions.
*/
/*
* @test
*
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
* @library /vmTestbase /test/lib
*
* @comment build retransform.jar in current dir
* @run 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
*/
package vm.runtime.defmeth;
import nsk.share.test.TestBase;
import java.util.Set;
import vm.runtime.defmeth.shared.DefMethTest;
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.ACC_SYNCHRONIZED;
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.*;
/**
@ -49,7 +67,11 @@ import static vm.runtime.defmeth.shared.ExecutionMode.*;
*/
public class ConflictingDefaultsTest extends DefMethTest {
public static void main(String[] args) {
TestBase.runTest(new ConflictingDefaultsTest(), args);
DefMethTest.runTest(ConflictingDefaultsTest.class,
/* majorVer */ Set.of(MIN_MAJOR_VER, MAX_MAJOR_VER),
/* flags */ Set.of(0, ACC_SYNCHRONIZED),
/* redefine */ Set.of(false, true),
/* execMode */ Set.of(DIRECT, REFLECTION, INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY));
}
/*
@ -61,9 +83,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
*
* TEST: C c = new C(); c.m() ==> ICCE
*/
public void testConflict() {
TestBuilder b = factory.getBuilder();
public void testConflict(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -76,9 +96,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
b.test().callSite(C, C, "m","()I")
.throws_(IncompatibleClassChangeError.class)
.done()
.run();
.done();
}
/*
@ -90,9 +108,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
*
* TEST: C c = new C(); c.m() return 2
*/
public void testMaximallySpecificDefault() {
TestBuilder b = factory.getBuilder();
public void testMaximallySpecificDefault(TestBuilder b) {
Interface I = b.intf("I")
.abstractMethod("m", "()I").build()
.build();
@ -105,9 +121,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
b.test().callSite(C, C, "m","()I")
.returns(2)
.done()
.run();
.done();
}
/*
@ -119,9 +133,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
*
* TEST: C c = new C(); c.m() ==> AME
*/
public void testReabstract() {
TestBuilder b = factory.getBuilder();
public void testReabstract(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -134,9 +146,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
b.test().callSite(C, C, "m","()I")
.throws_(AbstractMethodError.class)
.done()
.run();
.done();
}
/*
@ -152,9 +162,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
* 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();
public void testReabstract2(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -179,9 +187,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
.done()
.test().callSite(D, D, "m","()I")
.throws_(AbstractMethodError.class)
.done()
.run();
.done();
}
/*
@ -195,9 +201,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
*
* TEST: A c = new C(); c.m() ==> AME
*/
public void testReabstractConflictingDefaults() {
TestBuilder b = factory.getBuilder();
public void testReabstractConflictingDefaults(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -215,9 +219,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
b.test().callSite(A, C, "m","()I")
.throws_(AbstractMethodError.class)
.done()
.run();
.done();
}
@ -236,9 +238,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
* TEST: K k = new C(); k.m() ==> AME
* TEST: L l = new D(); l.m() ==> AME
*/
public void testReabstractConflictingDefaultsInvokeInterface() {
TestBuilder b = factory.getBuilder();
public void testReabstractConflictingDefaultsInvokeInterface(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -266,9 +266,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
.done()
.test().callSite(L, D, "m","()I")
.throws_(AbstractMethodError.class)
.done()
.run();
.done();
}
/*
@ -286,9 +284,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
* TEST: K k = new C(); CallSuper k.m() ==> AME
* TEST: L l = new D(); l.m() ==> AME
*/
public void testReabstractConflictingDefaultsSuper() {
TestBuilder b = factory.getBuilder();
public void testReabstractConflictingDefaultsSuper(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -315,9 +311,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
.done()
.test().callSite(L, D, "m","()I")
.throws_(AbstractMethodError.class)
.done()
.run();
.done();
}
/*
@ -345,9 +339,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
*/
@NotApplicableFor(modes = { REDEFINITION }) // Can't redefine a class that gets error during loading
public void testReabstractResolveMethod00705m2() {
TestBuilder b = factory.getBuilder();
public void testReabstractResolveMethod00705m2(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -394,9 +386,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
.done()
.test().callSite(A, C, "test_Amethod_ISIMR", "()V")
.throws_(expectedError2)
.done()
.run();
.done();
}
/*
@ -408,9 +398,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
*
* TEST: [I|J|C] c = new C(); c.m() == 2;
*/
public void testShadow() {
TestBuilder b = factory.getBuilder();
public void testShadow(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -431,9 +419,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
.test()
.callSite(C, C, "m","()I")
.returns(2)
.done()
.run();
.done();
}
/*
@ -445,9 +431,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
*
* TEST: [I|J|C] c = new C(); c.m() == 2;
*/
public void testDisqualified() {
TestBuilder b = factory.getBuilder();
public void testDisqualified(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -469,9 +453,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
.test()
.callSite(C, C, "m","()I")
.returns(2)
.done()
.run();
.done();
}
/*
@ -485,9 +467,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
* TEST: J j = new C(); j.m() ==> NSME; j.m(0) == 2
* TEST: C c = new C(); c.m() == 1; c.m(0) == 2
*/
public void testMixedArity1() {
TestBuilder b = factory.getBuilder();
public void testMixedArity1(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -529,9 +509,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
.callSite(C, C, "m","(I)I")
.params(0)
.returns(2)
.done()
.run();
.done();
}
/*
@ -545,9 +523,7 @@ public class ConflictingDefaultsTest extends DefMethTest {
* 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();
public void testMixedArity2(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -581,8 +557,6 @@ public class ConflictingDefaultsTest extends DefMethTest {
.callSite(C, C, "m","(I)I")
.params(0)
.returns(3)
.done()
.run();
.done();
}
}

View File

@ -21,16 +21,31 @@
* questions.
*/
/*
* @test
*
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
* @library /vmTestbase /test/lib
*
* @comment build retransform.jar in current dir
* @run 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
*/
package vm.runtime.defmeth;
import nsk.share.test.TestBase;
import java.util.Set;
import vm.runtime.defmeth.shared.DefMethTest;
import vm.runtime.defmeth.shared.data.*;
import vm.runtime.defmeth.shared.data.method.param.NewInstanceParam;
import vm.runtime.defmeth.shared.builder.TestBuilder;
import static jdk.internal.org.objectweb.asm.Opcodes.ACC_SYNCHRONIZED;
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
@ -46,7 +61,11 @@ import static vm.runtime.defmeth.shared.data.method.body.CallMethod.IndexbyteOp.
public class DefaultVsAbstractTest extends DefMethTest {
public static void main(String[] args) {
TestBase.runTest(new DefaultVsAbstractTest(), args);
DefMethTest.runTest(DefaultVsAbstractTest.class,
/* majorVer */ Set.of(MIN_MAJOR_VER, MAX_MAJOR_VER),
/* flags */ Set.of(0, ACC_SYNCHRONIZED),
/* redefine */ Set.of(false, true),
/* execMode */ Set.of(DIRECT, REFLECTION, INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY));
}
/*
@ -55,9 +74,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
*
* TEST: new C() throws InstantiationError
*/
public void test0() {
TestBuilder b = factory.getBuilder();
public void test0(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -69,8 +86,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
b.test()
.callSite(I, C, "m", "()I")
.throws_(InstantiationError.class)
.done()
.run();
.done();
}
/*
@ -86,9 +102,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
* TEST: C c = new D(); c.m() ==> AME
* TEST: D d = new D(); d.m() ==> AME
*/
public void test1() {
TestBuilder b = factory.getBuilder();
public void test1(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -110,8 +124,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
.test()
.callSite(D, D, "m", "()I")
.throws_(AbstractMethodError.class)
.done()
.run();
.done();
}
/*
@ -127,9 +140,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
* TEST: C o = new D(); o.m()I throws AME
* TEST: D o = new D(); o.m()I throws AME
*/
public void test2() {
TestBuilder b = factory.getBuilder();
public void test2(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -151,8 +162,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
.test()
.callSite(D, D, "m", "()I")
.throws_(AbstractMethodError.class)
.done()
.run();
.done();
}
/*
@ -170,9 +180,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
* 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();
public void test3(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -194,8 +202,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
.done()
.test() // D d = new C(); ...
.callSite(D, D, "m", "()I").returns(2)
.done()
.run();
.done();
}
/*
@ -213,9 +220,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
* TEST: D o = new C(); o.m()I throws AME
* TEST: C o = new C(); o.m()I throws AME
*/
public void test4() {
TestBuilder b = factory.getBuilder();
public void test4(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -243,8 +248,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
.test() // C c = new C(); ...
.callSite(C, C, "m", "()I")
.throws_(AbstractMethodError.class)
.done()
.run();
.done();
}
/*
@ -264,9 +268,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
* 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();
public void test5(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -296,8 +298,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
.test() // C c = new C(); ...
.callSite(I, C, "m", "()I")
.returns(2)
.done()
.run();
.done();
}
/*
@ -321,9 +322,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
* 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();
public void test6(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -357,8 +356,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
.done()
.test() // C c = new C(); ...
.callSite(J, C, "m", "()I").returns(3)
.done()
.run();
.done();
}
/*
@ -378,9 +376,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
* returns 1 for REFLECTION and INVOKE_WITH_ARGS
* ICCE for other modes
*/
public void testInvokeInterfaceClassDefaultMethod() {
TestBuilder b = factory.getBuilder();
public void testInvokeInterfaceClassDefaultMethod(TestBuilder b) {
Interface I = b.intf("I")
.abstractMethod("m", "()I").build()
.build();
@ -409,16 +405,14 @@ public class DefaultVsAbstractTest extends DefMethTest {
if (exeMode.equals("REFLECTION") ||
exeMode.equals("INVOKE_WITH_ARGS")) {
b.test().interfaceCallSite(A, B, "m", "()I")
.returns(1).done()
.run();
.returns(1).done();
} 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();
.throws_(IncompatibleClassChangeError.class).done();
}
}
@ -437,9 +431,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
*
* TEST: A o = new B(); o.m()I throws ICCE
*/
public void testInvokeInterfaceClassAbstractMethod() {
TestBuilder b = factory.getBuilder();
public void testInvokeInterfaceClassAbstractMethod(TestBuilder b) {
Interface I = b.intf("I")
.abstractMethod("m", "()I").build()
.build();
@ -456,9 +448,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
// 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();
.throws_(IncompatibleClassChangeError.class).done();
}
/*
@ -476,9 +466,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
*
* TEST: A o = new B(); o.m()I throws ICCE
*/
public void testInvokeInterfaceMultipleDefinedClassDefaultMethod() {
TestBuilder b = factory.getBuilder();
public void testInvokeInterfaceMultipleDefinedClassDefaultMethod(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -495,8 +483,7 @@ public class DefaultVsAbstractTest extends DefMethTest {
// 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();
.throws_(IncompatibleClassChangeError.class).done();
}
}

View File

@ -21,14 +21,31 @@
* questions.
*/
/*
* @test
*
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
* @library /vmTestbase /test/lib
*
* @comment build retransform.jar in current dir
* @run 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
*/
package vm.runtime.defmeth;
import nsk.share.test.TestBase;
import java.util.Set;
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 jdk.internal.org.objectweb.asm.Opcodes.*;
import static vm.runtime.defmeth.shared.ExecutionMode.*;
/**
@ -68,7 +85,11 @@ import static vm.runtime.defmeth.shared.ExecutionMode.*;
public class MethodResolutionTest extends DefMethTest {
public static void main(String[] args) {
TestBase.runTest(new MethodResolutionTest(), args);
DefMethTest.runTest(MethodResolutionTest.class,
/* majorVer */ Set.of(MIN_MAJOR_VER, MAX_MAJOR_VER),
/* flags */ Set.of(0, ACC_SYNCHRONIZED),
/* redefine */ Set.of(false, true),
/* execMode */ Set.of(DIRECT, REFLECTION, INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY));
}
/*
@ -80,9 +101,7 @@ public class MethodResolutionTest extends DefMethTest {
* TEST: C c = new C(); c.m() == 1;
* TEST: I i = new C(); i.m() == 1;
*/
public void testBasic() {
TestBuilder b = factory.getBuilder();
public void testBasic(TestBuilder b) {
Interface I =
b.intf("I")
.abstractMethod("m", "()I").build()
@ -100,8 +119,7 @@ public class MethodResolutionTest extends DefMethTest {
.test()
.callSite(C, C, "m", "()I")
.returns(1)
.done()
.run();
.done();
}
/*
@ -113,9 +131,7 @@ public class MethodResolutionTest extends DefMethTest {
* TEST: C c = new C(); c.m() == 1;
* TEST: I i = new C(); i.m() == 1;
*/
public void testBasicDefault() {
TestBuilder b = factory.getBuilder();
public void testBasicDefault(TestBuilder b) {
Interface I =
b.intf("I")
.defaultMethod("m", "()I").returns(1)
@ -132,9 +148,7 @@ public class MethodResolutionTest extends DefMethTest {
.done()
.test().callSite(C, C, "m", "()I")
.returns(1)
.done()
.run();
.done();
}
/*
@ -147,9 +161,7 @@ public class MethodResolutionTest extends DefMethTest {
*
* TEST: [I|J|K|C] i = new C(); i.m() == 1;
*/
public void testFarDefault() {
TestBuilder b = factory.getBuilder();
public void testFarDefault(TestBuilder b) {
Interface I =
b.intf("I")
.defaultMethod("m", "()I").returns(1)
@ -175,9 +187,7 @@ public class MethodResolutionTest extends DefMethTest {
.done()
.test().callSite(C, C, "m", "()I")
.returns(1)
.done()
.run();
.done();
}
/*
@ -191,9 +201,7 @@ public class MethodResolutionTest extends DefMethTest {
* TEST: C c = new C(); c.m() == 1;
* TEST: K k = new C(); k.m() == 1;
*/
public void testOverrideAbstract() {
TestBuilder b = factory.getBuilder();
public void testOverrideAbstract(TestBuilder b) {
Interface I = b.intf("I")
.abstractMethod("m", "()I").build()
.build();
@ -221,9 +229,7 @@ public class MethodResolutionTest extends DefMethTest {
.test()
.callSite(C, C, "m", "()I")
.returns(1)
.done()
.run();
.done();
}
/*
@ -234,9 +240,7 @@ public class MethodResolutionTest extends DefMethTest {
*
* TEST: [C|I] c = new C(); c.m() == 2;
*/
public void testDefaultVsConcrete() {
TestBuilder b = factory.getBuilder();
public void testDefaultVsConcrete(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -252,9 +256,7 @@ public class MethodResolutionTest extends DefMethTest {
.test()
.callSite(C, C, "m", "()I")
.returns(2)
.done()
.run();
.done();
}
/*
@ -266,9 +268,7 @@ public class MethodResolutionTest extends DefMethTest {
*
* TEST: [I|B|C] v = new C(); v.m() == 1;
*/
public void testInheritedDefault() {
TestBuilder b = factory.getBuilder();
public void testInheritedDefault(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -287,9 +287,7 @@ public class MethodResolutionTest extends DefMethTest {
.test()
.callSite(C, C, "m","()I")
.returns(1)
.done()
.run();
.done();
}
/*
@ -301,9 +299,7 @@ public class MethodResolutionTest extends DefMethTest {
*
* TEST: [I|B|C] v = new C(); v.m() == 2;
*/
public void testExistingInherited() {
TestBuilder b = factory.getBuilder();
public void testExistingInherited(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -325,9 +321,7 @@ public class MethodResolutionTest extends DefMethTest {
.test()
.callSite(C, C, "m","()I")
.returns(2)
.done()
.run();
.done();
}
/*
@ -339,9 +333,7 @@ public class MethodResolutionTest extends DefMethTest {
*
* TEST: [I|B|D] v = new C(); v.m() == 3;
*/
public void testExistingInheritedOverride() {
TestBuilder b = factory.getBuilder();
public void testExistingInheritedOverride(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -365,9 +357,7 @@ public class MethodResolutionTest extends DefMethTest {
.test()
.callSite(C, C, "m","()I")
.returns(3)
.done()
.run();
.done();
}
/*
@ -381,9 +371,7 @@ public class MethodResolutionTest extends DefMethTest {
*
* TEST: [I|J|C|D|J] v = new E(); v.m() == 22;
*/
public void testExistingInheritedPlusDefault() {
TestBuilder b = factory.getBuilder();
public void testExistingInheritedPlusDefault(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(11).build()
.build();
@ -422,9 +410,7 @@ public class MethodResolutionTest extends DefMethTest {
.test()
.callSite(E, E, "m","()I")
.returns(22)
.done()
.run();
.done();
}
/*
@ -436,9 +422,7 @@ public class MethodResolutionTest extends DefMethTest {
*
* TEST: [I|B|C] v = new C(); v.m() == 2;
*/
public void testInheritedWithConcrete() {
TestBuilder b = factory.getBuilder();
public void testInheritedWithConcrete(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -460,9 +444,7 @@ public class MethodResolutionTest extends DefMethTest {
.test()
.callSite(C, C, "m","()I")
.returns(2)
.done()
.run();
.done();
}
/*
@ -474,9 +456,7 @@ public class MethodResolutionTest extends DefMethTest {
*
* TEST: [I|B|C] v = new C(); v.m() == 2;
*/
public void testInheritedWithConcreteAndImpl() {
TestBuilder b = factory.getBuilder();
public void testInheritedWithConcreteAndImpl(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -498,9 +478,7 @@ public class MethodResolutionTest extends DefMethTest {
.test()
.callSite(C, C, "m","()I")
.returns(2)
.done()
.run();
.done();
}
/*
@ -513,9 +491,7 @@ public class MethodResolutionTest extends DefMethTest {
*
* TEST: [I|J|K|C] c = new C(); c.m() == 99
*/
public void testDiamond() {
TestBuilder b = factory.getBuilder();
public void testDiamond(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -541,9 +517,7 @@ public class MethodResolutionTest extends DefMethTest {
.test()
.callSite(C, C, "m","()I")
.returns(1)
.done()
.run();
.done();
}
/*
@ -558,9 +532,7 @@ public class MethodResolutionTest extends DefMethTest {
*
* TEST: [I|J|K|L|M|C] c = new C(); c.m() == 1
*/
public void testExpandedDiamond() {
TestBuilder b = factory.getBuilder();
public void testExpandedDiamond(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -596,9 +568,7 @@ public class MethodResolutionTest extends DefMethTest {
.test()
.callSite(C, C, "m","()I")
.returns(1)
.done()
.run();
.done();
}
/*
@ -614,9 +584,7 @@ public class MethodResolutionTest extends DefMethTest {
* 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();
public void testSelfFillWithExplicitBridge(TestBuilder b) {
/* interface I<T> { ... */
Interface I = b.intf("I").sig("<T:Ljava/lang/Object;>Ljava/lang/Object;")
/* default int m(T t) { return 1; } */
@ -656,9 +624,7 @@ public class MethodResolutionTest extends DefMethTest {
.callSite(C, C, "m", "(LC;)I")
.params(new NullParam())
.returns(2)
.done()
.run();
.done();
}
/*
@ -689,8 +655,6 @@ public class MethodResolutionTest extends DefMethTest {
b.test().callSite(C, C, "m", "(I)I").params(ICONST_0)
.returns(2)
.build();
b.run();
}
/*
@ -702,9 +666,7 @@ public class MethodResolutionTest extends DefMethTest {
* TEST: J j = new C(); j.m() ==> NSME; j.m(0) == 2
* TEST: C c = new C(); c.m() == 1; c.m(0) == 2
*/
public void testConflictingDefaultMixedArity1() {
TestBuilder b = factory.getBuilder();
public void testConflictingDefaultMixedArity1(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1)
.build()
@ -741,8 +703,6 @@ public class MethodResolutionTest extends DefMethTest {
b.test().callSite(C, C, "m", "(I)I").params(ICONST_0)
.returns(2)
.build();
b.run();
}
/*
@ -756,9 +716,7 @@ public class MethodResolutionTest extends DefMethTest {
* TEST: J j = new C(); j.m(0) ==> ICCE
* TEST: C c = new C(); c.m() ==> ICCE; c.m(0) == 3
*/
public void testConflictingDefaultMixedArity2() {
TestBuilder b = factory.getBuilder();
public void testConflictingDefaultMixedArity2(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1)
.build()
@ -797,8 +755,6 @@ public class MethodResolutionTest extends DefMethTest {
b.test().callSite(C, C, "m", "(I)I").params(ICONST_0)
.returns(3)
.build();
b.run();
}
/* In package1:
@ -813,11 +769,9 @@ public class MethodResolutionTest extends DefMethTest {
* 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();
public void testMethodResolvedInDifferentPackage(TestBuilder b) {
Interface I = b.intf("p1.I").flags(~ACC_PUBLIC & ACC_PUBLIC) // make it package private
.defaultMethod("m", "()I").returns(10)
.build()
@ -832,18 +786,14 @@ public class MethodResolutionTest extends DefMethTest {
b.test()
.callSite(myA, myA, "m", "()I")
.returns(10)
.done()
.run();
// -mode reflect will fail with IAE as expected
} else {
.done();
} else {
// -mode reflect will fail with IAE as expected
b.test()
.callSite(myA, myA, "m", "()I")
.throws_(IllegalAccessException.class)
.done()
.run();
}
ConcreteClass myB = b.clazz("p2.B").build();
.done();
}
}
/* In package p1:
@ -867,8 +817,7 @@ public class MethodResolutionTest extends DefMethTest {
* myA.m(); // should return 13, not throw IllegalAccessError
*/
public void testMethodResolvedInLocalFirst() {
TestBuilder b = factory.getBuilder();
public void testMethodResolvedInLocalFirst(TestBuilder b) {
Interface I = b.intf("p1.I")
.defaultMethod("m", "()I").returns(12)
.build()
@ -889,7 +838,6 @@ public class MethodResolutionTest extends DefMethTest {
b.test()
.callSite(myB, myB, "m", "()I")
.returns(13)
.done()
.run();
.done();
}
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2013, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2013, 2021, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -21,30 +21,49 @@
* questions.
*/
/*
* @test
*
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
* @library /vmTestbase /test/lib
*
* @comment build retransform.jar in current dir
* @run 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
*/
package vm.runtime.defmeth;
import java.util.Set;
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;
import static vm.runtime.defmeth.shared.ExecutionMode.*;
import static vm.runtime.defmeth.shared.data.method.body.CallMethod.IndexbyteOp.*;
/**
* 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);
DefMethTest.runTest(ObjectMethodOverridesTest.class,
/* majorVer */ Set.of(MAX_MAJOR_VER),
/* flags */ Set.of(0),
/* redefine */ Set.of(false, true),
/* execMode */ Set.of(DIRECT, REFLECTION, INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY));
}
/* protected Object clone() */
public void testClone() throws Exception {
TestBuilder b = factory.getBuilder();
public void testClone(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("clone", "()Ljava/lang/Object;")
.throw_(TestFailure.class)
@ -62,15 +81,11 @@ public class ObjectMethodOverridesTest extends DefMethTest {
b.test().callSite(C, C, "m", "()V")
.throws_(CloneNotSupportedException.class)
.done()
.run();
.done();
}
/* boolean equals(Object obj) */
public void testEquals() throws Exception {
TestBuilder b = factory.getBuilder();
public void testEquals(TestBuilder b) throws ReflectiveOperationException {
Interface I = b.intf("I")
.defaultMethod("equals", "(Ljava/lang/Object;)Z")
.throw_(TestFailure.class)
@ -79,16 +94,16 @@ public class ObjectMethodOverridesTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
ClassLoader cl = b.build();
Object c = cl.loadClass("C").newInstance();
c.equals(this);
b.test().callSite(I, C, "equals", "(Ljava/lang/Object;)Z")
.ignoreResult()
.done();
b.test().callSite(C, C, "equals", "(Ljava/lang/Object;)Z")
.ignoreResult()
.done();
}
/* void finalize() */
public void testFinalize() throws Exception {
TestBuilder b = factory.getBuilder();
public void testFinalize(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("finalize", "()V")
.throw_(TestFailure.class)
@ -105,15 +120,11 @@ public class ObjectMethodOverridesTest extends DefMethTest {
b.test().callSite(C, C, "m", "()V")
.ignoreResult()
.done()
.run();
.done();
}
/* final Class<?> getClass() */
public void testGetClass() throws Exception {
TestBuilder b = factory.getBuilder();
public void testGetClass(TestBuilder b) throws Exception {
Interface I = b.intf("I")
.defaultMethod("getClass", "()Ljava/lang/Class;")
.sig("()Ljava/lang/Class<*>;")
@ -123,14 +134,12 @@ public class ObjectMethodOverridesTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done()
.run();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done();
b.test().loadClass(C).throws_(IncompatibleClassChangeError.class).done();
}
/* int hashCode() */
public void testHashCode() throws Exception {
TestBuilder b = factory.getBuilder();
public void testHashCode(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("hashCode", "()I")
.throw_(TestFailure.class)
@ -139,17 +148,17 @@ public class ObjectMethodOverridesTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
ClassLoader cl = b.build();
Object c = cl.loadClass("C").newInstance();
c.hashCode();
b.test().callSite(I, C, "hashCode", "()I")
.ignoreResult()
.done();
b.test().callSite(C, C, "hashCode", "()I")
.ignoreResult()
.done();
}
/* final void notify() */
public void testNotify() throws Exception {
TestBuilder b = factory.getBuilder();
public void testNotify(TestBuilder b) throws Exception {
Interface I = b.intf("I")
.defaultMethod("notify", "()V")
.throw_(TestFailure.class)
@ -158,14 +167,12 @@ public class ObjectMethodOverridesTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done()
.run();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done();
b.test().loadClass(C).throws_(IncompatibleClassChangeError.class).done();
}
/* void notifyAll() */
public void testNotifyAll() throws Exception {
TestBuilder b = factory.getBuilder();
public void testNotifyAll(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("notifyAll", "()V")
.throw_(TestFailure.class)
@ -174,14 +181,12 @@ public class ObjectMethodOverridesTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done()
.run();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done();
b.test().loadClass(C).throws_(IncompatibleClassChangeError.class).done();
}
/* String toString() */
public void testToString() throws Exception {
TestBuilder b = factory.getBuilder();
public void testToString(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("toString()", "()Ljava/lang/String;")
.throw_(TestFailure.class)
@ -190,16 +195,23 @@ public class ObjectMethodOverridesTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
ClassLoader cl = b.build();
Object c = cl.loadClass("C").newInstance();
c.toString();
if (factory.getExecutionMode() == "REFLECTION") {
// Class.get*Method() don't find any implicitly declared method from Object on interfaces.
b.test().callSite(I, C, "toString", "()Ljava/lang/String;")
.throws_(NoSuchMethodException.class)
.done();
} else {
b.test().callSite(I, C, "toString", "()Ljava/lang/String;")
.ignoreResult()
.done();
}
b.test().callSite(C, C, "toString", "()Ljava/lang/String;")
.ignoreResult()
.done();
}
/* final void wait() */
public void testWait() throws Exception {
TestBuilder b = factory.getBuilder();
public void testWait(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("wait", "()V")
.throw_(TestFailure.class)
@ -208,14 +220,12 @@ public class ObjectMethodOverridesTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done()
.run();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done();
b.test().loadClass(C).throws_(IncompatibleClassChangeError.class).done();
}
/* final void wait(long timeout) */
public void testTimedWait() throws Exception {
TestBuilder b = factory.getBuilder();
public void testTimedWait(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("wait", "(J)V")
.throw_(TestFailure.class)
@ -224,14 +234,12 @@ public class ObjectMethodOverridesTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done()
.run();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done();
b.test().loadClass(C).throws_(IncompatibleClassChangeError.class).done();
}
/* final void wait(long timeout, int nanos) */
public void testTimedWait1() throws Exception {
TestBuilder b = factory.getBuilder();
public void testTimedWait1(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("wait", "(JI)V")
.throw_(TestFailure.class)
@ -240,7 +248,7 @@ public class ObjectMethodOverridesTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done()
.run();
b.test().loadClass(I).throws_(IncompatibleClassChangeError.class).done();
b.test().loadClass(C).throws_(IncompatibleClassChangeError.class).done();
}
}

View File

@ -21,15 +21,33 @@
* questions.
*/
/*
* @test
*
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
* @library /vmTestbase /test/lib
*
* @comment build retransform.jar in current dir
* @run 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
*/
package vm.runtime.defmeth;
import nsk.share.test.TestBase;
import java.util.Set;
import vm.runtime.defmeth.shared.DefMethTest;
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.ACC_SYNCHRONIZED;
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.*;
/**
@ -38,7 +56,11 @@ import static vm.runtime.defmeth.shared.ExecutionMode.*;
public class PrivateMethodsTest extends DefMethTest {
public static void main(String[] args) {
TestBase.runTest(new PrivateMethodsTest(), args);
DefMethTest.runTest(PrivateMethodsTest.class,
/* majorVer */ Set.of(MIN_MAJOR_VER, MAX_MAJOR_VER),
/* flags */ Set.of(0, ACC_SYNCHRONIZED),
/* redefine */ Set.of(false, true),
/* execMode */ Set.of(DIRECT, REFLECTION, INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY));
}
// invokevirtual & invokeinterface from same/subintf
@ -72,9 +94,7 @@ public class PrivateMethodsTest extends DefMethTest {
* 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();
public void testPrivateInvokeVirtual(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("privateM", "()I")
.private_().returns(1).build()
@ -87,9 +107,7 @@ public class PrivateMethodsTest extends DefMethTest {
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();
.test().callSite(C, C, "m", "()I").throws_(VerifyError.class).done();
}
/*
@ -104,9 +122,7 @@ public class PrivateMethodsTest extends DefMethTest {
* TEST: I o = new C(); o.m()I returns 1
* TEST: C o = new C(); o.m()I returns 1
*/
public void testPrivateInvokeIntf() {
TestBuilder b = factory.getBuilder();
public void testPrivateInvokeIntf(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("privateM", "()I")
.private_().returns(1).build()
@ -117,9 +133,7 @@ public class PrivateMethodsTest extends DefMethTest {
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();
.test().callSite(C, C, "m", "()I").returns(1).done();
}
/*
@ -134,9 +148,7 @@ public class PrivateMethodsTest extends DefMethTest {
* TEST: I o = new C(); o.m()I throws IncompatibleClassChangeError
* TEST: C o = new C(); o.m()I throws IncompatibleClassChangeError
*/
public void testPrivateInvokeStatic() {
TestBuilder b = factory.getBuilder();
public void testPrivateInvokeStatic(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("privateM", "()I")
.private_().returns(1).build()
@ -147,9 +159,7 @@ public class PrivateMethodsTest extends DefMethTest {
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();
.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
// call from another default method in the same interface
@ -165,9 +175,7 @@ public class PrivateMethodsTest extends DefMethTest {
* 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();
public void testPrivateCallSameClass(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("privateM", "()I")
.private_().returns(1).build()
@ -178,9 +186,7 @@ public class PrivateMethodsTest extends DefMethTest {
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();
.test().callSite(C, C, "m", "()I").returns(1).done();
}
/*
@ -213,9 +219,7 @@ public class PrivateMethodsTest extends DefMethTest {
* 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();
public void testPrivateCallSubIntf(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("privateM", "()I")
.private_().returns(1).build()
@ -250,9 +254,7 @@ public class PrivateMethodsTest extends DefMethTest {
.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();
.test().callSite(E, E, "m", "()I").throws_(VerifyError.class).done();
}
/*
@ -276,9 +278,7 @@ public class PrivateMethodsTest extends DefMethTest {
* TEST: { E o = new E(); o.m()I throws NoSuchMethodError (or VerifyError); }
*/
@NotApplicableFor(modes = { REDEFINITION }) // Can't redefine a class that gets error during loading
public void testPrivateCallImplClass() {
TestBuilder b = factory.getBuilder();
public void testPrivateCallImplClass(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("privateM", "()I")
.private_().returns(1).build()
@ -313,9 +313,7 @@ public class PrivateMethodsTest extends DefMethTest {
}
b.test().callSite(C, C, "m", "()I").throws_(ccExpectedClass).done()
.test().callSite(D, D, "m", "()I").throws_(VerifyError.class).done()
.test().callSite(E, E, "m", "()I").throws_(eeExpectedClass).done()
.run();
.test().callSite(E, E, "m", "()I").throws_(eeExpectedClass).done();
}
// doesn't participate in default method analysis
@ -332,9 +330,7 @@ public class PrivateMethodsTest extends DefMethTest {
* TEST: { I o = new C(); o.m()I throws IllegalAccessError; }
* TEST: { C o = new C(); o.m()I throws NoSuchMethodError; }
*/
public void testPrivate() {
TestBuilder b = factory.getBuilder();
public void testPrivate(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.private_().returns(1).build()
@ -343,9 +339,7 @@ public class PrivateMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().privateCallSite(I, C, "m", "()I").throws_(IllegalAccessError.class).done()
.test(). callSite(C, C, "m", "()I").throws_(NoSuchMethodError.class).done()
.run();
.test(). callSite(C, C, "m", "()I").throws_(NoSuchMethodError.class).done();
}
/*
@ -361,9 +355,7 @@ public class PrivateMethodsTest extends DefMethTest {
* TEST: { I o = new C(); o.m()I == IllegalAccessError; }
* TEST: { C o = new C(); o.m()I == 2; }
*/
public void testPrivateVsConcrete() {
TestBuilder b = factory.getBuilder();
public void testPrivateVsConcrete(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.private_().returns(1).build()
@ -374,9 +366,7 @@ public class PrivateMethodsTest extends DefMethTest {
.build();
b.test().privateCallSite(I, C, "m", "()I").throws_(IllegalAccessError.class).done()
.test(). callSite(C, C, "m", "()I").returns(2).done()
.run();
.test(). callSite(C, C, "m", "()I").returns(2).done();
}
/*
@ -394,9 +384,7 @@ public class PrivateMethodsTest extends DefMethTest {
* 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();
public void testPublicOverridePrivate(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.private_().returns(1).build()
@ -411,9 +399,7 @@ public class PrivateMethodsTest extends DefMethTest {
b.test().privateCallSite(I, C, "m", "()I").throws_(IllegalAccessError.class).done()
.test(). callSite(J, C, "m", "()I").returns(2).done()
.test(). callSite(C, C, "m", "()I").returns(2).done()
.run();
.test(). callSite(C, C, "m", "()I").returns(2).done();
}
/*
@ -431,9 +417,7 @@ public class PrivateMethodsTest extends DefMethTest {
* TEST: { J o = new C(); o.m()I == IllegalAccessError; } II J.m priv
* TEST: { C o = new C(); o.m()I == 1; }
*/
public void testPrivateOverrideDefault() {
TestBuilder b = factory.getBuilder();
public void testPrivateOverrideDefault(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.returns(1).build()
@ -448,9 +432,7 @@ public class PrivateMethodsTest extends DefMethTest {
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();
.test().callSite(C, C, "m", "()I").returns(1).done();
}
/*
@ -468,9 +450,7 @@ public class PrivateMethodsTest extends DefMethTest {
* 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();
public void testPrivateReabstract(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.private_().returns(1).build()
@ -484,9 +464,7 @@ public class PrivateMethodsTest extends DefMethTest {
b.test().privateCallSite(I, C, "m", "()I").throws_(IllegalAccessError.class).done()
.test(). callSite(J, C, "m", "()I").throws_(AbstractMethodError.class).done()
.test(). callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done()
.run();
.test(). callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done();
}
/*
@ -504,9 +482,7 @@ public class PrivateMethodsTest extends DefMethTest {
* TEST: { J o = new C(); o.m()I throws IllegalAccessError }
* TEST: { C o = new C(); o.m()I throws AbstractMethodError }
*/
public void testPrivateOverrideAbstract() {
TestBuilder b = factory.getBuilder();
public void testPrivateOverrideAbstract(TestBuilder b) {
Interface I = b.intf("I")
.abstractMethod("m", "()I").build()
.build();
@ -520,8 +496,7 @@ public class PrivateMethodsTest extends DefMethTest {
b.test().callSite(I, C, "m", "()I").throws_(AbstractMethodError.class).done()
.test().privateCallSite(J, C, "m", "()I").throws_(IllegalAccessError.class).done()
.test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done()
.run();
.test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done();
}
/*
@ -537,9 +512,7 @@ public class PrivateMethodsTest extends DefMethTest {
* TEST: { B o = new C(); o.m()I throws NoSuchMethodError }
* TEST: { C o = new C(); o.m()I throws NoSuchMethodError }
*/
public void testPrivateInherited() {
TestBuilder b = factory.getBuilder();
public void testPrivateInherited(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.private_().returns(1).build()
@ -550,10 +523,7 @@ public class PrivateMethodsTest extends DefMethTest {
b.test().privateCallSite(I, C, "m","()I").throws_(IllegalAccessError.class).done()
.test(). callSite(B, C, "m","()I").throws_(NoSuchMethodError.class).done()
.test(). callSite(C, C, "m","()I").throws_(NoSuchMethodError.class).done()
.run();
.test(). callSite(C, C, "m","()I").throws_(NoSuchMethodError.class).done();
}
/*
@ -571,9 +541,7 @@ public class PrivateMethodsTest extends DefMethTest {
* TEST: { B o = new C(); o.m()I == 2; }
* TEST: { C o = new C(); o.m()I == 2; }
*/
public void testPrivateVsConcreteInherited() {
TestBuilder b = factory.getBuilder();
public void testPrivateVsConcreteInherited(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.private_().returns(1).build()
@ -587,9 +555,7 @@ public class PrivateMethodsTest extends DefMethTest {
b.test().privateCallSite(I, C, "m","()I").throws_(IllegalAccessError.class).done()
.test(). callSite(B, C, "m","()I").returns(2).done()
.test(). callSite(C, C, "m","()I").returns(2).done()
.run();
.test(). callSite(C, C, "m","()I").returns(2).done();
}
/*
@ -609,9 +575,7 @@ public class PrivateMethodsTest extends DefMethTest {
* 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();
public void testPrivateConflict(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").private_().returns(1).build()
.build();
@ -624,9 +588,7 @@ public class PrivateMethodsTest extends DefMethTest {
b.test().privateCallSite(I, C, "m", "()I").throws_(IllegalAccessError.class).done()
.test(). callSite(J, C, "m", "()I").returns(2).done()
.test(). callSite(C, C, "m", "()I").returns(2).done()
.run();
.test(). callSite(C, C, "m", "()I").returns(2).done();
}
/*
* testPrivateSuperClassMethodNoDefaultMethod
@ -647,9 +609,7 @@ public class PrivateMethodsTest extends DefMethTest {
*
* TEST: { B b = new C(); b.m()I throws IllegalAccessError; }
*/
public void testPrivateSuperClassMethodNoDefaultMethod() {
TestBuilder b = factory.getBuilder();
public void testPrivateSuperClassMethodNoDefaultMethod(TestBuilder b) {
ConcreteClass A = b.clazz("A")
.concreteMethod("m", "()I").private_().returns(1).build()
.build();
@ -664,9 +624,7 @@ public class PrivateMethodsTest extends DefMethTest {
.concreteMethod("m", "()I").public_().returns(2).build()
.build();
b.test().privateCallSite(B, C, "m", "()I").throws_(IllegalAccessError.class).done()
.run();
b.test().privateCallSite(B, C, "m", "()I").throws_(IllegalAccessError.class).done();
}
/*
@ -688,9 +646,7 @@ public class PrivateMethodsTest extends DefMethTest {
*
* TEST: { B b = new C(); b.m()I throws IllegalAccessError; }
*/
public void testPrivateSuperClassMethodDefaultMethod() {
TestBuilder b = factory.getBuilder();
public void testPrivateSuperClassMethodDefaultMethod(TestBuilder b) {
ConcreteClass A = b.clazz("A")
.concreteMethod("m", "()I").private_().returns(1).build()
.build();
@ -705,8 +661,7 @@ public class PrivateMethodsTest extends DefMethTest {
.concreteMethod("m", "()I").public_().returns(2).build()
.build();
b.test().privateCallSite(B, C, "m", "()I").throws_(IllegalAccessError.class).done()
.run();
b.test().privateCallSite(B, C, "m", "()I").throws_(IllegalAccessError.class).done();
}
/*
@ -726,9 +681,7 @@ public class PrivateMethodsTest extends DefMethTest {
*
* TEST: { B b = new C(); b.m()I throws IllegalAccessError; }
*/
public void testPrivateSuperClassMethodDefaultMethodNoOverride() {
TestBuilder b = factory.getBuilder();
public void testPrivateSuperClassMethodDefaultMethodNoOverride(TestBuilder b) {
ConcreteClass A = b.clazz("A")
.concreteMethod("m", "()I").private_().returns(1).build()
.build();
@ -741,8 +694,6 @@ public class PrivateMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").extend(B).build();
b.test().privateCallSite(B, C, "m", "()I").throws_(IllegalAccessError.class).done()
.run();
b.test().privateCallSite(B, C, "m", "()I").throws_(IllegalAccessError.class).done();
}
}

View File

@ -1,4 +1,4 @@
Copyright (c) 2014, 2019, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2014, 2021, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
@ -121,37 +121,25 @@ OVERVIEW
- 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
Additionally, each test enumerates test configurations and run every test case with them.
Test configuration consists of 4 parameters:
majorVer - major version of class files for generated concrete classes
values: ver49, ver52
values: MIN_MAJOR_VER (49) ... MAX_MAJOR_VER (61)
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
values: no additional flags, ACC_SYNCHRONIZED
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)
DIRECT - invoke* bytecodes
REFLECTION - Reflection API
INDY - invokedynamic bytecode
INVOKE_EXACT - MethodHandle.invokeExact()
INVOKE_GENERIC - MethodHandle.invoke()
INVOKE_WITH_ARGS - MethodHandle.invokeWithArguments()
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
values: false, true
STRESS TESTING

View File

@ -21,14 +21,29 @@
* questions.
*/
/*
* @test
*
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
* @library /vmTestbase /test/lib
*
* @comment build retransform.jar in current dir
* @run 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
*/
package vm.runtime.defmeth;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
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;
@ -39,6 +54,8 @@ 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 jdk.internal.org.objectweb.asm.Opcodes.*;
import static vm.runtime.defmeth.shared.ExecutionMode.*;
/*
@ -47,7 +64,11 @@ import static vm.runtime.defmeth.shared.ExecutionMode.*;
public class RedefineTest extends DefMethTest {
public static void main(String[] args) {
TestBase.runTest(new RedefineTest(), args);
DefMethTest.runTest(RedefineTest.class,
/* majorVer */ Set.of(MIN_MAJOR_VER, MAX_MAJOR_VER),
/* flags */ Set.of(0, ACC_SYNCHRONIZED),
/* redefine */ Set.of(true),
/* execMode */ Set.of(DIRECT, INVOKE_EXACT, INVOKE_GENERIC, INDY));
}
@Override
@ -56,8 +77,7 @@ public class RedefineTest extends DefMethTest {
// 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).");
getLog().warn("RedefineTest isn't applicable to reflection-based execution scenario (REDEFINE & INVOKE_WITH_ARGS).");
}
}

View File

@ -21,17 +21,31 @@
* questions.
*/
/*
* @test
*
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
* @library /vmTestbase /test/lib
*
* @comment build retransform.jar in current dir
* @run 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
*/
package vm.runtime.defmeth;
import nsk.share.test.TestBase;
import java.util.Set;
import vm.runtime.defmeth.shared.DefMethTest;
import vm.runtime.defmeth.shared.builder.TesterBuilder;
import vm.runtime.defmeth.shared.data.*;
import vm.runtime.defmeth.shared.builder.TestBuilder;
import vm.runtime.defmeth.shared.annotation.NotApplicableFor;
import static jdk.internal.org.objectweb.asm.Opcodes.ACC_PRIVATE;
import static jdk.internal.org.objectweb.asm.Opcodes.ACC_STATIC;
import static jdk.internal.org.objectweb.asm.Opcodes.*;
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.*;
@ -42,7 +56,11 @@ import static vm.runtime.defmeth.shared.ExecutionMode.*;
public class StaticMethodsTest extends DefMethTest {
public static void main(String[] args) {
TestBase.runTest(new StaticMethodsTest(), args);
DefMethTest.runTest(StaticMethodsTest.class,
/* majorVer */ Set.of(MIN_MAJOR_VER, MAX_MAJOR_VER),
/* flags */ Set.of(0, ACC_SYNCHRONIZED),
/* redefine */ Set.of(false, true),
/* execMode */ Set.of(DIRECT, REFLECTION, INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY));
}
// static method in interface
@ -55,9 +73,7 @@ public class StaticMethodsTest extends DefMethTest {
*
* class C implements I {}
*/
public void testStaticMethod() {
TestBuilder b = factory.getBuilder();
public void testStaticMethod(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.static_().public_().returns(1).build()
@ -65,9 +81,8 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().staticCallSite(I, "m", "()I").returns(1).done()
.run();
b.test().staticCallSite(I, "m", "()I").returns(1).done();
b.test().staticCallSite(C, "m", "()I").throws_(NoSuchMethodError.class).done();
}
// invoke[virtual|interface|special] from same/subintf
@ -81,9 +96,7 @@ public class StaticMethodsTest extends DefMethTest {
*
* class C implements I {}
*/
public void testInvokeVirtual() {
TestBuilder b = factory.getBuilder();
public void testInvokeVirtual(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("staticM", "()I")
.static_().public_().returns(1).build()
@ -95,12 +108,10 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().staticCallSite(I, "staticM", "()I").returns(1).done()
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();
b.test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
b.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
/*
@ -113,9 +124,7 @@ public class StaticMethodsTest extends DefMethTest {
*
* class C implements I {}
*/
public void testInvokeIntf() {
TestBuilder b = factory.getBuilder();
public void testInvokeIntf(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("staticM", "()I")
.static_().public_().returns(1).build()
@ -126,12 +135,10 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().staticCallSite(I, "staticM", "()I").returns(1).done()
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();
b.test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
b.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
/*
@ -144,9 +151,7 @@ public class StaticMethodsTest extends DefMethTest {
*
* class C implements I {}
*/
public void testInvokeSpecial() {
TestBuilder b = factory.getBuilder();
public void testInvokeSpecial(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("staticM", "()I")
.static_().public_().returns(1).build()
@ -157,12 +162,10 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().staticCallSite(I, "staticM", "()I").returns(1).done()
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();
b.test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
b.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
/*
@ -175,9 +178,7 @@ public class StaticMethodsTest extends DefMethTest {
*
* class C implements I {}
*/
public void testStaticVsDefault() {
TestBuilder b = factory.getBuilder();
public void testStaticVsDefault(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.static_().public_().returns(1).build()
@ -187,16 +188,14 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I).build();
b.test().staticCallSite(I, "m", "()I").throws_(ClassFormatError.class).done()
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();
b.test().callSite(C, C, "m", "()I").throws_(ClassFormatError.class).done();
}
// call static method from default method
@ -212,9 +211,7 @@ public class StaticMethodsTest extends DefMethTest {
*
* class C implements I {}
*/
public void testInvokeFromDefaultMethod() throws Exception {
TestBuilder b = factory.getBuilder();
public void testInvokeFromDefaultMethod(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("staticPublicM", "()I")
.static_().public_().returns(1).build()
@ -240,9 +237,7 @@ public class StaticMethodsTest extends DefMethTest {
// 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();
.test().callSite(C, C, "invokePrivate", "()I").returns(1).done();
}
// call static method from implementing subclass
@ -264,11 +259,8 @@ public class StaticMethodsTest extends DefMethTest {
* 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();
public void testInvokeFromSubclass(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("staticPublicM", "()I")
.static_().public_().returns(1).build()
@ -297,7 +289,6 @@ public class StaticMethodsTest extends DefMethTest {
b.test().callSite(C, C, "invokePublic", "()I").throws_(VerifyError.class).done()
.test().callSite(C, C, "invokePrivate", "()I").throws_(VerifyError.class).done();
}
b.run();
}
// static method doesn't participate in default method analysis:
@ -311,9 +302,7 @@ public class StaticMethodsTest extends DefMethTest {
*
* class C implements I {}
*/
public void testNotInherited() {
TestBuilder b = factory.getBuilder();
public void testNotInherited(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.static_().public_().returns(1).build()
@ -331,7 +320,6 @@ public class StaticMethodsTest extends DefMethTest {
// invokeinterface to static method ==> ICCE
b.test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
b.run();
}
/*
@ -347,9 +335,7 @@ public class StaticMethodsTest extends DefMethTest {
* 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();
public void testDefaultVsConcrete(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.static_().public_().returns(1).build()
@ -367,8 +353,6 @@ public class StaticMethodsTest extends DefMethTest {
}
b.test().callSite(C, C, "m", "()I").returns(2).done();
b.run();
}
/*
@ -385,9 +369,7 @@ public class StaticMethodsTest extends DefMethTest {
* class C implements J {
* }
*/
public void testOverrideStatic() {
TestBuilder b = factory.getBuilder();
public void testOverrideStatic(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.static_().public_().returns(1).build()
@ -400,18 +382,16 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(J).build();
b.test().staticCallSite(I, "m", "()I").returns(1).done()
b.test().staticCallSite(I, "m", "()I").returns(1).done();
.test().callSite(J, C, "m", "()I").returns(2).done()
.test().callSite(C, C, "m", "()I").returns(2).done();
b.test().callSite(J, C, "m", "()I").returns(2).done();
b.test().callSite(C, C, "m", "()I").returns(2).done();
if (factory.getExecutionMode().equals("REFLECTION")) {
b.test().callSite(I, C, "m", "()I").returns(1).done();
} else {
b.test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
b.run();
}
/*
@ -431,9 +411,7 @@ public class StaticMethodsTest extends DefMethTest {
* 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();
public void testOverrideDefault(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.returns(1).build()
@ -446,8 +424,8 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(J).build();
b.test().callSite(I, C, "m", "()I").returns(1).done()
.test().callSite(C, C, "m", "()I").returns(1).done();
b.test().callSite(I, C, "m", "()I").returns(1).done();
b.test().callSite(C, C, "m", "()I").returns(1).done();
if (factory.getExecutionMode().equals("REFLECTION")) {
// Reflection correctly finds the static method defined in J and
@ -456,8 +434,6 @@ public class StaticMethodsTest extends DefMethTest {
} else {
b.test().callSite(J, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
b.run();
}
/*
@ -478,9 +454,7 @@ public class StaticMethodsTest extends DefMethTest {
* 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();
public void testReabstract(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.static_().public_().returns(1).build()
@ -498,10 +472,8 @@ public class StaticMethodsTest extends DefMethTest {
b.test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
b.test().callSite(J, C, "m", "()I").throws_(AbstractMethodError.class).done()
.test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done();
b.run();
b.test().callSite(J, C, "m", "()I").throws_(AbstractMethodError.class).done();
b.test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done();
}
/*
@ -522,9 +494,7 @@ public class StaticMethodsTest extends DefMethTest {
* -mode reflect returns 1
* TEST: C o = new C(); o.m()I throws AME
*/
public void testOverrideAbstract() {
TestBuilder b = factory.getBuilder();
public void testOverrideAbstract(TestBuilder b) {
Interface I = b.intf("I")
.abstractMethod("m", "()I").build()
.build();
@ -536,16 +506,14 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(J).build();
b.test().callSite(I, C, "m", "()I").throws_(AbstractMethodError.class).done()
.test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done();
b.test().callSite(I, C, "m", "()I").throws_(AbstractMethodError.class).done();
b.test().callSite(C, C, "m", "()I").throws_(AbstractMethodError.class).done();
if (factory.getExecutionMode().equals("REFLECTION")) {
b.test().callSite(J, C, "m", "()I").returns(1).done();
} else {
b.test().callSite(J, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
b.run();
}
/*
@ -564,9 +532,7 @@ public class StaticMethodsTest extends DefMethTest {
* 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();
public void testInheritedDefault(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.static_().public_().returns(1).build()
@ -575,16 +541,14 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass B = b.clazz("B").implement(I).build();
ConcreteClass C = b.clazz("C").extend(B).build();
b.test().callSite(B, C, "m","()I").throws_(NoSuchMethodError.class).done()
.test().callSite(C, C, "m","()I").throws_(NoSuchMethodError.class).done();
b.test().callSite(B, C, "m","()I").throws_(NoSuchMethodError.class).done();
b.test().callSite(C, C, "m","()I").throws_(NoSuchMethodError.class).done();
if (factory.getExecutionMode().equals("REFLECTION")) {
b.test().callSite(I, C, "m","()I").returns(1).done();
} else {
b.test().callSite(I, C, "m","()I").throws_(IncompatibleClassChangeError.class).done();
}
b.run();
}
/*
@ -601,9 +565,7 @@ public class StaticMethodsTest extends DefMethTest {
* class C extends B implements I {}
*
*/
public void testDefaultVsConcreteInherited() {
TestBuilder b = factory.getBuilder();
public void testDefaultVsConcreteInherited(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.static_().public_().returns(1).build()
@ -615,18 +577,16 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").extend(B).implement(I).build();
b.test().staticCallSite(I, "m","()I").returns(1).done()
b.test().staticCallSite(I, "m","()I").returns(1).done();
.test().callSite(B, C, "m","()I").returns(2).done()
.test().callSite(C, C, "m","()I").returns(2).done();
b.test().callSite(B, C, "m","()I").returns(2).done();
b.test().callSite(C, C, "m","()I").returns(2).done();
if (factory.getExecutionMode().equals("REFLECTION")) {
b.test().callSite(I, C, "m","()I").returns(1).done();
} else {
b.test().callSite(I, C, "m","()I").throws_(IncompatibleClassChangeError.class).done();
}
b.run();
}
/*
@ -647,9 +607,7 @@ public class StaticMethodsTest extends DefMethTest {
* 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();
public void testDefaultVsStaticConflict(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.static_().public_().returns(1).build()
@ -661,16 +619,14 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(I,J).build();
b.test().callSite(J, C, "m", "()I").returns(2).done()
.test().callSite(C, C, "m", "()I").returns(2).done();
b.test().callSite(J, C, "m", "()I").returns(2).done();
b.test().callSite(C, C, "m", "()I").returns(2).done();
if (factory.getExecutionMode().equals("REFLECTION")) {
b.test().callSite(I, C, "m", "()I").returns(1).done();
} else {
b.test().callSite(I, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
b.run();
}
/*
@ -690,9 +646,7 @@ public class StaticMethodsTest extends DefMethTest {
* -mode reflect returns 2
* TEST: I o = new C(); o.m()I == 1
*/
public void testStaticSuperClassVsDefaultSuperInterface() {
TestBuilder b = factory.getBuilder();
public void testStaticSuperClassVsDefaultSuperInterface(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.public_().returns(1).build()
@ -712,9 +666,8 @@ public class StaticMethodsTest extends DefMethTest {
} else {
b.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
b.run();
}
/*
* testStaticLocalVsDefaultSuperInterface
*
@ -732,9 +685,7 @@ public class StaticMethodsTest extends DefMethTest {
* -mode reflect returns 2
* TEST: I o = new A(); o.m()I == 1
*/
public void testStaticLocalVsDefaultSuperInterface() {
TestBuilder b = factory.getBuilder();
public void testStaticLocalVsDefaultSuperInterface(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.public_().returns(1).build()
@ -757,9 +708,8 @@ public class StaticMethodsTest extends DefMethTest {
b.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
b.test().callSite(A, A, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
b.run();
}
/*
* testConflictingDefaultsandStaticMethod
* @bug 8033150
@ -780,9 +730,7 @@ public class StaticMethodsTest extends DefMethTest {
*
* TEST: C.m(); should call A.m, return value = 3
*/
public void testConflictingDefaultsandStaticMethod() {
TestBuilder b = factory.getBuilder();
public void testConflictingDefaultsandStaticMethod(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I")
.public_().returns(1).build()
@ -800,7 +748,6 @@ public class StaticMethodsTest extends DefMethTest {
ConcreteClass C = b.clazz("C").extend(A).build();
b.test().staticCallSite(C, "m", "()I").returns(3).done()
.run();
b.test().staticCallSite(C, "m", "()I").returns(3).done();
}
}

View File

@ -21,24 +21,43 @@
* questions.
*/
/*
* @test
*
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
* @library /vmTestbase /test/lib
*
* @comment build retransform.jar in current dir
* @run driver vm.runtime.defmeth.shared.BuildJar
*
* @run driver jdk.test.lib.FileInstaller . .
*
* @run main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.StressTest
*/
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 jdk.test.lib.Utils;
import static jdk.internal.org.objectweb.asm.Opcodes.*;
import static vm.runtime.defmeth.shared.DefMethTest.MAX_MAJOR_VER;
import static vm.runtime.defmeth.shared.DefMethTest.MIN_MAJOR_VER;
/*
* Stress test for default methods implementation.
@ -57,11 +76,8 @@ public class StressTest implements Runnable {
@Option(name="seed", default_value="0", description="force deterministic behavior")
private long 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="noredefine", default_value="false", description="skip scenarios w/ class redefinition")
private boolean noRedefine;
@Option(name="ignoreTestFailures", default_value="false", description="ignore failures of the executed tests")
private boolean ignoreTestFailures;
@ -140,23 +156,18 @@ public class StressTest implements Runnable {
}
private void configureTests() {
int[] majorVerValues = new int[52 - minMajorVer + 1];
int[] majorVerValues = new int[MAX_MAJOR_VER - MIN_MAJOR_VER + 1];
for (int i = 0; i< majorVerValues.length; i++) {
majorVerValues[i] = minMajorVer + i;
majorVerValues[i] = MIN_MAJOR_VER + i;
}
int[] flagsValues = new int[] {
0,
ACC_STRICT,
ACC_SYNCHRONIZED,
ACC_STRICT | ACC_SYNCHRONIZED
};
int[] flagsValues = new int[] {0, ACC_SYNCHRONIZED};
boolean[] doRedefineValues;
if (doRedefine) {
doRedefineValues = new boolean[] { true, false};
} else {
if (noRedefine) {
doRedefineValues = new boolean[] { false };
} else {
doRedefineValues = new boolean[] { false, true };
}
// Upper limit for test count
@ -188,7 +199,7 @@ public class StressTest implements Runnable {
}
try {
DefMethTest test = testClass.newInstance();
DefMethTest test = testClass.getDeclaredConstructor().newInstance();
OptionSupport.setup(test, new String[] {
"-execMode", mode.toString(),
@ -199,7 +210,7 @@ public class StressTest implements Runnable {
"-failfast"});
testlist.add(test);
} catch (InstantiationException | IllegalAccessException ex) {
} catch (ReflectiveOperationException ex) {
throw new TestFailure(ex);
}
}

View File

@ -21,13 +21,31 @@
* questions.
*/
/*
* @test
*
* @modules java.base/jdk.internal.org.objectweb.asm:+open java.base/jdk.internal.org.objectweb.asm.util:+open
* @library /vmTestbase /test/lib
*
* @comment build retransform.jar in current dir
* @run 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
*/
package vm.runtime.defmeth;
import nsk.share.test.TestBase;
import java.util.Set;
import vm.runtime.defmeth.shared.DefMethTest;
import vm.runtime.defmeth.shared.annotation.NotApplicableFor;
import vm.runtime.defmeth.shared.data.*;
import vm.runtime.defmeth.shared.builder.TestBuilder;
import static jdk.internal.org.objectweb.asm.Opcodes.ACC_SYNCHRONIZED;
import static vm.runtime.defmeth.shared.ExecutionMode.*;
/*
@ -43,7 +61,6 @@ import static vm.runtime.defmeth.shared.ExecutionMode.*;
* where the interface is a direct supertype of the current class (the current class
* must directly implement <interface-name>).
*
* 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
@ -51,22 +68,26 @@ import static vm.runtime.defmeth.shared.ExecutionMode.*;
*/
public class SuperCallTest extends DefMethTest {
public static void main(String[] args) {
DefMethTest.runTest(SuperCallTest.class,
/* majorVer */ Set.of(MAX_MAJOR_VER),
/* flags */ Set.of(0, ACC_SYNCHRONIZED),
/* redefine */ Set.of(false, true),
/* execMode */ Set.of(DIRECT, REFLECTION, INVOKE_EXACT, INVOKE_GENERIC, INVOKE_WITH_ARGS, INDY));
}
@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.");
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
*
@ -77,9 +98,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C c = new C(); c.m() == 88;
* TEST: I i = new C(); i.m() == 88;
*/
public void testSuperBasic1() {
TestBuilder b = factory.getBuilder();
public void testSuperBasic1(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -92,9 +111,7 @@ public class SuperCallTest extends DefMethTest {
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();
.test().callSite(C, C, "m", "()I").returns(1).done();
}
/*
@ -115,9 +132,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: L l = new D(); l.m() == 1
* TEST: D d = new D(); d.m() == 1
*/
public void testSuperConflictResolution() {
TestBuilder b = factory.getBuilder();
public void testSuperConflictResolution(TestBuilder b) {
Interface K = b.intf("K")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -144,9 +159,7 @@ public class SuperCallTest extends DefMethTest {
.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();
.test().callSite(D, D, "m", "()I").returns(1).done();
}
/*
@ -181,9 +194,7 @@ public class SuperCallTest extends DefMethTest {
* 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();
public void testSuperConflictDiffMethod(TestBuilder b) {
Interface K = b.intf("K")
.defaultMethod("m", "(I)I").returns(1).build()
.build();
@ -218,9 +229,7 @@ public class SuperCallTest extends DefMethTest {
.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();
.test().callSite(D, D, "l", "()I").returns(2).done();
}
/*
@ -238,9 +247,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: I i = new C(); i.m() ==> ICCE
* TEST: C c = new C(); c.m() ==> ICCE
*/
public void testSuperConflict() {
TestBuilder b = factory.getBuilder();
public void testSuperConflict(TestBuilder b) {
Interface K = b.intf("K")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -261,9 +268,7 @@ public class SuperCallTest extends DefMethTest {
.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();
.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
/*
@ -276,9 +281,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C c = new C(); c.m() ==> 1
* TEST: J j = new C(); j.m() ==> 1
*/
public void testSuperDisqual() {
TestBuilder b = factory.getBuilder();
public void testSuperDisqual(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -293,9 +296,7 @@ public class SuperCallTest extends DefMethTest {
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();
.test().callSite(C, C, "m", "()I").returns(1).done();
}
/*
@ -312,9 +313,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C c = new C(); c.m() ==> AME
* TEST: K k = new D(); k.m() ==> NSME
*/
public void testSuperNull() {
TestBuilder b = factory.getBuilder();
public void testSuperNull(TestBuilder b) {
Interface I = b.intf("I")
.abstractMethod("m", "()I").build()
.build();
@ -333,9 +332,7 @@ public class SuperCallTest extends DefMethTest {
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();
.test().callSite(K, D, "m", "()I").throws_(NoSuchMethodError.class).done();
}
/*
@ -351,9 +348,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C c = new C(); c.m(new Object()) == 1;
* TEST: C c = new C(); c.m("") == 1;
*/
public void testSuperGeneric() {
TestBuilder b = factory.getBuilder();
public void testSuperGeneric(TestBuilder b) {
// interface I<T> {
// default int m(T t) { return 1; }
// }
@ -378,9 +373,7 @@ public class SuperCallTest extends DefMethTest {
.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();
.test().callSite(C, C, "m", "(Ljava/lang/String;)I").returns(1).done();
}
/*
@ -392,9 +385,7 @@ public class SuperCallTest extends DefMethTest {
*
* TEST: C c = new C(); c.m("string") == 1
*/
public void testSuperGenericDisqual() {
TestBuilder b = factory.getBuilder();
public void testSuperGenericDisqual(TestBuilder b) {
Interface I = b.intf("I").sig("<T:Ljava/lang/Object;>Ljava/lang/Object;")
.defaultMethod("m", "(Ljava/lang/Object;)I").sig("(TT;)I").returns(1).build()
.build();
@ -415,9 +406,7 @@ public class SuperCallTest extends DefMethTest {
.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();
.test().callSite(C, C, "m", "(Ljava/lang/String;)I").returns(1).done();
}
/*
@ -429,9 +418,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C d = new D(); d.m() == 1
* TEST: D d = new D(); d.m() == 1
*/
public void testSuperNonDefault() {
TestBuilder b = factory.getBuilder();
public void testSuperNonDefault(TestBuilder b) {
ConcreteClass C = b.clazz("C")
.concreteMethod("m", "()I").returns(1).build()
.build();
@ -441,9 +428,7 @@ public class SuperCallTest extends DefMethTest {
.build();
b.test().callSite(C, D, "m", "()I").returns(1).done()
.test().callSite(D, D, "m", "()I").returns(1).done()
.run();
.test().callSite(D, D, "m", "()I").returns(1).done();
}
/*
@ -461,9 +446,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C e = new E(); e.m() == 1
* TEST: E e = new E(); e.m() == 1
*/
public void testSuperNonDefault1() {
TestBuilder b = factory.getBuilder();
public void testSuperNonDefault1(TestBuilder b) {
Interface I = b.intf("I")
.abstractMethod("m", "()I").build()
.build();
@ -486,9 +469,7 @@ public class SuperCallTest extends DefMethTest {
.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();
.test().callSite(E, E, "m", "()I").returns(1).done();
}
/*
@ -507,9 +488,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C e = new E(); e.m() == 2
* TEST: E e = new E(); e.m() == 2
*/
public void testSuperNonDefault2() {
TestBuilder b = factory.getBuilder();
public void testSuperNonDefault2(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -532,9 +511,7 @@ public class SuperCallTest extends DefMethTest {
.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();
.test().callSite(E, E, "m", "()I").returns(2).done();
}
/*
@ -549,9 +526,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C c = new C(); c.q() == 1;
* TEST: C c = new C(); c.r() == 2;
*/
public void testDisambig() {
TestBuilder b = factory.getBuilder();
public void testDisambig(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -567,9 +542,7 @@ public class SuperCallTest extends DefMethTest {
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();
.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
/*
@ -586,9 +559,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C c = new C(); c.q() == 1;
* TEST: C c = new C(); c.r() == 2;
*/
public void testDisambig2() {
TestBuilder b = factory.getBuilder();
public void testDisambig2(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -608,9 +579,7 @@ public class SuperCallTest extends DefMethTest {
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();
.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done();
}
/*
@ -624,9 +593,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C c = new C(); c.m() == 2
* TEST: C c = new C(); c.q() == 1
*/
public void testResolvedShadowed() {
TestBuilder b = factory.getBuilder();
public void testResolvedShadowed(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -643,9 +610,7 @@ public class SuperCallTest extends DefMethTest {
.build();
b.test().callSite(C, C, "m", "()I").returns(2).done()
.test().callSite(C, C, "q", "()I").returns(1).done()
.run();
.test().callSite(C, C, "q", "()I").returns(1).done();
}
/*
@ -659,9 +624,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C c = new C(); c.q() == 1
* TEST: C c = new C(); c.m() == 2
*/
public void testResolvedButSuperClass() {
TestBuilder b = factory.getBuilder();
public void testResolvedButSuperClass(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -678,9 +641,7 @@ public class SuperCallTest extends DefMethTest {
.build();
b.test().callSite(C, C, "q", "()I").returns(1).done()
.test().callSite(C, C, "m", "()I").returns(2).done()
.run();
.test().callSite(C, C, "m", "()I").returns(2).done();
}
/*
@ -695,9 +656,7 @@ public class SuperCallTest extends DefMethTest {
* TEST: C c = new C(); c.m() == ICCE
* TEST: C c = new C(); c.q() == 1
*/
public void testResolved1Caller2NotShadowed() {
TestBuilder b = factory.getBuilder();
public void testResolved1Caller2NotShadowed(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -716,16 +675,14 @@ public class SuperCallTest extends DefMethTest {
.build();
b.test().callSite(C, C, "m", "()I").throws_(IncompatibleClassChangeError.class).done()
.test().callSite(C, C, "q", "()I").returns(1).done()
.run();
.test().callSite(C, C, "q", "()I").returns(1).done();
}
/*
* 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
* 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
@ -746,9 +703,7 @@ public class SuperCallTest extends DefMethTest {
* 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();
public void testSuperInvalidIndirectInterfaceMethodInvokeSpecial(TestBuilder b) {
Interface I = b.intf("I")
.defaultMethod("m", "()I").returns(1).build()
.build();
@ -761,8 +716,6 @@ public class SuperCallTest extends DefMethTest {
ConcreteClass C = b.clazz("C").implement(K).build();
b.test().callSite(K, C, "m", "()I").throws_(VerifyError.class).done()
.run();
b.test().callSite(K, C, "m", "()I").throws_(VerifyError.class).done();
}
}

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 0
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 0
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 0
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 0
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 0
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 0
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2048
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2048
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2048
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2048
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2048
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2048
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 32
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 32
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 32
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 32
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 32
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 32
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2080
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2080
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2080
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2080
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2080
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.AccessibilityFlagsTest
* -ver 52
* -flags 2080
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 0
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 0
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 0
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 0
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 0
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 0
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2048
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2048
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2048
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2048
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2048
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2048
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 32
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 32
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 32
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 32
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 32
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 32
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2080
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2080
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2080
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2080
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2080
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 49
* -flags 2080
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 0
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 0
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 0
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 0
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 0
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 0
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2048
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2048
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2048
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2048
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2048
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2048
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 32
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 32
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 32
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 32
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 32
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 32
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2080
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2080
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2080
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2080
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2080
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.BasicTest
* -ver 52
* -flags 2080
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 0
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 0
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 0
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 0
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 0
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 0
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 2048
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 2048
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 2048
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 2048
* -redefine
* -retransform
* -mode invoke
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 2048
* -mode reflect
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 2048
* -redefine
* -retransform
* -mode reflect
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 32
* -mode direct
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 32
* -redefine
* -retransform
* -mode direct
*/

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm
* -XX:+IgnoreUnrecognizedVMOptions
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 32
* -mode invoke
*/

View File

@ -1,47 +0,0 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @modules java.base/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 main/othervm/native
* -agentlib:redefineClasses
* -javaagent:retransform.jar
* vm.runtime.defmeth.ConflictingDefaultsTest
* -ver 49
* -flags 32
* -redefine
* -retransform
* -mode invoke
*/

Some files were not shown because too many files have changed in this diff Show More