1 package runtime.valhalla.valuetypes; 2 3 import jdk.test.lib.Asserts; 4 5 /* 6 * @test 7 * @summary Uninitialized value fields test 8 * @modules jdk.incubator.mvt 9 * @library /test/lib 10 * @compile -XDenableValueTypes Point.java 11 * @run main/othervm -Xint -XX:+EnableValhalla runtime.valhalla.valuetypes.UninitializedValueFieldsTest 12 * @run main/othervm -Xcomp -XX:+EnableValhalla runtime.valhalla.valuetypes.UninitializedValueFieldsTest 13 */ 14 public class UninitializedValueFieldsTest { 15 16 static Point staticPoint; 17 Point instancePoint; 18 19 UninitializedValueFieldsTest() { } 20 21 public static void main(String[] args) { 22 checkUninitializedPoint(UninitializedValueFieldsTest.staticPoint, 0, 0); 23 UninitializedValueFieldsTest.staticPoint = Point.createPoint(456, 678); 24 checkUninitializedPoint(UninitializedValueFieldsTest.staticPoint, 456, 678); 25 UninitializedValueFieldsTest test = new UninitializedValueFieldsTest(); 26 checkUninitializedPoint(test.instancePoint, 0, 0); 27 test.instancePoint = Point.createPoint(123, 345); 28 checkUninitializedPoint(test.instancePoint, 123, 345); 29 } 30 31 static void checkUninitializedPoint(Point p, int x, int y) { 32 Asserts.assertEquals(p.x, x, "invalid x value"); 33 Asserts.assertEquals(p.y, y, "invalid y value"); 34 } 35 }