FILE fqName:<root> fileName:/nullableFloatingPointEqeq.kt
  FUN name:testDD visibility:public modality:FINAL <> (x:kotlin.Double?, y:kotlin.Double?) returnType:Boolean flags:
    VALUE_PARAMETER name:x index:0 type:kotlin.Double? flags:
    VALUE_PARAMETER name:y index:1 type:kotlin.Double? flags:
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='testDD(Double?, Double?): Boolean'
        CALL 'ieee754equals(Double?, Double?): Boolean' type=kotlin.Boolean origin=EQEQ
          arg0: GET_VAR 'value-parameter x: Double?' type=kotlin.Double? origin=null
          arg1: GET_VAR 'value-parameter y: Double?' type=kotlin.Double? origin=null
  FUN name:testDF visibility:public modality:FINAL <> (x:kotlin.Double?, y:kotlin.Any?) returnType:Boolean flags:
    VALUE_PARAMETER name:x index:0 type:kotlin.Double? flags:
    VALUE_PARAMETER name:y index:1 type:kotlin.Any? flags:
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='testDF(Double?, Any?): Boolean'
        WHEN type=kotlin.Boolean origin=ANDAND
          BRANCH
            if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=kotlin.Float?
              typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Float modality:FINAL visibility:public flags:
              GET_VAR 'value-parameter y: Any?' type=kotlin.Any? origin=null
            then: CALL 'ieee754equals(Double?, Double?): Boolean' type=kotlin.Boolean origin=EQEQ
              arg0: GET_VAR 'value-parameter x: Double?' type=kotlin.Double? origin=null
              arg1: BLOCK type=kotlin.Double? origin=SAFE_CALL
                VAR IR_TEMPORARY_VARIABLE name:tmp0_safe_receiver type:kotlin.Any? flags:val
                  GET_VAR 'value-parameter y: Any?' type=kotlin.Any? origin=null
                WHEN type=kotlin.Double? origin=SAFE_CALL
                  BRANCH
                    if: CALL 'EQEQ(Any?, Any?): Boolean' type=kotlin.Boolean origin=EQEQ
                      arg0: GET_VAR 'tmp0_safe_receiver: Any?' type=kotlin.Any? 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: CALL 'toDouble(): Double' type=kotlin.Double origin=null
                      $this: TYPE_OP type=kotlin.Float origin=IMPLICIT_CAST typeOperand=kotlin.Float
                        typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Float modality:FINAL visibility:public flags:
                        GET_VAR 'tmp0_safe_receiver: Any?' type=kotlin.Any? origin=null
          BRANCH
            if: CONST Boolean type=kotlin.Boolean value=true
            then: CONST Boolean type=kotlin.Boolean value=false
  FUN name:testDI visibility:public modality:FINAL <> (x:kotlin.Double?, y:kotlin.Any?) returnType:Boolean flags:
    VALUE_PARAMETER name:x index:0 type:kotlin.Double? flags:
    VALUE_PARAMETER name:y index:1 type:kotlin.Any? flags:
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='testDI(Double?, Any?): Boolean'
        WHEN type=kotlin.Boolean origin=ANDAND
          BRANCH
            if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=kotlin.Int?
              typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Int modality:FINAL visibility:public flags:
              GET_VAR 'value-parameter y: Any?' type=kotlin.Any? origin=null
            then: CALL 'ieee754equals(Double?, Double?): Boolean' type=kotlin.Boolean origin=EQEQ
              arg0: GET_VAR 'value-parameter x: Double?' type=kotlin.Double? origin=null
              arg1: BLOCK type=kotlin.Double? origin=SAFE_CALL
                VAR IR_TEMPORARY_VARIABLE name:tmp0_safe_receiver type:kotlin.Any? flags:val
                  GET_VAR 'value-parameter y: Any?' type=kotlin.Any? origin=null
                WHEN type=kotlin.Double? origin=SAFE_CALL
                  BRANCH
                    if: CALL 'EQEQ(Any?, Any?): Boolean' type=kotlin.Boolean origin=EQEQ
                      arg0: GET_VAR 'tmp0_safe_receiver: Any?' type=kotlin.Any? 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: CALL 'toDouble(): Double' type=kotlin.Double origin=null
                      $this: TYPE_OP type=kotlin.Int origin=IMPLICIT_CAST typeOperand=kotlin.Int
                        typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Int modality:FINAL visibility:public flags:
                        GET_VAR 'tmp0_safe_receiver: Any?' type=kotlin.Any? origin=null
          BRANCH
            if: CONST Boolean type=kotlin.Boolean value=true
            then: CONST Boolean type=kotlin.Boolean value=false
  FUN name:testDI2 visibility:public modality:FINAL <> (x:kotlin.Any?, y:kotlin.Any?) returnType:Boolean flags:
    VALUE_PARAMETER name:x index:0 type:kotlin.Any? flags:
    VALUE_PARAMETER name:y index:1 type:kotlin.Any? flags:
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='testDI2(Any?, Any?): Boolean'
        WHEN type=kotlin.Boolean origin=ANDAND
          BRANCH
            if: WHEN type=kotlin.Boolean origin=ANDAND
              BRANCH
                if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=kotlin.Int?
                  typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Int modality:FINAL visibility:public flags:
                  GET_VAR 'value-parameter x: Any?' type=kotlin.Any? origin=null
                then: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=kotlin.Double
                  typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Double modality:FINAL visibility:public flags:
                  GET_VAR 'value-parameter y: Any?' type=kotlin.Any? origin=null
              BRANCH
                if: CONST Boolean type=kotlin.Boolean value=true
                then: CONST Boolean type=kotlin.Boolean value=false
            then: CALL 'ieee754equals(Double?, Double?): Boolean' type=kotlin.Boolean origin=EQEQ
              arg0: BLOCK type=kotlin.Double? origin=SAFE_CALL
                VAR IR_TEMPORARY_VARIABLE name:tmp0_safe_receiver type:kotlin.Any? flags:val
                  GET_VAR 'value-parameter x: Any?' type=kotlin.Any? origin=null
                WHEN type=kotlin.Double? origin=SAFE_CALL
                  BRANCH
                    if: CALL 'EQEQ(Any?, Any?): Boolean' type=kotlin.Boolean origin=EQEQ
                      arg0: GET_VAR 'tmp0_safe_receiver: Any?' type=kotlin.Any? 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: CALL 'toDouble(): Double' type=kotlin.Double origin=null
                      $this: TYPE_OP type=kotlin.Int origin=IMPLICIT_CAST typeOperand=kotlin.Int
                        typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Int modality:FINAL visibility:public flags:
                        GET_VAR 'tmp0_safe_receiver: Any?' type=kotlin.Any? origin=null
              arg1: TYPE_OP type=kotlin.Double? origin=IMPLICIT_CAST typeOperand=kotlin.Double?
                typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Double modality:FINAL visibility:public flags:
                GET_VAR 'value-parameter y: Any?' type=kotlin.Any? origin=null
          BRANCH
            if: CONST Boolean type=kotlin.Boolean value=true
            then: CONST Boolean type=kotlin.Boolean value=false

