package runtime.valhalla.valuetypes; import jdk.test.lib.Asserts; /* * @test ValueTypeGetField * @summary Value Type get field test * @library /testlibrary / * @run main/othervm -noverify -Xint runtime.valhalla.valuetypes.ValueTypeGetField * @run main/othervm -noverify -Xcomp runtime.valhalla.valuetypes.ValueTypeGetField */ public class ValueTypeGetField { static Point staticPoint; Point myPoint; public static void main(String[] args) { ValueTypeGetField valueTypeGetField = new ValueTypeGetField(); valueTypeGetField.run(); } public void run() { Point p = Point.createPoint(1, 2); fieldTest(p); System.gc(); // check that VTs survive GC fieldTest(p); System.gc(); // check that VTs survive GC } static void fieldTest(Point p) { staticPoint = p; Asserts.assertEquals(staticPoint.x, 1, "invalid staticPoint x value"); Asserts.assertEquals(staticPoint.y, 2, "invalid staticPoint y value"); ValueTypeGetField valueTypeGetField = new ValueTypeGetField(); valueTypeGetField.myPoint = Point.createPoint(5, 6); Asserts.assertEquals(valueTypeGetField.myPoint.x, 5, "invalid myPoint x value"); Asserts.assertEquals(valueTypeGetField.myPoint.y, 6, "invalid myPoint y value"); } }