9137e68d4e
This introduces the following IR built-in functions required for proper
implementation of the number comparisons:
- ieee754Equals(T, T): Boolean,
for each T in {Float?, Double?}
- less(T, T): Boolean
lessOrEqual(T, T): Boolean
greater(T, T): Boolean
greaterOrEqual(T, T): Boolean
for each T in {Int, Long, Float, Double}
43 lines
1.3 KiB
Plaintext
Vendored
43 lines
1.3 KiB
Plaintext
Vendored
// FILE: /expressionIf.kt
|
|
// FUN: max
|
|
BB 0
|
|
CONTENT
|
|
1 FUN name:max visibility:public modality:FINAL <> (x:kotlin.Int, y:kotlin.Int) returnType:Int flags:
|
|
2 WHEN type=kotlin.Int origin=null
|
|
3 GET_VAR 'value-parameter x: Int' type=kotlin.Int origin=null
|
|
4 GET_VAR 'value-parameter y: Int' type=kotlin.Int origin=null
|
|
OUTGOING -> BB 1, 2
|
|
CALL 'greater(Int, Int): Boolean' type=kotlin.Boolean origin=GT
|
|
BB 1
|
|
INCOMING <- BB 0
|
|
CALL 'greater(Int, Int): Boolean' type=kotlin.Boolean origin=GT
|
|
CONTENT
|
|
OUTGOING -> BB 3
|
|
CONST Boolean type=kotlin.Boolean value=true
|
|
BB 2
|
|
INCOMING <- BB 0
|
|
CALL 'greater(Int, Int): Boolean' type=kotlin.Boolean origin=GT
|
|
CONTENT
|
|
1 GET_VAR 'value-parameter x: Int' type=kotlin.Int origin=null
|
|
OUTGOING -> BB 4
|
|
When exit: WHEN type=kotlin.Int origin=null
|
|
BB 3
|
|
INCOMING <- BB 1
|
|
CONST Boolean type=kotlin.Boolean value=true
|
|
CONTENT
|
|
1 GET_VAR 'value-parameter y: Int' type=kotlin.Int origin=null
|
|
OUTGOING -> BB 4
|
|
When exit: WHEN type=kotlin.Int origin=null
|
|
BB 4
|
|
INCOMING <- BB 2, 3
|
|
When exit: WHEN type=kotlin.Int origin=null
|
|
CONTENT
|
|
1 RETURN type=kotlin.Nothing from='max(Int, Int): Int'
|
|
OUTGOING -> NONE
|
|
Function exit: FUN name:max visibility:public modality:FINAL <> (x:kotlin.Int, y:kotlin.Int) returnType:Int flags:
|
|
|
|
// END FUN: max
|
|
|
|
// END FILE: /expressionIf.kt
|
|
|