[K2 JS] Unmute and link to issue some JS K2 tests
This commit is contained in:
committed by
Space Team
parent
7773fdab9a
commit
f5d0c22736
+52
@@ -0,0 +1,52 @@
|
||||
FILE fqName:<root> fileName:/dynamicArrayIncrementDecrement.kt
|
||||
FUN name:testArrayIncrementDecrement visibility:public modality:FINAL <> (d:dynamic) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:d index:0 type:dynamic
|
||||
BLOCK_BODY
|
||||
VAR name:t1 type:dynamic [val]
|
||||
BLOCK type=dynamic origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:dynamic [val]
|
||||
GET_VAR 'd: dynamic declared in <root>.testArrayIncrementDecrement' type=dynamic origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:kotlin.String [val]
|
||||
CONST String type=kotlin.String value="prefixIncr"
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
DYN_OP operator=INVOKE type=dynamic
|
||||
receiver: DYN_MEMBER memberName='set' type=dynamic
|
||||
GET_VAR 'val tmp_0: dynamic declared in <root>.testArrayIncrementDecrement' type=dynamic origin=null
|
||||
0: GET_VAR 'val tmp_1: kotlin.String declared in <root>.testArrayIncrementDecrement' type=kotlin.String origin=null
|
||||
1: DYN_OP operator=PREFIX_INCREMENT type=dynamic
|
||||
receiver: DYN_OP operator=ARRAY_ACCESS type=dynamic
|
||||
receiver: GET_VAR 'val tmp_0: dynamic declared in <root>.testArrayIncrementDecrement' type=dynamic origin=null
|
||||
0: GET_VAR 'val tmp_1: kotlin.String declared in <root>.testArrayIncrementDecrement' type=kotlin.String origin=null
|
||||
DYN_OP operator=INVOKE type=dynamic
|
||||
receiver: DYN_MEMBER memberName='get' type=dynamic
|
||||
GET_VAR 'val tmp_0: dynamic declared in <root>.testArrayIncrementDecrement' type=dynamic origin=null
|
||||
0: GET_VAR 'val tmp_1: kotlin.String declared in <root>.testArrayIncrementDecrement' type=kotlin.String origin=null
|
||||
VAR name:t2 type:dynamic [val]
|
||||
BLOCK type=dynamic origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:dynamic [val]
|
||||
GET_VAR 'd: dynamic declared in <root>.testArrayIncrementDecrement' type=dynamic origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_3 type:kotlin.String [val]
|
||||
CONST String type=kotlin.String value="prefixDecr"
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
DYN_OP operator=INVOKE type=dynamic
|
||||
receiver: DYN_MEMBER memberName='set' type=dynamic
|
||||
GET_VAR 'val tmp_2: dynamic declared in <root>.testArrayIncrementDecrement' type=dynamic origin=null
|
||||
0: GET_VAR 'val tmp_3: kotlin.String declared in <root>.testArrayIncrementDecrement' type=kotlin.String origin=null
|
||||
1: DYN_OP operator=PREFIX_DECREMENT type=dynamic
|
||||
receiver: DYN_OP operator=ARRAY_ACCESS type=dynamic
|
||||
receiver: GET_VAR 'val tmp_2: dynamic declared in <root>.testArrayIncrementDecrement' type=dynamic origin=null
|
||||
0: GET_VAR 'val tmp_3: kotlin.String declared in <root>.testArrayIncrementDecrement' type=kotlin.String origin=null
|
||||
DYN_OP operator=INVOKE type=dynamic
|
||||
receiver: DYN_MEMBER memberName='get' type=dynamic
|
||||
GET_VAR 'val tmp_2: dynamic declared in <root>.testArrayIncrementDecrement' type=dynamic origin=null
|
||||
0: GET_VAR 'val tmp_3: kotlin.String declared in <root>.testArrayIncrementDecrement' type=kotlin.String origin=null
|
||||
VAR name:t3 type:dynamic [val]
|
||||
DYN_OP operator=POSTFIX_INCREMENT type=dynamic
|
||||
receiver: DYN_OP operator=ARRAY_ACCESS type=dynamic
|
||||
receiver: GET_VAR 'd: dynamic declared in <root>.testArrayIncrementDecrement' type=dynamic origin=null
|
||||
0: CONST String type=kotlin.String value="postfixIncr"
|
||||
VAR name:t4 type:dynamic [val]
|
||||
DYN_OP operator=POSTFIX_DECREMENT type=dynamic
|
||||
receiver: DYN_OP operator=ARRAY_ACCESS type=dynamic
|
||||
receiver: GET_VAR 'd: dynamic declared in <root>.testArrayIncrementDecrement' type=dynamic origin=null
|
||||
0: CONST String type=kotlin.String value="postfixDecr"
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
fun testArrayIncrementDecrement(d: dynamic) {
|
||||
val t1: dynamic = { // BLOCK
|
||||
val tmp_0: dynamic = d
|
||||
val tmp_1: String = "prefixIncr"
|
||||
tmp_0.set(tmp_1, ++tmp_0[tmp_1]) /*~> Unit */
|
||||
tmp_0.get(tmp_1)
|
||||
}
|
||||
val t2: dynamic = { // BLOCK
|
||||
val tmp_2: dynamic = d
|
||||
val tmp_3: String = "prefixDecr"
|
||||
tmp_2.set(tmp_3, --tmp_2[tmp_3]) /*~> Unit */
|
||||
tmp_2.get(tmp_3)
|
||||
}
|
||||
val t3: dynamic = d["postfixIncr"]++
|
||||
val t4: dynamic = d["postfixDecr"]--
|
||||
}
|
||||
@@ -1,7 +1,4 @@
|
||||
// TARGET_BACKEND: JS_IR
|
||||
// FIR_IDENTICAL
|
||||
|
||||
// IGNORE_BACKEND_K2: JS_IR
|
||||
|
||||
fun testArrayIncrementDecrement(d: dynamic) {
|
||||
val t1 = ++d["prefixIncr"]
|
||||
|
||||
+97
@@ -0,0 +1,97 @@
|
||||
FILE fqName:<root> fileName:/dynamicMemberIncrementDecrement.kt
|
||||
FUN name:testMemberIncrementDecrement visibility:public modality:FINAL <> (d:dynamic) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:d index:0 type:dynamic
|
||||
BLOCK_BODY
|
||||
VAR name:t1 type:dynamic [val]
|
||||
DYN_OP operator=PREFIX_INCREMENT type=dynamic
|
||||
receiver: GET_VAR 'd: dynamic declared in <root>.testMemberIncrementDecrement' type=dynamic origin=null
|
||||
VAR name:t2 type:dynamic [val]
|
||||
DYN_OP operator=PREFIX_DECREMENT type=dynamic
|
||||
receiver: GET_VAR 'd: dynamic declared in <root>.testMemberIncrementDecrement' type=dynamic origin=null
|
||||
VAR name:t3 type:dynamic [val]
|
||||
DYN_OP operator=POSTFIX_INCREMENT type=dynamic
|
||||
receiver: DYN_MEMBER memberName='postfixIncr' type=dynamic
|
||||
GET_VAR 'd: dynamic declared in <root>.testMemberIncrementDecrement' type=dynamic origin=null
|
||||
VAR name:t4 type:dynamic [val]
|
||||
DYN_OP operator=POSTFIX_DECREMENT type=dynamic
|
||||
receiver: DYN_MEMBER memberName='postfixDecr' type=dynamic
|
||||
GET_VAR 'd: dynamic declared in <root>.testMemberIncrementDecrement' type=dynamic origin=null
|
||||
FUN name:testSafeMemberIncrementDecrement visibility:public modality:FINAL <> (d:dynamic) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:d index:0 type:dynamic
|
||||
BLOCK_BODY
|
||||
VAR name:t1 type:dynamic [val]
|
||||
BLOCK type=dynamic origin=SAFE_CALL
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:dynamic [val]
|
||||
GET_VAR 'd: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
WHEN type=dynamic origin=null
|
||||
BRANCH
|
||||
if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
|
||||
arg0: GET_VAR 'val tmp_0: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
arg1: CONST Null type=kotlin.Nothing? value=null
|
||||
then: CONST Null type=kotlin.Nothing? value=null
|
||||
BRANCH
|
||||
if: CONST Boolean type=kotlin.Boolean value=true
|
||||
then: BLOCK type=dynamic origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:dynamic [val]
|
||||
GET_VAR 'val tmp_0: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
DYN_OP operator=EQ type=kotlin.Unit
|
||||
receiver: DYN_MEMBER memberName='prefixIncr' type=kotlin.Unit
|
||||
GET_VAR 'val tmp_1: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
0: DYN_OP operator=PREFIX_INCREMENT type=dynamic
|
||||
receiver: DYN_MEMBER memberName='prefixIncr' type=dynamic
|
||||
GET_VAR 'val tmp_1: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
DYN_MEMBER memberName='prefixIncr' type=dynamic
|
||||
GET_VAR 'val tmp_1: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
VAR name:t2 type:dynamic [val]
|
||||
BLOCK type=dynamic origin=SAFE_CALL
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:dynamic [val]
|
||||
GET_VAR 'd: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
WHEN type=dynamic origin=null
|
||||
BRANCH
|
||||
if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
|
||||
arg0: GET_VAR 'val tmp_2: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
arg1: CONST Null type=kotlin.Nothing? value=null
|
||||
then: CONST Null type=kotlin.Nothing? value=null
|
||||
BRANCH
|
||||
if: CONST Boolean type=kotlin.Boolean value=true
|
||||
then: BLOCK type=dynamic origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_3 type:dynamic [val]
|
||||
GET_VAR 'val tmp_2: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
DYN_OP operator=EQ type=kotlin.Unit
|
||||
receiver: DYN_MEMBER memberName='prefixDecr' type=kotlin.Unit
|
||||
GET_VAR 'val tmp_3: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
0: DYN_OP operator=PREFIX_DECREMENT type=dynamic
|
||||
receiver: DYN_MEMBER memberName='prefixDecr' type=dynamic
|
||||
GET_VAR 'val tmp_3: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
DYN_MEMBER memberName='prefixDecr' type=dynamic
|
||||
GET_VAR 'val tmp_3: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
VAR name:t3 type:dynamic [val]
|
||||
BLOCK type=dynamic origin=SAFE_CALL
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_4 type:dynamic [val]
|
||||
GET_VAR 'd: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
WHEN type=dynamic origin=null
|
||||
BRANCH
|
||||
if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
|
||||
arg0: GET_VAR 'val tmp_4: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
arg1: CONST Null type=kotlin.Nothing? value=null
|
||||
then: CONST Null type=kotlin.Nothing? value=null
|
||||
BRANCH
|
||||
if: CONST Boolean type=kotlin.Boolean value=true
|
||||
then: DYN_OP operator=POSTFIX_INCREMENT type=dynamic
|
||||
receiver: DYN_MEMBER memberName='postfixIncr' type=dynamic
|
||||
GET_VAR 'val tmp_4: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
VAR name:t4 type:dynamic [val]
|
||||
BLOCK type=dynamic origin=SAFE_CALL
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_5 type:dynamic [val]
|
||||
GET_VAR 'd: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
WHEN type=dynamic origin=null
|
||||
BRANCH
|
||||
if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
|
||||
arg0: GET_VAR 'val tmp_5: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
arg1: CONST Null type=kotlin.Nothing? value=null
|
||||
then: CONST Null type=kotlin.Nothing? value=null
|
||||
BRANCH
|
||||
if: CONST Boolean type=kotlin.Boolean value=true
|
||||
then: DYN_OP operator=POSTFIX_DECREMENT type=dynamic
|
||||
receiver: DYN_MEMBER memberName='postfixDecr' type=dynamic
|
||||
GET_VAR 'val tmp_5: dynamic declared in <root>.testSafeMemberIncrementDecrement' type=dynamic origin=null
|
||||
+45
@@ -0,0 +1,45 @@
|
||||
fun testMemberIncrementDecrement(d: dynamic) {
|
||||
val t1: dynamic = ++d
|
||||
val t2: dynamic = --d
|
||||
val t3: dynamic = d.postfixIncr++
|
||||
val t4: dynamic = d.postfixDecr--
|
||||
}
|
||||
|
||||
fun testSafeMemberIncrementDecrement(d: dynamic) {
|
||||
val t1: dynamic = { // BLOCK
|
||||
val tmp_0: dynamic = d
|
||||
when {
|
||||
EQEQ(arg0 = tmp_0, arg1 = null) -> null
|
||||
else -> { // BLOCK
|
||||
val tmp_1: dynamic = tmp_0
|
||||
tmp_1.prefixIncr = ++tmp_1.prefixIncr
|
||||
tmp_1.prefixIncr
|
||||
}
|
||||
}
|
||||
}
|
||||
val t2: dynamic = { // BLOCK
|
||||
val tmp_2: dynamic = d
|
||||
when {
|
||||
EQEQ(arg0 = tmp_2, arg1 = null) -> null
|
||||
else -> { // BLOCK
|
||||
val tmp_3: dynamic = tmp_2
|
||||
tmp_3.prefixDecr = --tmp_3.prefixDecr
|
||||
tmp_3.prefixDecr
|
||||
}
|
||||
}
|
||||
}
|
||||
val t3: dynamic = { // BLOCK
|
||||
val tmp_4: dynamic = d
|
||||
when {
|
||||
EQEQ(arg0 = tmp_4, arg1 = null) -> null
|
||||
else -> tmp_4.postfixIncr++
|
||||
}
|
||||
}
|
||||
val t4: dynamic = { // BLOCK
|
||||
val tmp_5: dynamic = d
|
||||
when {
|
||||
EQEQ(arg0 = tmp_5, arg1 = null) -> null
|
||||
else -> tmp_5.postfixDecr--
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,4 @@
|
||||
// TARGET_BACKEND: JS_IR
|
||||
// IGNORE_BACKEND_K2: JS_IR
|
||||
|
||||
// FIR_IDENTICAL
|
||||
|
||||
fun testMemberIncrementDecrement(d: dynamic) {
|
||||
val t1 = ++d.prefixIncr
|
||||
|
||||
Reference in New Issue
Block a user