67 private static void inlined1() {}
68
69 private static void inlined2() {}
70 }
71
72
73 public static void main(String[] args) throws Exception {
74 ProcessBuilder pb = ProcessTools.createLimitedTestJavaProcessBuilder(
75 "-XX:-TieredCompilation", "-XX:-UseOnStackReplacement", "-XX:-BackgroundCompilation",
76 "-XX:+PrintCompilation",
77 "-XX:CompileCommand=compileonly,compiler.inlining.LateInlinePrinting$TestLateInlining::test1",
78 "-XX:CompileCommand=compileonly,compiler.inlining.LateInlinePrinting$TestLateInlining::test2",
79 "-XX:CompileCommand=quiet", "-XX:+PrintInlining", "-XX:+AlwaysIncrementalInline",
80 "-XX:CompileCommand=dontinline,compiler.inlining.LateInlinePrinting$TestLateInlining::testFailInline",
81 TestLateInlining.class.getName()
82 );
83
84 OutputAnalyzer analyzer = new OutputAnalyzer(pb.start());
85 analyzer.shouldHaveExitValue(0);
86
87 analyzer.shouldContain("""
88 compiler.inlining.LateInlinePrinting$TestLateInlining::test2 (7 bytes)
89 @ 0 compiler.inlining.LateInlinePrinting$TestLateInlining::inlined1 (1 bytes) inline (hot) late inline succeeded
90 @ 3 compiler.inlining.LateInlinePrinting$TestLateInlining::inlined2 (1 bytes) inline (hot) late inline succeeded
91 """);
92 analyzer.shouldContain("""
93 compiler.inlining.LateInlinePrinting$TestLateInlining::test1 (13 bytes)
94 @ 0 compiler.inlining.LateInlinePrinting$TestLateInlining::test3 (1 bytes) inline (hot) late inline succeeded
95 @ 3 compiler.inlining.LateInlinePrinting$TestLateInlining::testFailInline (1 bytes) failed to inline: disallowed by CompileCommand
96 @ 6 compiler.inlining.LateInlinePrinting$TestLateInlining::testFailInline (1 bytes) failed to inline: disallowed by CompileCommand
97 @ 9 compiler.inlining.LateInlinePrinting$TestLateInlining::test2 (7 bytes) inline (hot) late inline succeeded
98 @ 0 compiler.inlining.LateInlinePrinting$TestLateInlining::inlined1 (1 bytes) inline (hot) late inline succeeded
99 @ 3 compiler.inlining.LateInlinePrinting$TestLateInlining::inlined2 (1 bytes) inline (hot) late inline succeeded
100 """);
101 }
102 }
|
67 private static void inlined1() {}
68
69 private static void inlined2() {}
70 }
71
72
73 public static void main(String[] args) throws Exception {
74 ProcessBuilder pb = ProcessTools.createLimitedTestJavaProcessBuilder(
75 "-XX:-TieredCompilation", "-XX:-UseOnStackReplacement", "-XX:-BackgroundCompilation",
76 "-XX:+PrintCompilation",
77 "-XX:CompileCommand=compileonly,compiler.inlining.LateInlinePrinting$TestLateInlining::test1",
78 "-XX:CompileCommand=compileonly,compiler.inlining.LateInlinePrinting$TestLateInlining::test2",
79 "-XX:CompileCommand=quiet", "-XX:+PrintInlining", "-XX:+AlwaysIncrementalInline",
80 "-XX:CompileCommand=dontinline,compiler.inlining.LateInlinePrinting$TestLateInlining::testFailInline",
81 TestLateInlining.class.getName()
82 );
83
84 OutputAnalyzer analyzer = new OutputAnalyzer(pb.start());
85 analyzer.shouldHaveExitValue(0);
86
87 analyzer.shouldContain("compiler.inlining.LateInlinePrinting$TestLateInlining::test2 (7 bytes)");
88 analyzer.shouldContain("@ 0 compiler.inlining.LateInlinePrinting$TestLateInlining::inlined1 (1 bytes) inline (hot) late inline succeeded");
89 analyzer.shouldContain("@ 3 compiler.inlining.LateInlinePrinting$TestLateInlining::inlined2 (1 bytes) inline (hot) late inline succeeded");
90
91 analyzer.shouldContain("compiler.inlining.LateInlinePrinting$TestLateInlining::test1 (13 bytes)");
92 analyzer.shouldContain("@ 0 compiler.inlining.LateInlinePrinting$TestLateInlining::test3 (1 bytes) inline (hot) late inline succeeded");
93 analyzer.shouldContain("@ 3 compiler.inlining.LateInlinePrinting$TestLateInlining::testFailInline (1 bytes) failed to inline: disallowed by CompileCommand");
94 analyzer.shouldContain("@ 6 compiler.inlining.LateInlinePrinting$TestLateInlining::testFailInline (1 bytes) failed to inline: disallowed by CompileCommand");
95 analyzer.shouldContain("@ 9 compiler.inlining.LateInlinePrinting$TestLateInlining::test2 (7 bytes) inline (hot) late inline succeeded");
96 analyzer.shouldContain("@ 0 compiler.inlining.LateInlinePrinting$TestLateInlining::inlined1 (1 bytes) inline (hot) late inline succeeded");
97 analyzer.shouldContain("@ 3 compiler.inlining.LateInlinePrinting$TestLateInlining::inlined2 (1 bytes) inline (hot) late inline succeeded");
98 }
99 }
|