< prev index next >

hotspot/test/compiler/valhalla/valuetypes/ValueTypeTestBench.java

Print this page

        

@@ -25,38 +25,41 @@
 
 /*
  * @test
  * @library /testlibrary /test/lib /compiler/whitebox /
  * @requires os.simpleArch == "x64"
- * @modules java.base/jdk.experimental.value
+ * @modules java.base/jdk.experimental.bytecode
+ *          java.base/jdk.experimental.value
  *          java.base/jdk.internal.misc:+open
  *          jdk.incubator.mvt
  * @compile -XDenableValueTypes ValueCapableClass1.java ValueCapableClass2.java ValueTypeTestBench.java
  * @run main ClassFileInstaller sun.hotspot.WhiteBox
  * @run main ClassFileInstaller jdk.test.lib.Platform
- * @run main/othervm/timeout=120 -Xbootclasspath/a:. -ea -noverify -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions
+ * @run main/othervm/timeout=120 -Xbootclasspath/a:. -ea -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions
  *                   -XX:+UnlockExperimentalVMOptions -XX:+WhiteBoxAPI -XX:-TieredCompilation -XX:+VerifyAdapterSharing -XX:+VerifyStack
  *                   -XX:+EnableValhalla -XX:+EnableMVT -XX:+ValueTypePassFieldsAsArgs -XX:+ValueTypeReturnedAsFields -XX:+ValueArrayFlatten
  *                   -XX:ValueArrayElemMaxFlatSize=-1 -XX:ValueArrayElemMaxFlatOops=-1
  *                   -Djdk.lang.reflect.DVT=true
  *                   compiler.valhalla.valuetypes.ValueTypeTestBench
- * @run main/othervm/timeout=120 -Xbootclasspath/a:. -ea -noverify -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions
+ * @run main/othervm/timeout=120 -Xbootclasspath/a:. -ea -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions
  *                   -XX:+UnlockExperimentalVMOptions -XX:+WhiteBoxAPI -XX:-TieredCompilation -XX:+VerifyStack
  *                   -XX:+EnableValhalla -XX:+EnableMVT -XX:-ValueTypePassFieldsAsArgs -XX:-ValueTypeReturnedAsFields -XX:-ValueArrayFlatten
  *                   -Djdk.lang.reflect.DVT=true
  *                   compiler.valhalla.valuetypes.ValueTypeTestBench
- * @run main/othervm/timeout=120 -Xbootclasspath/a:. -ea -noverify -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions
+ * @run main/othervm/timeout=120 -Xbootclasspath/a:. -ea -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions
  *                   -XX:+UnlockExperimentalVMOptions -XX:+WhiteBoxAPI -XX:-TieredCompilation -XX:+AlwaysIncrementalInline
  *                   -XX:+EnableValhalla -XX:+EnableMVT -XX:+ValueTypePassFieldsAsArgs -XX:+ValueTypeReturnedAsFields -XX:+ValueArrayFlatten
  *                   -XX:ValueArrayElemMaxFlatSize=-1 -XX:ValueArrayElemMaxFlatOops=-1
  *                   -Djdk.lang.reflect.DVT=true
  *                   compiler.valhalla.valuetypes.ValueTypeTestBench
  */
 
 package compiler.valhalla.valuetypes;
 
 import compiler.whitebox.CompilerWhiteBoxTest;
+import jdk.experimental.bytecode.MacroCodeBuilder.CondKind;
+import jdk.experimental.bytecode.TypeTag;
 import jdk.experimental.value.MethodHandleBuilder;
 import jdk.incubator.mvt.ValueType;
 import jdk.test.lib.Asserts;
 import jdk.test.lib.management.InputArguments;
 import jdk.test.lib.Platform;

@@ -1773,11 +1776,11 @@
                 MethodType.methodType(long.class),
                 CODE -> {
                     CODE.
                     aconst_null().
                     vunbox(ValueType.forClass(ValueCapableClass1.class).valueClass()).
-                    getfield(ValueCapableClass1.class, "t", "J").
+                    getfield(ValueType.forClass(ValueCapableClass1.class).valueClass(), "t", "J").
                     lreturn();
                 }
                 );
     }
 

@@ -1904,16 +1907,17 @@
                 MethodType.methodType(long.class, Object.class, boolean.class),
                 CODE -> {
                     CODE.
                     iload_1().
                     iconst_1().
-                    if_icmpne((short)14).
+                    ifcmp(TypeTag.I, CondKind.NE, "not_equal").
                     aload_0().
                     vunbox(ValueType.forClass(ValueCapableClass1.class).valueClass()).
                     vbox(ValueCapableClass1.class).
                     getfield(ValueCapableClass1.class, "t", "J").
                     lreturn().
+                    label("not_equal").
                     aload_0().
                     vunbox(ValueType.forClass(ValueCapableClass2.class).valueClass()).
                     vbox(ValueCapableClass1.class).
                     getfield(ValueCapableClass1.class, "t", "J").
                     lreturn();
< prev index next >