[JS IR] Make tests that use directives pass with IR BE

This commit is contained in:
Sergej Jaskiewicz
2021-10-04 20:44:06 +03:00
committed by Space
parent a359e503fb
commit 65d40c2253
101 changed files with 415 additions and 217 deletions
@@ -1,8 +1,12 @@
// WITH_RUNTIME
// CHECK_CASES_COUNT: function=bar1 count=6
// CHECK_IF_COUNT: function=bar1 count=0
// CHECK_CASES_COUNT: function=bar2 count=6
// CHECK_IF_COUNT: function=bar2 count=0
// CHECK_CASES_COUNT: function=bar1 count=6 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=bar1 count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=bar1 count=0 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=bar1 count=2 IGNORED_BACKENDS=JS
// CHECK_CASES_COUNT: function=bar2 count=6 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=bar2 count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=bar2 count=0 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=bar2 count=3 IGNORED_BACKENDS=JS
import kotlin.test.assertEquals
@@ -1,6 +1,8 @@
// WITH_RUNTIME
// CHECK_CASES_COUNT: function=bar count=3
// CHECK_IF_COUNT: function=bar count=0
// CHECK_CASES_COUNT: function=bar count=3 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=bar count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=bar count=0 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=bar count=2 IGNORED_BACKENDS=JS
import kotlin.test.assertEquals
@@ -1,5 +1,6 @@
// WITH_RUNTIME
// CHECK_CASES_COUNT: function=foo count=3
// CHECK_CASES_COUNT: function=foo count=3 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=foo count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=foo count=0
import kotlin.test.assertEquals
@@ -1,8 +1,11 @@
// WITH_RUNTIME
// CHECK_CASES_COUNT: function=bar1 count=3
// CHECK_CASES_COUNT: function=bar1 count=3 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=bar1 count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=bar1 count=0
// CHECK_CASES_COUNT: function=bar2 count=4
// CHECK_IF_COUNT: function=bar2 count=0
// CHECK_CASES_COUNT: function=bar2 count=4 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=bar2 count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=bar2 count=0 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=bar2 count=3 IGNORED_BACKENDS=JS
import kotlin.test.assertEquals
@@ -1,5 +1,6 @@
// CHECK_CASES_COUNT: function=box$lambda count=0
// CHECK_IF_COUNT: function=box$lambda count=1
// CHECK_IF_COUNT: function=box$lambda count=1 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=box$lambda count=0 IGNORED_BACKENDS=JS
enum class Season {
WINTER,
@@ -1,5 +1,7 @@
// CHECK_CASES_COUNT: function=box count=6
// CHECK_IF_COUNT: function=box count=1
// CHECK_CASES_COUNT: function=box count=6 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=box count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=box count=1 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=box count=7 IGNORED_BACKENDS=JS
enum class En { A, B, C }
@@ -1,5 +1,7 @@
// CHECK_CASES_COUNT: function=box count=18
// CHECK_IF_COUNT: function=box count=3
// CHECK_CASES_COUNT: function=box count=18 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=box count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=box count=3 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=box count=21 IGNORED_BACKENDS=JS
enum class En { A, B, C }
@@ -1,5 +1,7 @@
// CHECK_CASES_COUNT: function=crash count=2
// CHECK_IF_COUNT: function=crash count=1
// CHECK_CASES_COUNT: function=crash count=2 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=crash count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=crash count=1 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=crash count=3 IGNORED_BACKENDS=JS
class EncapsulatedEnum<T : Enum<T>>(val value: T)
@@ -1,5 +1,7 @@
// CHECK_CASES_COUNT: function=doTheThing count=2
// CHECK_IF_COUNT: function=doTheThing count=2
// CHECK_CASES_COUNT: function=doTheThing count=2 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=doTheThing count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=doTheThing count=2 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=doTheThing count=4 IGNORED_BACKENDS=JS
private fun Any?.doTheThing(): String {
when (this) {
@@ -1,7 +1,10 @@
// WITH_RUNTIME
// CHECK_CASES_COUNT: function=bar1_u51tkt$ count=3
// CHECK_IF_COUNT: function=bar1_u51tkt$ count=0
// CHECK_CASES_COUNT: function=A$bar2$lambda count=3
// CHECK_CASES_COUNT: function=bar1_u51tkt$ count=3 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=bar1_eni42q_k$ count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=bar1_u51tkt$ count=0 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=bar1_eni42q_k$ count=3 IGNORED_BACKENDS=JS
// CHECK_CASES_COUNT: function=A$bar2$lambda count=3 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=A$bar2$lambda count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=A$bar2$lambda count=0
import kotlin.test.assertEquals
@@ -1,6 +1,7 @@
// WITH_RUNTIME
// CHECK_CASES_COUNT: function=foo count=0
// CHECK_IF_COUNT: function=foo count=3
// CHECK_IF_COUNT: function=foo count=3 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=foo count=0 IGNORED_BACKENDS=JS
import kotlin.test.assertEquals
@@ -1,8 +1,12 @@
// WITH_RUNTIME
// CHECK_CASES_COUNT: function=bar1 count=3
// CHECK_IF_COUNT: function=bar1 count=0
// CHECK_CASES_COUNT: function=bar2 count=4
// CHECK_IF_COUNT: function=bar2 count=0
// CHECK_CASES_COUNT: function=bar1 count=3 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=bar1 count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=bar1 count=0 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=bar1 count=3 IGNORED_BACKENDS=JS
// CHECK_CASES_COUNT: function=bar2 count=4 TARGET_BACKENDS=JS
// CHECK_CASES_COUNT: function=bar2 count=0 IGNORED_BACKENDS=JS
// CHECK_IF_COUNT: function=bar2 count=0 TARGET_BACKENDS=JS
// CHECK_IF_COUNT: function=bar2 count=4 IGNORED_BACKENDS=JS
import kotlin.test.assertEquals