Fix bytecode text tests for language version 1.4
New null check assertions are generated a bit more efficiently, with a call to `checkNotNull` instead of IFNONNULL+jump.
This commit is contained in:
@@ -16,13 +16,12 @@ fun box() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 0 IFNULL
|
// 0 IFNULL
|
||||||
// 0 checkNotNull
|
// 0 IFNONULL
|
||||||
|
// 0 throwNpe
|
||||||
// 0 ATHROW
|
// 0 ATHROW
|
||||||
|
|
||||||
// JVM_TEMPLATES:
|
// JVM_TEMPLATES:
|
||||||
// 1 IFNONNULL
|
// 1 checkNotNull \(Ljava/lang/Object;\)V
|
||||||
// 1 throwNpe
|
|
||||||
|
|
||||||
// JVM_IR_TEMPLATES:
|
// JVM_IR_TEMPLATES:
|
||||||
// 0 IFNONULL
|
// 0 checkNotNull \(Ljava/lang/Object;\)V
|
||||||
// 0 throwNpe
|
|
||||||
|
|||||||
+3
-3
@@ -16,7 +16,7 @@ fun box(u: Int) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 0 IFNULL
|
// 0 IFNULL
|
||||||
// 1 IFNONNULL
|
// 0 IFNONNULL
|
||||||
// 1 throwNpe
|
// 0 throwNpe
|
||||||
// 0 ATHROW
|
// 0 ATHROW
|
||||||
// 0 checkNotNull
|
// 1 checkNotNull \(Ljava/lang/Object;\)V
|
||||||
|
|||||||
Vendored
+3
-8
@@ -13,12 +13,7 @@ fun box() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 0 IFNULL
|
// 0 IFNULL
|
||||||
// 0 ATHROW
|
|
||||||
// 0 checkNotNull
|
|
||||||
// 1 throwNpe
|
|
||||||
|
|
||||||
// JVM_TEMPLATES:
|
|
||||||
// 1 IFNONNULL
|
|
||||||
|
|
||||||
// JVM_IR_TEMPLATES:
|
|
||||||
// 0 IFNONNULL
|
// 0 IFNONNULL
|
||||||
|
// 0 ATHROW
|
||||||
|
// 1 checkNotNull \(Ljava/lang/Object;\)V
|
||||||
|
// 0 throwNpe
|
||||||
|
|||||||
+3
-3
@@ -13,7 +13,7 @@ fun box(u: Int) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 0 IFNULL
|
// 0 IFNULL
|
||||||
// 1 IFNONNULL
|
// 0 IFNONNULL
|
||||||
// 1 throwNpe
|
// 0 throwNpe
|
||||||
|
// 1 checkNotNull \(Ljava/lang/Object;\)V
|
||||||
// 0 ATHROW
|
// 0 ATHROW
|
||||||
// 0 checkNotNull
|
|
||||||
|
|||||||
Vendored
+2
-2
@@ -18,5 +18,5 @@ fun asNullableReference(c: AsNonNullReference?) {}
|
|||||||
// 6 checkNotNullParameter
|
// 6 checkNotNullParameter
|
||||||
|
|
||||||
// JVM_IR_TEMPLATES
|
// JVM_IR_TEMPLATES
|
||||||
// 4 checkParameterIsNotNull
|
// 0 checkParameterIsNotNull
|
||||||
// 0 checkNotNullParameter
|
// 4 checkNotNullParameter
|
||||||
|
|||||||
@@ -2,4 +2,4 @@ val a : Int? = 10
|
|||||||
|
|
||||||
fun foo() = a!!.toString()
|
fun foo() = a!!.toString()
|
||||||
|
|
||||||
// 1 IFNONNULL
|
// 1 checkNotNull \(Ljava/lang/Object;\)V
|
||||||
|
|||||||
@@ -6,5 +6,5 @@ fun test3() {
|
|||||||
val p = 1
|
val p = 1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 2 IFNONNULL
|
// 2 checkNotNull \(Ljava/lang/Object;\)V
|
||||||
// 3 IF
|
// 1 IF_ICMP
|
||||||
|
|||||||
+2
-2
@@ -6,5 +6,5 @@ fun test3() {
|
|||||||
val p = 1
|
val p = 1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 2 IFNONNULL
|
// 2 checkNotNull \(Ljava/lang/Object;\)V
|
||||||
// 3 IF
|
// 1 IF_ICMP
|
||||||
|
|||||||
+1
-1
@@ -20,5 +20,5 @@ fun test() {
|
|||||||
|
|
||||||
// @KKt.class:
|
// @KKt.class:
|
||||||
// 0 IFNULL
|
// 0 IFNULL
|
||||||
// 1 IFNONNULL
|
// 1 checkNotNull \(Ljava/lang/Object;\)V
|
||||||
// 0 NULL-1
|
// 0 NULL-1
|
||||||
Reference in New Issue
Block a user