23
24 package jdk.jfr.event.oldobject;
25
26 import java.util.ArrayList;
27 import java.util.List;
28 import java.util.Random;
29
30 import jdk.jfr.Event;
31 import jdk.jfr.Recording;
32 import jdk.jfr.consumer.RecordedClass;
33 import jdk.jfr.consumer.RecordedEvent;
34 import jdk.jfr.consumer.RecordedObject;
35 import jdk.jfr.internal.test.WhiteBox;
36 import jdk.test.lib.jfr.EventNames;
37 import jdk.test.lib.jfr.Events;
38
39 /**
40 * @test
41 * @requires vm.flagless
42 * @requires vm.hasJFR
43 * @library /test/lib /test/jdk
44 * @modules jdk.jfr/jdk.jfr.internal.test
45 * @run main/othervm -XX:TLABSize=2k jdk.jfr.event.oldobject.TestObjectSize
46 */
47 public class TestObjectSize {
48
49 private interface Leak {
50 }
51 private static class Leak1 implements Leak {
52 private long field1;
53 }
54 private static class Leak2 implements Leak {
55 private long field1;
56 private long field2;
57 }
58 private static class Leak3 implements Leak {
59 private long field1;
60 private long field2;
61 private long field3;
62 }
|
23
24 package jdk.jfr.event.oldobject;
25
26 import java.util.ArrayList;
27 import java.util.List;
28 import java.util.Random;
29
30 import jdk.jfr.Event;
31 import jdk.jfr.Recording;
32 import jdk.jfr.consumer.RecordedClass;
33 import jdk.jfr.consumer.RecordedEvent;
34 import jdk.jfr.consumer.RecordedObject;
35 import jdk.jfr.internal.test.WhiteBox;
36 import jdk.test.lib.jfr.EventNames;
37 import jdk.test.lib.jfr.Events;
38
39 /**
40 * @test
41 * @requires vm.flagless
42 * @requires vm.hasJFR
43 * @requires !(vm.opt.final.UseCompactObjectHeaders == true | vm.opt.final.UseShenandoahGC == true)
44 * @library /test/lib /test/jdk
45 * @modules jdk.jfr/jdk.jfr.internal.test
46 * @run main/othervm -XX:TLABSize=2k jdk.jfr.event.oldobject.TestObjectSize
47 */
48 public class TestObjectSize {
49
50 private interface Leak {
51 }
52 private static class Leak1 implements Leak {
53 private long field1;
54 }
55 private static class Leak2 implements Leak {
56 private long field1;
57 private long field2;
58 }
59 private static class Leak3 implements Leak {
60 private long field1;
61 private long field2;
62 private long field3;
63 }
|