Optimize comparison with zero and null

This commit is contained in:
Michael Bogdanov
2015-04-07 10:31:44 +03:00
parent ccfc613c31
commit 841b199d49
9 changed files with 104 additions and 56 deletions
@@ -13,5 +13,6 @@ fun bar() {
// 0 valueOf
// 0 Value\s\(\)
// 1 IFNULL
// 0 IFNONNULL
// 0 IFNULL
// 1 IFNONNULL
// 1 IF
@@ -0,0 +1,14 @@
fun main(p: String?) {
if (!(p == null)) {
"then"
} else {
"else"
}
}
//0 ICONST_0
//0 ICONST_1
//0 ACONST_NULL
//1 IFNULL
//1 IF
//1 GOTO
@@ -0,0 +1,15 @@
fun main() {
val a = 1
if (!(a == 0)) {
"then"
} else {
"else"
}
}
//0 ICONST_0
//1 ICONST_1
//1 IFEQ
//0 IFNE
//1 IF
//1 GOTO
@@ -0,0 +1,14 @@
fun main(p: String?) {
if (p == null) {
"then"
} else {
"else"
}
}
//0 ICONST_0
//0 ICONST_1
//0 ACONST_NULL
//1 IFNONNULL
//1 IF
//1 GOTO
@@ -0,0 +1,15 @@
fun main() {
val a = 1
if (a == 0) {
"then"
} else {
"else"
}
}
//0 ICONST_0
//1 ICONST_1
//0 IFEQ
//1 IFNE
//1 IF
//1 GOTO