diff options
Diffstat (limited to 'test/697-checker-string-append/src/Main.java')
-rw-r--r-- | test/697-checker-string-append/src/Main.java | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/697-checker-string-append/src/Main.java b/test/697-checker-string-append/src/Main.java index 4f2fa19bc4..9017433ce1 100644 --- a/test/697-checker-string-append/src/Main.java +++ b/test/697-checker-string-append/src/Main.java @@ -21,6 +21,7 @@ public class Main { testAppendStringAndString(); testMiscelaneous(); testNoArgs(); + testInline(); System.out.println("passed"); } @@ -233,6 +234,24 @@ public class Main { $noinline$appendSLILC("x", 1L, 7, -1L, '\u0131')); } + public static String $inline$testInlineInner(StringBuilder sb, String s, int i) { + return sb.append(s).append(i).toString(); + } + + /// CHECK-START: java.lang.String Main.$noinline$testInlineOuter(java.lang.String, int) instruction_simplifier$after_inlining (before) + /// CHECK-NOT: StringBuilderAppend + + /// CHECK-START: java.lang.String Main.$noinline$testInlineOuter(java.lang.String, int) instruction_simplifier$after_inlining (after) + /// CHECK: StringBuilderAppend + public static String $noinline$testInlineOuter(String s, int i) { + StringBuilder sb = new StringBuilder(); + return $inline$testInlineInner(sb, s, i); + } + + public static void testInline() { + assertEquals("x42", $noinline$testInlineOuter("x", 42)); + } + /// CHECK-START: java.lang.String Main.$noinline$appendNothing() instruction_simplifier (before) /// CHECK-NOT: StringBuilderAppend |