47 |
47 |
48 OutputAnalyzer output = new OutputAnalyzer(pb.start()); |
48 OutputAnalyzer output = new OutputAnalyzer(pb.start()); |
49 |
49 |
50 output.shouldNotContain("[Redirty Cards"); |
50 output.shouldNotContain("[Redirty Cards"); |
51 output.shouldNotContain("[Code Root Purge"); |
51 output.shouldNotContain("[Code Root Purge"); |
|
52 output.shouldNotContain("[String Dedup Fixup"); |
52 output.shouldNotContain("[Young Free CSet"); |
53 output.shouldNotContain("[Young Free CSet"); |
53 output.shouldNotContain("[Non-Young Free CSet"); |
54 output.shouldNotContain("[Non-Young Free CSet"); |
54 output.shouldHaveExitValue(0); |
55 output.shouldHaveExitValue(0); |
55 |
56 |
56 pb = ProcessTools.createJavaProcessBuilder("-XX:+UseG1GC", |
57 pb = ProcessTools.createJavaProcessBuilder("-XX:+UseG1GC", |
|
58 "-XX:+UseStringDeduplication", |
57 "-Xmx10M", |
59 "-Xmx10M", |
58 "-XX:+PrintGCDetails", |
60 "-XX:+PrintGCDetails", |
59 GCTest.class.getName()); |
61 GCTest.class.getName()); |
60 |
62 |
61 output = new OutputAnalyzer(pb.start()); |
63 output = new OutputAnalyzer(pb.start()); |
62 |
64 |
63 output.shouldContain("[Redirty Cards"); |
65 output.shouldContain("[Redirty Cards"); |
64 output.shouldContain("[Code Root Purge"); |
66 output.shouldContain("[Code Root Purge"); |
|
67 output.shouldContain("[String Dedup Fixup"); |
65 output.shouldNotContain("[Young Free CSet"); |
68 output.shouldNotContain("[Young Free CSet"); |
66 output.shouldNotContain("[Non-Young Free CSet"); |
69 output.shouldNotContain("[Non-Young Free CSet"); |
67 output.shouldHaveExitValue(0); |
70 output.shouldHaveExitValue(0); |
68 |
71 |
69 pb = ProcessTools.createJavaProcessBuilder("-XX:+UseG1GC", |
72 pb = ProcessTools.createJavaProcessBuilder("-XX:+UseG1GC", |
|
73 "-XX:+UseStringDeduplication", |
70 "-Xmx10M", |
74 "-Xmx10M", |
71 "-XX:+PrintGCDetails", |
75 "-XX:+PrintGCDetails", |
72 "-XX:+UnlockExperimentalVMOptions", |
76 "-XX:+UnlockExperimentalVMOptions", |
73 "-XX:G1LogLevel=finest", |
77 "-XX:G1LogLevel=finest", |
74 GCTest.class.getName()); |
78 GCTest.class.getName()); |
75 |
79 |
76 output = new OutputAnalyzer(pb.start()); |
80 output = new OutputAnalyzer(pb.start()); |
77 |
81 |
78 output.shouldContain("[Redirty Cards"); |
82 output.shouldContain("[Redirty Cards"); |
79 output.shouldContain("[Code Root Purge"); |
83 output.shouldContain("[Code Root Purge"); |
|
84 output.shouldContain("[String Dedup Fixup"); |
80 output.shouldContain("[Young Free CSet"); |
85 output.shouldContain("[Young Free CSet"); |
81 output.shouldContain("[Non-Young Free CSet"); |
86 output.shouldContain("[Non-Young Free CSet"); |
82 |
87 |
83 // also check evacuation failure messages once |
88 // also check evacuation failure messages once |
84 output.shouldNotContain("[Evacuation Failure"); |
89 output.shouldNotContain("[Evacuation Failure"); |