Tests: remove LVT tests on old JVM backend

This commit is contained in:
Alexander Udalov
2023-12-07 19:22:00 +01:00
committed by Space Team
parent 5e330acd28
commit 0c77fa1fa4
73 changed files with 150 additions and 900 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ fun box(): String {
return o + k
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:8 box:
// test.kt:6 box:
// test.kt:11 box: o:java.lang.String="O":java.lang.String
+1 -1
View File
@@ -10,7 +10,7 @@ fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:3 box:
// test.kt:4 box:
// test.kt:5 box: a:int=1:int
@@ -14,16 +14,14 @@ fun box() {
Derived(4, 5)
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:13 box:
// test.kt:5 <init>: p:int=3:int
// test.kt:4 <init>:
// test.kt:2 <init>: i:int=1:int
// test.kt:4 <init>:
// test.kt:6 <init>: p:int=3:int
// EXPECTATIONS JVM_IR
// test.kt:7 <init>: p:int=3:int, a:int=2:int
// EXPECTATIONS JVM JVM_IR
// test.kt:13 box:
// test.kt:14 box:
// test.kt:9 <init>: p1:int=4:int, p2:int=5:int
@@ -5,7 +5,7 @@ fun box() {
F("foo")
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:5 box:
// test.kt:2 <init>: a:java.lang.String="foo":java.lang.String
// test.kt:5 box:
+1 -1
View File
@@ -7,7 +7,7 @@ fun box() {
val b = a.copy(b = 3.0)
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:6 box:
// test.kt:3 <init>: a:double=1.0:double, b:double=2.0:double
// test.kt:6 box:
@@ -9,7 +9,7 @@ fun box(): String {
return o + k
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:5 box:
// test.kt:7 box: p:kotlin.Pair=kotlin.Pair
// test.kt:9 box: p:kotlin.Pair=kotlin.Pair, o:java.lang.String="O":java.lang.String, k:java.lang.String="K":java.lang.String
@@ -15,7 +15,7 @@ fun box(): String {
return o + k
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:13 box:
// test.kt:2 <init>: x:java.lang.String="X":java.lang.String, y:java.lang.String="Y":java.lang.String
// test.kt:13 box:
@@ -23,11 +23,7 @@ fun box(): String {
// test.kt:4 component1:
// test.kt:14 box: p:MyPair=MyPair
// test.kt:8 component2:
// EXPECTATIONS JVM
// test.kt:14 box: p:MyPair=MyPair
// EXPECTATIONS JVM_IR
// test.kt:14 box: p:MyPair=MyPair, o:java.lang.String="O":java.lang.String
// EXPECTATIONS JVM JVM_IR
// test.kt:15 box: p:MyPair=MyPair, o:java.lang.String="O":java.lang.String, k:java.lang.String="K":java.lang.String
// EXPECTATIONS JS_IR
@@ -24,7 +24,7 @@ fun box(): String {
return o + k
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:15 box:
// test.kt:4 <init>: x:java.lang.String="X":java.lang.String, y:java.lang.String="Y":java.lang.String
// test.kt:15 box:
@@ -32,11 +32,7 @@ fun box(): String {
// test.kt:6 component1:
// test.kt:18 box: p:MyPair=MyPair
// test.kt:10 component2:
// EXPECTATIONS JVM
// test.kt:20 box: p:MyPair=MyPair
// EXPECTATIONS JVM_IR
// test.kt:20 box: p:MyPair=MyPair, o:java.lang.String="O":java.lang.String
// EXPECTATIONS JVM JVM_IR
// test.kt:24 box: p:MyPair=MyPair, o:java.lang.String="O":java.lang.String, k:java.lang.String="K":java.lang.String
// EXPECTATIONS JS_IR
@@ -17,15 +17,11 @@ fun box(): String {
return o + k
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:6 box:
// test.kt:15 box: p:kotlin.Pair=kotlin.Pair
// test.kt:10 box: p:kotlin.Pair=kotlin.Pair
// EXPECTATIONS JVM
// test.kt:12 box: p:kotlin.Pair=kotlin.Pair
// EXPECTATIONS JVM_IR
// test.kt:12 box: p:kotlin.Pair=kotlin.Pair, o:java.lang.String="O":java.lang.String
// EXPECTATIONS JVM JVM_IR
// test.kt:17 box: p:kotlin.Pair=kotlin.Pair, o:java.lang.String="O":java.lang.String, k:java.lang.String="K":java.lang.String
// EXPECTATIONS JS_IR
@@ -9,7 +9,7 @@ fun box(): String {
return o + k
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:5 box:
// test.kt:7 box: p:kotlin.Triple=kotlin.Triple
// test.kt:9 box: p:kotlin.Triple=kotlin.Triple, o:java.lang.String="O":java.lang.String, k:java.lang.String="K":java.lang.String
@@ -19,15 +19,11 @@ fun box(): String {
return o + k
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:6 box:
// test.kt:17 box: p:kotlin.Triple=kotlin.Triple
// test.kt:12 box: p:kotlin.Triple=kotlin.Triple
// EXPECTATIONS JVM
// test.kt:14 box: p:kotlin.Triple=kotlin.Triple
// EXPECTATIONS JVM_IR
// test.kt:14 box: p:kotlin.Triple=kotlin.Triple, o:java.lang.String="O":java.lang.String
// EXPECTATIONS JVM JVM_IR
// test.kt:19 box: p:kotlin.Triple=kotlin.Triple, o:java.lang.String="O":java.lang.String, k:java.lang.String="K":java.lang.String
// EXPECTATIONS JS_IR
@@ -8,7 +8,7 @@ fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:5 box:
// test.kt:6 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:7 box: map:java.util.Map=java.util.Collections$SingletonMap, a:java.lang.String="1":java.lang.String, b:java.lang.String="23":java.lang.String
@@ -1,5 +1,5 @@
// WITH_STDLIB
// IGNORE_BACKEND: JVM_IR
// IGNORE_BACKEND_K2: JVM_IR
// FILE: test.kt
fun box() {
val map: Map<String, String> = mapOf("1" to "23")
@@ -19,25 +19,15 @@ fun box() {
}
}
// EXPECTATIONS JVM
// EXPECTATIONS JVM_IR
// test.kt:5 box:
// test.kt:15 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:7 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:10 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:12 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:12 box: map:java.util.Map=java.util.Collections$SingletonMap, a:java.lang.String="1":java.lang.String
// test.kt:18 box: map:java.util.Map=java.util.Collections$SingletonMap, a:java.lang.String="1":java.lang.String, b:java.lang.String="23":java.lang.String
// test.kt:7 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:15 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:20 box: map:java.util.Map=java.util.Collections$SingletonMap
// EXPECTATIONS JVM_IR
// test.kt:6 box:
// test.kt:16 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:11 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:13 box: map:java.util.Map=java.util.Collections$SingletonMap, a:java.lang.String="1":java.lang.String
// test.kt:19 box: map:java.util.Map=java.util.Collections$SingletonMap, a:java.lang.String="1":java.lang.String, b:java.lang.String="23":java.lang.String
// test.kt:8 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:21 box: map:java.util.Map=java.util.Collections$SingletonMap
// EXPECTATIONS JS_IR
// test.kt:5 box:
// test.kt:5 box:
@@ -1,4 +1,4 @@
// IGNORE_BACKEND: JVM_IR
// FILE: test.kt
data class A(val x: String, val y: Int)
@@ -8,26 +8,16 @@ fun box() {
foo(A("O", 123)) { (x, y) -> x + y }
}
// EXPECTATIONS JVM
// EXPECTATIONS JVM_IR
// test.kt:8 box:
// test.kt:3 <init>: x:java.lang.String="O":java.lang.String, y:int=123:int
// test.kt:8 box:
// test.kt:5 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:8 invoke: $dstr$x$y:A=A
// test.kt:8 invoke:
// test.kt:5 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:8 box:
// test.kt:9 box:
// EXPECTATIONS JVM_IR
// test.kt:9 box:
// test.kt:4 <init>: x:java.lang.String="O":java.lang.String, y:int=123:int
// test.kt:9 box:
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:9 invoke: x:java.lang.String="O":java.lang.String, y:int=123:int
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:9 box:
// test.kt:10 box:
// EXPECTATIONS JS_IR
// test.kt:8 box:
// test.kt:3 <init>: x="O":kotlin.String, y=123:number
@@ -40,4 +30,4 @@ fun box() {
// test.kt:8 box$lambda: x="O":kotlin.String
// test.kt:1 component2:
// test.kt:8 box$lambda: x="O":kotlin.String, y=123:number
// test.kt:9 box:
// test.kt:9 box:
@@ -1,4 +1,4 @@
// IGNORE_BACKEND: JVM_IR
// FILE: test.kt
class MyPair(val x: String, val y: String) {
operator fun component1(): String {
@@ -16,34 +16,20 @@ fun box() {
foo(MyPair("X", "Y")) { (x, y) -> x + y }
}
// EXPECTATIONS JVM
// EXPECTATIONS JVM_IR
// test.kt:16 box:
// test.kt:3 <init>: x:java.lang.String="X":java.lang.String, y:java.lang.String="Y":java.lang.String
// test.kt:16 box:
// test.kt:13 foo: a:MyPair=MyPair, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:16 invoke: $dstr$x$y:MyPair=MyPair
// test.kt:16 invoke:
// test.kt:5 component1:
// test.kt:16 invoke: $dstr$x$y:MyPair=MyPair
// test.kt:16 invoke:
// test.kt:9 component2:
// test.kt:16 invoke: $dstr$x$y:MyPair=MyPair
// test.kt:16 invoke: x:java.lang.String="O":java.lang.String
// test.kt:13 foo: a:MyPair=MyPair, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:16 box:
// test.kt:17 box:
// EXPECTATIONS JVM_IR
// test.kt:17 box:
// test.kt:4 <init>: x:java.lang.String="X":java.lang.String, y:java.lang.String="Y":java.lang.String
// test.kt:17 box:
// test.kt:14 foo: a:MyPair=MyPair, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:17 invoke:
// test.kt:6 component1:
// test.kt:17 invoke:
// test.kt:10 component2:
// test.kt:17 invoke: x:java.lang.String="O":java.lang.String, y:java.lang.String="K":java.lang.String
// test.kt:14 foo: a:MyPair=MyPair, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:17 box:
// test.kt:18 box:
// EXPECTATIONS JS_IR
// test.kt:16 box:
// test.kt:3 <init>: x="X":kotlin.String, y="Y":kotlin.String
@@ -56,4 +42,4 @@ fun box() {
// test.kt:16 box$lambda: x="O":kotlin.String
// test.kt:9 component2:
// test.kt:16 box$lambda: x="O":kotlin.String, y="K":kotlin.String
// test.kt:17 box:
// test.kt:17 box:
@@ -26,21 +26,6 @@ fun box() {
}
}
// EXPECTATIONS JVM
// test.kt:17 box:
// test.kt:4 <init>: x:java.lang.String="X":java.lang.String, y:java.lang.String="Y":java.lang.String
// test.kt:18 box:
// test.kt:17 box:
// test.kt:14 foo: a:MyPair=MyPair, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:25 invoke: $dstr$x$y:MyPair=MyPair
// test.kt:6 component1:
// test.kt:25 invoke: $dstr$x$y:MyPair=MyPair
// test.kt:10 component2:
// test.kt:25 invoke: $dstr$x$y:MyPair=MyPair
// test.kt:14 foo: a:MyPair=MyPair, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:17 box:
// test.kt:27 box:
// EXPECTATIONS JVM_IR
// test.kt:17 box:
// test.kt:4 <init>: x:java.lang.String="X":java.lang.String, y:java.lang.String="Y":java.lang.String
@@ -20,17 +20,6 @@ fun box() {
return
}
// EXPECTATIONS JVM
// test.kt:9 box:
// test.kt:4 <init>: x:java.lang.String="O":java.lang.String, y:int=123:int
// test.kt:10 box:
// test.kt:9 box:
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:17 invoke: $dstr$x$y:A=A
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:9 box:
// test.kt:20 box:
// EXPECTATIONS JVM_IR
// test.kt:9 box:
// test.kt:4 <init>: x:java.lang.String="O":java.lang.String, y:int=123:int
@@ -8,18 +8,6 @@ fun box() {
foo(A("O", 123), A("K", 877)) { (x, y), (z, w) -> (x + z) + (y + w) }
}
// EXPECTATIONS JVM
// test.kt:8 box:
// test.kt:3 <init>: x:java.lang.String="O":java.lang.String, y:int=123:int
// test.kt:8 box:
// test.kt:3 <init>: x:java.lang.String="K":java.lang.String, y:int=877:int
// test.kt:8 box:
// test.kt:5 foo: a:A=A, b:A=A, block:kotlin.jvm.functions.Function2=TestKt$box$1
// test.kt:8 invoke: $dstr$x$y:A=A, $dstr$z$w:A=A
// test.kt:5 foo: a:A=A, b:A=A, block:kotlin.jvm.functions.Function2=TestKt$box$1
// test.kt:8 box:
// test.kt:9 box:
// EXPECTATIONS JVM_IR
// test.kt:9 box:
// test.kt:4 <init>: x:java.lang.String="O":java.lang.String, y:int=123:int
@@ -52,4 +40,4 @@ fun box() {
// test.kt:8 box$lambda: x="O":kotlin.String, y=123:number, z="K":kotlin.String
// test.kt:1 component2:
// test.kt:8 box$lambda: x="O":kotlin.String, y=123:number, z="K":kotlin.String, w=877:number
// test.kt:9 box:
// test.kt:9 box:
@@ -5,16 +5,9 @@ fun box() {
}("O", "K")
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:5 box:
// test.kt:4 box: a:java.lang.String="O":java.lang.String, b:java.lang.String="K":java.lang.String
// EXPECTATIONS JVM
// test.kt:3 box:
// test.kt:5 box:
// test.kt:4 invoke: a:java.lang.String="O":java.lang.String, b:java.lang.String="K":java.lang.String
// test.kt:5 box:
// EXPECTATIONS JVM JVM_IR
// test.kt:6 box:
// EXPECTATIONS JS_IR
+2 -2
View File
@@ -1,4 +1,4 @@
// IGNORE_BACKEND: JVM
// FILE: test.kt
fun shouldContinue(i: Int) = i < 1
@@ -16,7 +16,7 @@ fun box() {
} while (x < z)
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:6 box:
// test.kt:8 box: x:int=0:int
// test.kt:9 box: x:int=0:int, z:int=2:int
+3 -11
View File
@@ -1,5 +1,5 @@
// WITH_STDLIB
// IGNORE_BACKEND: JVM_IR
// FILE: test.kt
fun box() {
val map: Map<String, String> = mapOf("1" to "23")
@@ -15,20 +15,12 @@ fun box() {
}
}
// EXPECTATIONS JVM
// test.kt:5 box:
// test.kt:11 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:7 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:14 box: map:java.util.Map=java.util.Collections$SingletonMap, e:java.util.Map$Entry=java.util.AbstractMap$SimpleImmutableEntry
// test.kt:7 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:16 box: map:java.util.Map=java.util.Collections$SingletonMap
// EXPECTATIONS JVM_IR
// test.kt:5 box:
// test.kt:11 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:7 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:9 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:14 box: map:java.util.Map=java.util.Collections$SingletonMap, e:java.util.Map$Entry=java.util.AbstractMap$SimpleImmutableEntry
// test.kt:7 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:11 box: map:java.util.Map=java.util.Collections$SingletonMap
// test.kt:16 box: map:java.util.Map=java.util.Collections$SingletonMap
// EXPECTATIONS JS_IR
+1 -13
View File
@@ -37,7 +37,7 @@ fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:31 box:
// test.kt:3 box: $i$f$foo:int=0:int
// test.kt:3 <init>:
@@ -47,11 +47,7 @@ fun box() {
// test.kt:26 baz: param:int=5:int, a:int=1:int, $i$f$inlineCall:int=0:int
// test.kt:27 baz: param:int=5:int, a:int=1:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int
// test.kt:7 baz: param:int=5:int, a:int=1:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int, $i$a$-inlineCall-TestKt$foo$1$baz$1:int=0:int
// EXPECTATIONS JVM_IR
// test.kt:8 baz: param:int=5:int, a:int=1:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int, $i$a$-inlineCall-TestKt$foo$1$baz$1:int=0:int, f:int=6:int
// EXPECTATIONS JVM
// test.kt:8 baz: param:int=5:int, a:int=1:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int, $i$a$-inlineCall-TestKt$foo$1$baz$1:int=0:int
// EXPECTATIONS JVM JVM_IR
// test.kt:27 baz: param:int=5:int, a:int=1:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int
// test.kt:28 baz: param:int=5:int, a:int=1:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int
// test.kt:9 baz: param:int=5:int, a:int=1:int
@@ -63,21 +59,13 @@ fun box() {
// test.kt:16 baz: param:int=6:int
// test.kt:17 baz: param:int=6:int, b:int=2:int
// test.kt:36 baz: param:int=6:int, b:int=2:int, $i$a$-bar-TestKt$box$2:int=0:int
// EXPECTATIONS JVM_IR
// test.kt:37 baz: param:int=6:int, b:int=2:int, $i$a$-bar-TestKt$box$2:int=0:int, d:int=4:int
// EXPECTATIONS JVM
// test.kt:37 baz: param:int=6:int, b:int=2:int, $i$a$-bar-TestKt$box$2:int=0:int
// EXPECTATIONS JVM JVM_IR
// test.kt:17 baz: param:int=6:int, b:int=2:int
// test.kt:18 baz: param:int=6:int, b:int=2:int
// test.kt:26 baz: param:int=6:int, b:int=2:int, $i$f$inlineCall:int=0:int
// test.kt:27 baz: param:int=6:int, b:int=2:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int
// test.kt:19 baz: param:int=6:int, b:int=2:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int, $i$a$-inlineCall-TestKt$bar$1$baz$1:int=0:int
// EXPECTATIONS JVM_IR
// test.kt:20 baz: param:int=6:int, b:int=2:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int, $i$a$-inlineCall-TestKt$bar$1$baz$1:int=0:int, g:int=7:int
// EXPECTATIONS JVM
// test.kt:20 baz: param:int=6:int, b:int=2:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int, $i$a$-inlineCall-TestKt$bar$1$baz$1:int=0:int
// EXPECTATIONS JVM JVM_IR
// test.kt:27 baz: param:int=6:int, b:int=2:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int
// test.kt:28 baz: param:int=6:int, b:int=2:int, $i$f$inlineCall:int=0:int, e$iv:int=5:int
// test.kt:21 baz: param:int=6:int, b:int=2:int
+1 -1
View File
@@ -10,7 +10,7 @@ fun box() {
y++
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:8 box:
// test.kt:2 <init>:
// test.kt:8 box:
+1 -1
View File
@@ -10,7 +10,7 @@ fun box() {
C().foo(4)
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:10 box:
// test.kt:4 <init>:
// test.kt:10 box:
+1 -5
View File
@@ -26,7 +26,7 @@ fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:20 box:
// test.kt:3 box: $i$f$foo:int=0:int
// test.kt:3 <init>:
@@ -41,11 +41,7 @@ fun box() {
// test.kt:13 baz: param:int=6:int
// test.kt:14 baz: param:int=6:int, b:int=2:int
// test.kt:25 baz: param:int=6:int, b:int=2:int, $i$a$-bar-TestKt$box$2:int=0:int
// EXPECTATIONS JVM_IR
// test.kt:26 baz: param:int=6:int, b:int=2:int, $i$a$-bar-TestKt$box$2:int=0:int, d:int=4:int
// EXPECTATIONS JVM
// test.kt:26 baz: param:int=6:int, b:int=2:int, $i$a$-bar-TestKt$box$2:int=0:int
// EXPECTATIONS JVM JVM_IR
// test.kt:14 baz: param:int=6:int, b:int=2:int
// test.kt:15 baz: param:int=6:int, b:int=2:int
// test.kt:17 box: $i$f$bar:int=0:int
@@ -22,13 +22,11 @@ fun box() {
foo.start()
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:21 box:
// test.kt:3 <init>:
// test.kt:4 <init>:
// EXPECTATIONS JVM_IR
// test.kt:3 <init>:
// EXPECTATIONS JVM JVM_IR
// test.kt:21 box:
// test.kt:22 box: foo:Foo=Foo
// test.kt:13 start:
+1 -27
View File
@@ -13,38 +13,12 @@ fun box() {
foo()
}
// Local functions are compiled to private static functions on the class
// containing the local funtion. This has a number of consequences observable
// from a debugging perspective, for this test specifically:
// - local functions do not figure in the LVT of the outer function, as they
// are not instantiated.
// - the _declaration_ of the local function does not figure in the byte code
// of the outer function and hence, has no line number
// - captures are treated differently, according to the implementation
// strategy: on the IR, captures are passed as arguments to the static
// function, on the old backend, they are added to fields on the lambda
// object. Hence, for debugging purposes, captures are "just"
// variables local to the function, and hence need no name mangling to
// properly figure in the debugger.
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:13 box:
// test.kt:5 foo:
// EXPECTATIONS JVM
// test.kt:6 foo: x:int=1:int
// test.kt:9 foo: x:int=1:int, $fun$bar$1:TestKt$foo$1=TestKt$foo$1
// EXPECTATIONS JVM_IR
// test.kt:9 foo: x:int=1:int
// EXPECTATIONS JVM
// test.kt:7 invoke:
// test.kt:8 invoke: y:int=1:int
// EXPECTATIONS JVM_IR
// test.kt:7 foo$bar: x:int=1:int
// test.kt:8 foo$bar: x:int=1:int, y:int=1:int
// EXPECTATIONS JVM
// test.kt:10 foo: x:int=1:int, $fun$bar$1:TestKt$foo$1=TestKt$foo$1
// test.kt:14 box:
// EXPECTATIONS JVM_IR
// test.kt:10 foo: x:int=1:int
// test.kt:14 box:
+1 -15
View File
@@ -10,21 +10,7 @@ fun box() {
foo()
}
// Local functions are compiled to private static functions on the class
// containing the local funtion. This has a number of consequences observable
// from a debugging perspective, for this test specically:
// - local functions do not figure in the LVT of the outer function, as they
// are not instantiated.
// - the _declaration_ of the local function does not figure in the byte code
// of the outer function and hence, has no line number
// EXPECTATIONS JVM
// test.kt:10 box:
// test.kt:5 foo:
// test.kt:7 foo: $fun$bar$1:TestKt$foo$1=TestKt$foo$1
// test.kt:11 box:
// EXPECTATIONS JVM_IR JS_IR
// EXPECTATIONS
// test.kt:10 box:
// test.kt:7 foo:
// test.kt:11 box:
@@ -9,7 +9,7 @@ fun box() {
x.Bar()
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:8 box:
// test.kt:2 <init>:
// test.kt:8 box:
@@ -10,7 +10,7 @@ fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:8 box:
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:9 invoke: $this$blockFun:java.lang.String="OK":java.lang.String
@@ -10,7 +10,7 @@ fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:8 box:
// test.kt:4 foo: block:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:9 invoke: $this$foo:long=1:long
@@ -7,7 +7,7 @@ fun box() {
"OK".test()
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:7 box:
// test.kt:4 test: $this$test:java.lang.String="OK":java.lang.String
// test.kt:8 box:
@@ -7,7 +7,7 @@ fun box() {
"OK".foo(42)
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:7 box:
// test.kt:4 foo: $this$foo:java.lang.String="OK":java.lang.String, a:int=42:int
// test.kt:8 box:
@@ -10,7 +10,7 @@ fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:8 box:
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:9 invoke: $this$blockFun:java.lang.String="OK":java.lang.String
@@ -10,7 +10,7 @@ fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:8 box:
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:9 invoke: $this$label:java.lang.String="OK":java.lang.String
@@ -10,7 +10,7 @@ fun box() {
})
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:8 box:
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
// test.kt:9 invoke: $this$blockFun:java.lang.String="OK":java.lang.String
@@ -1,5 +1,5 @@
// Code generation problem with JVM backend.
// IGNORE_BACKEND: JVM
// FILE: test.kt
class A {
suspend fun foo() {}
@@ -9,7 +9,7 @@ suspend fun box() {
A().foo()
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:9 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// test.kt:4 <init>:
// test.kt:9 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
@@ -1,5 +1,5 @@
// Code generation problem with JVM backend.
// IGNORE_BACKEND: JVM
// FILE: test.kt
class A {
suspend fun foo() {}
@@ -14,7 +14,7 @@ suspend fun box() {
A().foo1(42)
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:14 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// test.kt:4 <init>:
// test.kt:14 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
@@ -1,10 +1,10 @@
// Code generation problem with JVM backend.
// IGNORE_BACKEND: JVM
// FILE: test.kt
suspend fun box() {}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:4 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// EXPECTATIONS JS_IR
@@ -1,5 +1,5 @@
// Code generation problem with JVM backend.
// IGNORE_BACKEND: JVM
// FILE: test.kt
class A
@@ -10,7 +10,7 @@ suspend fun box() {
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:9 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// test.kt:4 <init>:
// test.kt:9 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
@@ -1,5 +1,5 @@
// Code generation problem with JVM backend.
// IGNORE_BACKEND: JVM
// FILE: test.kt
suspend fun foo() {}
suspend fun foo1(l: Long) {
@@ -12,7 +12,7 @@ suspend fun box() {
foo1(42)
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:12 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// test.kt:5 foo1:
// test.kt:6 foo1: $continuation:kotlin.coroutines.Continuation=TestKt$foo1$1, $result:java.lang.Object=null, l:long=42:long
@@ -1,5 +1,5 @@
// Code generation problem with JVM backend.
// IGNORE_BACKEND: JVM
// FILE: test.kt
class A
@@ -14,9 +14,7 @@ suspend fun box() {
A().foo1(42)
}
// The lambda object constructor has a local variables table on the IR backend.
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:14 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// test.kt:4 <init>:
// test.kt:14 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
@@ -18,7 +18,7 @@ suspend fun box() {
hasLocal()
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:10 box:
// test.kt:12 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null
// test.kt:8 h: $completion:kotlin.coroutines.Continuation=TestKt$box$1
@@ -1,5 +1,5 @@
// The JVM backend does not have `x` visible in the locals table for the for loop at all.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -20,7 +20,7 @@ suspend fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:10 box:
// test.kt:12 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null
// test.kt:6 h: $completion:kotlin.coroutines.Continuation=TestKt$box$1
+5 -9
View File
@@ -29,14 +29,10 @@ suspend fun box() {
// FIXME(JS_IR): KT-54657
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:26 box:
// test.kt:27 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null
// test.kt:20 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$suspendBar:int=0:int
// EXPECTATIONS JVM
// test.kt:20 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$suspendBar:int=0:int
// test.kt:15 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$suspendBar:int=0:int, $this$extensionFun$iv$iv:AtomicInt=AtomicInt, $i$f$extensionFun:int=0:int
// EXPECTATIONS JVM JVM_IR
// test.kt:15 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$suspendBar:int=0:int, $this$extensionFun$iv$iv:AtomicInt=AtomicInt, $i$f$extensionFun:int=0:int
// test.kt:16 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$suspendBar:int=0:int, $this$extensionFun$iv$iv:AtomicInt=AtomicInt, $i$f$extensionFun:int=0:int
// test.kt:7 getValue:
@@ -45,10 +41,10 @@ suspend fun box() {
// test.kt:21 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$suspendBar:int=0:int
// test.kt:22 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$suspendBar:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$suspendBar$2$iv:int=0:int
// EXPECTATIONS ClassicFrontend JVM JVM_IR
// EXPECTATIONS ClassicFrontend JVM_IR
// test.kt:23 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$suspendBar:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$suspendBar$2$iv:int=0:int
// EXPECTATIONS ClassicFrontend FIR JVM JVM_IR
// EXPECTATIONS ClassicFrontend FIR JVM_IR
// test.kt:21 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$suspendBar:int=0:int
// test.kt:24 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$suspendBar:int=0:int
// test.kt:27 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null
@@ -66,7 +62,7 @@ suspend fun box() {
// test.kt:15 doResume:
// test.kt:12 <get-a>$accessor$1gle43a:
// test.kt:12 <get-a>:
// test.kt:38 doResume:
// test.kt:38 doResume:
// test.kt:37 doResume:
// test.kt:37 doResume:
// test.kt:27 doResume:
// test.kt:28 doResume: a=Unit
@@ -30,7 +30,7 @@ suspend fun box() {
val a = baz()
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:29 box:
// test.kt:30 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null
// test.kt:26 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int
@@ -45,17 +45,13 @@ suspend fun box() {
// test.kt:13 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv:int=0:int, $i$f$bar:int=0:int, c$iv$iv$iv:int=1:int, $i$a$-bar-TestKt$foo$2$1$iv$iv:int=0:int, b$iv$iv:int=2:int
// test.kt:7 id: obj:java.lang.Object=java.lang.Integer
// test.kt:13 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv:int=0:int, $i$f$bar:int=0:int, c$iv$iv$iv:int=1:int, $i$a$-bar-TestKt$foo$2$1$iv$iv:int=0:int, b$iv$iv:int=2:int
// EXPECTATIONS JVM_IR
// test.kt:14 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv:int=0:int, $i$f$bar:int=0:int, c$iv$iv$iv:int=1:int, $i$a$-bar-TestKt$foo$2$1$iv$iv:int=0:int, b$iv$iv:int=2:int
// EXPECTATIONS JVM
// test.kt:14 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv:int=0:int, $i$f$bar:int=0:int, c$iv$iv$iv:int=1:int, $i$a$-bar-TestKt$foo$2$1$iv$iv:int=0:int
// EXPECTATIONS JVM JVM_IR
// test.kt:22 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv:int=0:int, $i$f$bar:int=0:int, c$iv$iv$iv:int=1:int
// test.kt:23 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv:int=0:int, $i$f$bar:int=0:int, c$iv$iv$iv:int=1:int
// test.kt:15 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv:int=0:int
// EXPECTATIONS ClassicFrontend JVM JVM_IR
// EXPECTATIONS ClassicFrontend JVM_IR
// test.kt:16 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv:int=0:int
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:10 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$foo:int=0:int
// test.kt:17 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$foo:int=0:int
// test.kt:27 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int
@@ -69,7 +65,7 @@ suspend fun box() {
// test.kt:12 doResume: c=1:number
// test.kt:13 doResume: c=1:number, b=2:number
// test.kt:7 id: obj=2:number
// test.kt:38 doResume: c=1:number, b=2:number
// test.kt:38 doResume: c=1:number, b=2:number
// test.kt:39 doResume: c=1:number, b=2:number
// test.kt:39 doResume: c=1:number, b=2:number
// test.kt:30 doResume: c=1:number, b=2:number
// test.kt:31 doResume: c=1:number, b=2:number, a=Unit
@@ -22,16 +22,16 @@ suspend fun box() {
val a = baz()
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:21 box:
// test.kt:22 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null
// test.kt:18 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int
// test.kt:14 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int
// test.kt:8 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int
// test.kt:9 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv$iv:int=0:int
// EXPECTATIONS ClassicFrontend JVM JVM_IR
// EXPECTATIONS ClassicFrontend JVM_IR
// test.kt:10 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv$iv:int=0:int
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:8 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int
// test.kt:11 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int
// test.kt:15 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int
@@ -36,7 +36,7 @@ suspend fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:32 box:
// test.kt:33 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null
// test.kt:27 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int
@@ -63,22 +63,13 @@ suspend fun box() {
// test.kt:35 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv$iv:int=0:int, b$iv$iv$iv:int=2:int, $i$a$-baz-TestKt$box$result$1:int=0:int, e:int=5:int
// test.kt:7 id: obj:java.lang.Object=java.lang.Integer
// test.kt:35 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv$iv:int=0:int, b$iv$iv$iv:int=2:int, $i$a$-baz-TestKt$box$result$1:int=0:int, e:int=5:int
// EXPECTATIONS JVM_IR
// test.kt:36 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv$iv:int=0:int, b$iv$iv$iv:int=2:int, $i$a$-baz-TestKt$box$result$1:int=0:int, e:int=5:int
// EXPECTATIONS JVM
// test.kt:36 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv$iv:int=0:int, b$iv$iv$iv:int=2:int, $i$a$-baz-TestKt$box$result$1:int=0:int
// EXPECTATIONS JVM JVM_IR
// test.kt:15 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv$iv:int=0:int, b$iv$iv$iv:int=2:int
// test.kt:16 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv$iv:int=0:int, b$iv$iv$iv:int=2:int
// EXPECTATIONS ClassicFrontend JVM_IR
// test.kt:17 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv$iv:int=0:int, b$iv$iv$iv:int=2:int
// EXPECTATIONS FIR JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:12 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int
// EXPECTATIONS JVM
// test.kt:17 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int, $i$a$-suspendCoroutineUninterceptedOrReturn-TestKt$foo$2$iv$iv$iv:int=0:int
// EXPECTATIONS ClassicFrontend JVM JVM_IR
// test.kt:12 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int
// EXPECTATIONS JVM JVM_IR
// test.kt:18 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int, $i$f$foo:int=0:int
// test.kt:24 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int, $i$f$bar:int=0:int
// test.kt:30 box: $continuation:kotlin.coroutines.Continuation=TestKt$box$1, $result:java.lang.Object=null, $i$f$baz:int=0:int
+1 -1
View File
@@ -5,7 +5,7 @@ suspend fun box() {
var x = 1
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:5 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// test.kt:6 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1, x:int=1:int
@@ -13,29 +13,17 @@ suspend fun box() = foo(A()) { (x_param, _, y_param) ->
x_param + y_param
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:12 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// test.kt:4 <init>:
// test.kt:12 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// test.kt:10 foo: a:A=A, block:kotlin.jvm.functions.Function2=TestKt$box$2, $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// test.kt:5 component1:
// EXPECTATIONS JVM
// test.kt:12 invokeSuspend: $result:java.lang.Object=kotlin.Unit, $dstr$x_param$_u24__u24$y_param:A=A
// EXPECTATIONS JVM_IR
// test.kt:12 invokeSuspend: $result:java.lang.Object=kotlin.Unit
// EXPECTATIONS JVM JVM_IR
// test.kt:7 component3:
// EXPECTATIONS JVM_IR
// test.kt:12 invokeSuspend: $result:java.lang.Object=kotlin.Unit, x_param:java.lang.String="O":java.lang.String
// test.kt:13 invokeSuspend: $result:java.lang.Object=kotlin.Unit, x_param:java.lang.String="O":java.lang.String, y_param:java.lang.String="K":java.lang.String
// EXPECTATIONS JVM
// test.kt:12 invokeSuspend: $result:java.lang.Object=kotlin.Unit, $dstr$x_param$_u24__u24$y_param:A=A
// test.kt:13 invokeSuspend: $result:java.lang.Object=kotlin.Unit, $dstr$x_param$_u24__u24$y_param:A=A, x_param:java.lang.String="O":java.lang.String, y_param:java.lang.String="K":java.lang.String
// EXPECTATIONS JVM_IR
// test.kt:-1 invoke: p1:A=A, p2:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// EXPECTATIONS JVM
// test.kt:-1 invoke:
// EXPECTATIONS JVM JVM_IR
// test.kt:10 foo: a:A=A, block:kotlin.jvm.functions.Function2=TestKt$box$2, $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
// test.kt:14 box: $completion:kotlin.coroutines.Continuation=Generated_Box_MainKt$main$1
+3 -3
View File
@@ -1,5 +1,5 @@
// The old backend has the local y covering the finally block as well.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -18,7 +18,7 @@ fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:7 box:
// test.kt:8 box: result:java.lang.String="":java.lang.String
// test.kt:9 box: result:java.lang.String="":java.lang.String, x:java.lang.String="A":java.lang.String
+3 -3
View File
@@ -1,5 +1,5 @@
// The local variables `y` and `i` are visible in the finally block with old backend.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -36,7 +36,7 @@ fun box() {
val localX = x
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:35 box:
// test.kt:20 compute:
// test.kt:21 compute:
+3 -3
View File
@@ -1,5 +1,5 @@
// The local variables `z` and `y` are visible in the finally block with old backend.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -23,7 +23,7 @@ fun box(): String {
return "FAIL"
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:7 box:
// test.kt:8 box:
// test.kt:9 box: i:int=0:int
+3 -3
View File
@@ -1,5 +1,5 @@
// The local variables `z` and `y` are visible in the finally block with old backend.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -23,7 +23,7 @@ fun box(): String {
return "FAIL"
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:7 box:
// test.kt:8 box:
// test.kt:9 box: i:int=0:int
+3 -3
View File
@@ -1,5 +1,5 @@
// The local variables `y` and `i` are visible in finally blocks with old backend.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -22,7 +22,7 @@ fun box(): String {
return "FAIL3"
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:7 box:
// test.kt:8 box:
// test.kt:9 box: i:int=0:int
+1 -1
View File
@@ -16,7 +16,7 @@ fun box(): String {
return "FAIL"
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:4 box:
// test.kt:5 box:
// test.kt:6 box: i:int=0:int
+1 -5
View File
@@ -16,18 +16,14 @@ fun box(): String {
return "FAIL"
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:4 box:
// test.kt:5 box:
// test.kt:6 box: i:int=0:int
// test.kt:7 box: i:int=0:int
// test.kt:8 box: i:int=0:int, x:java.lang.String="x":java.lang.String
// test.kt:10 box: i:int=0:int
// EXPECTATIONS JVM
// test.kt:5 box: i:int=0:int
// EXPECTATIONS JVM_IR
// test.kt:5 box: i:int=0:int
// EXPECTATIONS JVM JVM_IR
// test.kt:14 box:
// EXPECTATIONS JS_IR
+3 -3
View File
@@ -1,5 +1,5 @@
// The local `i` is visible in the finally block with old backend.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
fun box(): String {
@@ -18,7 +18,7 @@ fun box(): String {
return "FAIL2"
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:6 box:
// test.kt:7 box:
// test.kt:8 box: i:int=0:int
+4 -4
View File
@@ -1,6 +1,6 @@
// IGNORE_BACKEND: JVM
// The old backend steps on line 4, 5, 9, and 8. No step on the throw, and a step on the end
// brace of the finally before going into the actual finally code.
// FILE: test.kt
@@ -14,7 +14,7 @@ fun box(): String {
return "FAIL"
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:8 box:
// test.kt:9 box:
// test.kt:10 box: x:java.lang.String="x":java.lang.String
+3 -3
View File
@@ -1,5 +1,5 @@
// The old backend has the local y covering the finally block as well.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
fun box() {
@@ -17,7 +17,7 @@ fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:6 box:
// test.kt:7 box: result:java.lang.String="":java.lang.String
// test.kt:8 box: result:java.lang.String="":java.lang.String, x:java.lang.String="A":java.lang.String
+3 -3
View File
@@ -1,5 +1,5 @@
// The old backend has the local y covering the finally block as well.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -23,7 +23,7 @@ fun box() {
compute()
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:23 box:
// test.kt:7 compute:
// test.kt:8 compute: result:java.lang.String="":java.lang.String
+3 -3
View File
@@ -1,5 +1,5 @@
// The old backend gets the local variables for finally blocks wrong.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -29,7 +29,7 @@ fun box() {
compute()
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:29 box:
// test.kt:7 compute:
// test.kt:8 compute: result:java.lang.String="":java.lang.String
+3 -3
View File
@@ -1,5 +1,5 @@
// JVM backend has the `a` local covering the finally block. It shouldn't.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -29,7 +29,7 @@ fun box() {
val localX = x
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:28 box:
// test.kt:13 compute:
// test.kt:14 compute:
+2 -2
View File
@@ -1,5 +1,5 @@
// IGNORE_INLINER: IR
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -43,7 +43,7 @@ fun box() {
val localX = x
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:42 box:
// test.kt:27 compute:
// test.kt:28 compute:
+1 -1
View File
@@ -31,7 +31,7 @@ fun box() {
val localX = x
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:30 box:
// test.kt:17 compute:
// test.kt:18 compute:
+3 -3
View File
@@ -1,5 +1,5 @@
// The old backend has `y` and `j` visible on the finally block.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -33,7 +33,7 @@ fun box() {
val localX = x
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:32 box:
// test.kt:13 compute:
// test.kt:14 compute:
+3 -3
View File
@@ -1,5 +1,5 @@
// The old backend has `y` and `i` visible on the finally block.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -35,7 +35,7 @@ fun box() {
val localX = x
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:34 box:
// test.kt:20 compute:
// test.kt:21 compute:
+3 -3
View File
@@ -1,5 +1,5 @@
// The local variables in the try and finally blocks are not removed for the finally block with the old backend.
// IGNORE_BACKEND: JVM
// WITH_STDLIB
// FILE: test.kt
@@ -38,7 +38,7 @@ fun box() {
val localX = x
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:37 box:
// test.kt:13 compute:
// test.kt:14 compute:
+1 -20
View File
@@ -23,41 +23,22 @@ fun box() {
}
}
// EXPECTATIONS JVM JVM_IR
// EXPECTATIONS JVM_IR
// test.kt:12 box:
// test.kt:4 <init>: x:double=1.0:double, y:java.lang.String="":java.lang.String, z:char=0:char
// test.kt:12 box:
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function3=TestKt$box$1
// EXPECTATIONS JVM_IR
// test.kt:13 invoke: w:int=1:int
// test.kt:15 invoke: w:int=1:int, x:double=1.0:double, y:char=0:char
// EXPECTATIONS JVM
// test.kt:15 invoke: $dstr$x$_u24__u24$y:A=A, $noName_1:java.lang.String="":java.lang.String, w:int=1:int
// EXPECTATIONS JVM JVM_IR
// test.kt:4 <init>: x:double=1.0:double, y:java.lang.String="":java.lang.String, z:char=0:char
// EXPECTATIONS JVM
// test.kt:15 invoke: $dstr$x$_u24__u24$y:A=A, $noName_1:java.lang.String="":java.lang.String, w:int=1:int, x:double=1.0:double, y:char=0:char
// test.kt:16 invoke: $dstr$x$_u24__u24$y:A=A, $noName_1:java.lang.String="":java.lang.String, w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char
// EXPECTATIONS JVM_IR
// test.kt:15 invoke: w:int=1:int, x:double=1.0:double, y:char=0:char
// test.kt:16 invoke: w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char
// EXPECTATIONS JVM JVM_IR
// test.kt:4 <init>: x:double=1.0:double, y:java.lang.String="":java.lang.String, z:char=0:char
// EXPECTATIONS JVM
// test.kt:16 invoke: $dstr$x$_u24__u24$y:A=A, $noName_1:java.lang.String="":java.lang.String, w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char
// test.kt:18 invoke: $dstr$x$_u24__u24$y:A=A, $noName_1:java.lang.String="":java.lang.String, w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char, _:java.lang.String="":java.lang.String, d:char=0:char
// EXPECTATIONS JVM_IR
// test.kt:16 invoke: w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char
// test.kt:18 invoke: w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char, _:java.lang.String="":java.lang.String, d:char=0:char
// EXPECTATIONS JVM JVM_IR
// test.kt:8 getArrayOfA:
// EXPECTATIONS JVM
// test.kt:18 invoke: $dstr$x$_u24__u24$y:A=A, $noName_1:java.lang.String="":java.lang.String, w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char, _:java.lang.String="":java.lang.String, d:char=0:char
// test.kt:22 invoke: $dstr$x$_u24__u24$y:A=A, $noName_1:java.lang.String="":java.lang.String, w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char, _:java.lang.String="":java.lang.String, d:char=0:char
// EXPECTATIONS JVM_IR
// test.kt:18 invoke: w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char, _:java.lang.String="":java.lang.String, d:char=0:char
// test.kt:22 invoke: w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char, _:java.lang.String="":java.lang.String, d:char=0:char
// EXPECTATIONS JVM JVM_IR
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function3=TestKt$box$1
// test.kt:12 box:
// test.kt:24 box: