FILE fqName:<root> fileName:/kt24114.kt
  FUN name:one visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='FUN name:one visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]'
        CONST Int type=kotlin.Int value=1
  FUN name:two visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='FUN name:two visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]'
        CONST Int type=kotlin.Int value=2
  FUN name:test1 visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]
    BLOCK_BODY
      WHILE label=null origin=WHILE_LOOP
        condition: CONST Boolean type=kotlin.Boolean value=true
        body: BLOCK type=kotlin.Unit origin=null
          BLOCK type=kotlin.Nothing origin=WHEN
            VAR IR_TEMPORARY_VARIABLE name:tmp0_subject type:kotlin.Int flags:[val]
              CALL 'FUN name:one visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]' type=kotlin.Int origin=null
            WHEN type=kotlin.Nothing origin=WHEN
              BRANCH
                if: CALL 'FUN IR_BUILTINS_STUB name:EQEQ visibility:public modality:FINAL <> (arg0:kotlin.Any?, arg1:kotlin.Any?) returnType:kotlin.Boolean flags:[]' type=kotlin.Boolean origin=EQEQ
                  arg0: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp0_subject type:kotlin.Int flags:[val]' type=kotlin.Int origin=null
                  arg1: CONST Int type=kotlin.Int value=1
                then: BLOCK type=kotlin.Nothing origin=null
                  BLOCK type=kotlin.Nothing origin=WHEN
                    VAR IR_TEMPORARY_VARIABLE name:tmp1_subject type:kotlin.Int flags:[val]
                      CALL 'FUN name:two visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]' type=kotlin.Int origin=null
                    WHEN type=kotlin.Nothing origin=WHEN
                      BRANCH
                        if: CALL 'FUN IR_BUILTINS_STUB name:EQEQ visibility:public modality:FINAL <> (arg0:kotlin.Any?, arg1:kotlin.Any?) returnType:kotlin.Boolean flags:[]' type=kotlin.Boolean origin=EQEQ
                          arg0: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp1_subject type:kotlin.Int flags:[val]' type=kotlin.Int origin=null
                          arg1: CONST Int type=kotlin.Int value=2
                        then: RETURN type=kotlin.Nothing from='FUN name:test1 visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]'
                          CONST Int type=kotlin.Int value=2
              BRANCH
                if: CONST Boolean type=kotlin.Boolean value=true
                then: RETURN type=kotlin.Nothing from='FUN name:test1 visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]'
                  CONST Int type=kotlin.Int value=3
  FUN name:test2 visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]
    BLOCK_BODY
      WHILE label=null origin=WHILE_LOOP
        condition: CONST Boolean type=kotlin.Boolean value=true
        body: BLOCK type=kotlin.Unit origin=null
          BLOCK type=kotlin.Nothing origin=WHEN
            VAR IR_TEMPORARY_VARIABLE name:tmp0_subject type:kotlin.Int flags:[val]
              CALL 'FUN name:one visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]' type=kotlin.Int origin=null
            WHEN type=kotlin.Nothing origin=WHEN
              BRANCH
                if: CALL 'FUN IR_BUILTINS_STUB name:EQEQ visibility:public modality:FINAL <> (arg0:kotlin.Any?, arg1:kotlin.Any?) returnType:kotlin.Boolean flags:[]' type=kotlin.Boolean origin=EQEQ
                  arg0: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp0_subject type:kotlin.Int flags:[val]' type=kotlin.Int origin=null
                  arg1: CONST Int type=kotlin.Int value=1
                then: BLOCK type=kotlin.Nothing origin=WHEN
                  VAR IR_TEMPORARY_VARIABLE name:tmp1_subject type:kotlin.Int flags:[val]
                    CALL 'FUN name:two visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]' type=kotlin.Int origin=null
                  WHEN type=kotlin.Nothing origin=WHEN
                    BRANCH
                      if: CALL 'FUN IR_BUILTINS_STUB name:EQEQ visibility:public modality:FINAL <> (arg0:kotlin.Any?, arg1:kotlin.Any?) returnType:kotlin.Boolean flags:[]' type=kotlin.Boolean origin=EQEQ
                        arg0: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp1_subject type:kotlin.Int flags:[val]' type=kotlin.Int origin=null
                        arg1: CONST Int type=kotlin.Int value=2
                      then: RETURN type=kotlin.Nothing from='FUN name:test2 visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]'
                        CONST Int type=kotlin.Int value=2
              BRANCH
                if: CONST Boolean type=kotlin.Boolean value=true
                then: RETURN type=kotlin.Nothing from='FUN name:test2 visibility:public modality:FINAL <> () returnType:kotlin.Int flags:[]'
                  CONST Int type=kotlin.Int value=3
