< prev index next >

test/micro/org/openjdk/bench/java/lang/StringConcat.java

Print this page
rev 54622 : 8222852: Reduce String concat combinator tree shapes by folding constants into prependers
Reviewed-by: shade, plevart
Contributed-by: claes.redestad@oracle.com, peter.levart@gmail.com

*** 76,90 **** --- 76,105 ---- public String concatConstStringConstInt() { return "string" + stringValue + "string" + intValue; } @Benchmark + public String concatMix4String() { + // Investigate "profile pollution" between shared LFs that might eliminate some JIT optimizations + String s1 = "string" + stringValue + stringValue + stringValue + stringValue; + String s2 = "string" + stringValue + "string" + stringValue + stringValue + stringValue; + String s3 = stringValue + stringValue + "string" + stringValue + "string" + stringValue + "string"; + String s4 = "string" + stringValue + "string" + stringValue + "string" + stringValue + "string" + stringValue + "string"; + return s1 + s2 + s3 + s4; + } + + @Benchmark public String concatConst4String() { return "string" + stringValue + stringValue + stringValue + stringValue; } @Benchmark + public String concat4String() { + return stringValue + stringValue + stringValue + stringValue; + } + + @Benchmark public String concatConst2String() { return "string" + stringValue + stringValue; } @Benchmark
*** 96,105 **** --- 111,125 ---- public String concatConst6String() { return "string" + stringValue + stringValue + stringValue + stringValue + stringValue + stringValue; } @Benchmark + public String concat6String() { + return stringValue + stringValue + stringValue + stringValue + stringValue + stringValue; + } + + @Benchmark public String concatConst6Object() { return "string" + objectValue + objectValue + objectValue + objectValue + objectValue + objectValue; } }
< prev index next >