IR: descriptor-less rendering of IR elements (work in progress)

This commit is contained in:
Dmitry Petrov
2019-03-18 14:15:50 +03:00
parent cd138bc022
commit 9a82f926a1
323 changed files with 19062 additions and 18959 deletions
@@ -1,57 +1,57 @@
FILE fqName:<root> fileName:/arrayAugmentedAssignment2.kt
CLASS INTERFACE name:IA modality:ABSTRACT visibility:public flags:[] superTypes:[kotlin.Any]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IA flags:[]
FUN name:get visibility:public modality:ABSTRACT <> ($this:<root>.IA, index:kotlin.String) returnType:kotlin.Int flags:[]
$this: VALUE_PARAMETER name:<this> type:<root>.IA flags:[]
VALUE_PARAMETER name:index index:0 type:kotlin.String flags:[]
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
CLASS INTERFACE name:IA modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IA
FUN name:get visibility:public modality:ABSTRACT <> ($this:<root>.IA, index:kotlin.String) returnType:kotlin.Int
$this: VALUE_PARAMETER name:<this> type:<root>.IA
VALUE_PARAMETER name:index index:0 type:kotlin.String
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:[]
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
CLASS INTERFACE name:IB modality:ABSTRACT visibility:public flags:[] superTypes:[kotlin.Any]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IB flags:[]
FUN name:set visibility:public modality:ABSTRACT <> ($this:<root>.IB, $receiver:<root>.IA, index:kotlin.String, value:kotlin.Int) returnType:kotlin.Unit flags:[]
$this: VALUE_PARAMETER name:<this> type:<root>.IB flags:[]
$receiver: VALUE_PARAMETER name:<this> type:<root>.IA flags:[]
VALUE_PARAMETER name:index index:0 type:kotlin.String flags:[]
VALUE_PARAMETER name:value index:1 type:kotlin.Int flags:[]
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
CLASS INTERFACE name:IB modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IB
FUN name:set visibility:public modality:ABSTRACT <> ($this:<root>.IB, $receiver:<root>.IA, index:kotlin.String, value:kotlin.Int) returnType:kotlin.Unit
$this: VALUE_PARAMETER name:<this> type:<root>.IB
$receiver: VALUE_PARAMETER name:<this> type:<root>.IA
VALUE_PARAMETER name:index index:0 type:kotlin.String
VALUE_PARAMETER name:value index:1 type:kotlin.Int
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:[]
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
FUN name:test visibility:public modality:FINAL <> ($receiver:<root>.IB, a:<root>.IA) returnType:kotlin.Unit flags:[]
$receiver: VALUE_PARAMETER name:<this> type:<root>.IB flags:[]
VALUE_PARAMETER name:a index:0 type:<root>.IA flags:[]
FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
FUN name:test visibility:public modality:FINAL <> ($receiver:<root>.IB, a:<root>.IA) returnType:kotlin.Unit
$receiver: VALUE_PARAMETER name:<this> type:<root>.IB
VALUE_PARAMETER name:a index:0 type:<root>.IA
BLOCK_BODY
BLOCK type=kotlin.Unit origin=PLUSEQ
VAR IR_TEMPORARY_VARIABLE name:tmp0_array type:<root>.IA flags:[val]
GET_VAR 'VALUE_PARAMETER name:a index:0 type:<root>.IA flags:[]' type=<root>.IA origin=null
VAR IR_TEMPORARY_VARIABLE name:tmp1_index0 type:kotlin.String flags:[val]
VAR IR_TEMPORARY_VARIABLE name:tmp0_array type:<root>.IA [val]
GET_VAR 'a: <root>.IA declared in <root>.test' type=<root>.IA origin=null
VAR IR_TEMPORARY_VARIABLE name:tmp1_index0 type:kotlin.String [val]
CONST String type=kotlin.String value=""
CALL 'FUN name:set visibility:public modality:ABSTRACT <> ($this:<root>.IB, $receiver:<root>.IA, index:kotlin.String, value:kotlin.Int) returnType:kotlin.Unit flags:[]' type=kotlin.Unit origin=PLUSEQ
$this: GET_VAR 'VALUE_PARAMETER name:<this> type:<root>.IB flags:[]' type=<root>.IB origin=null
$receiver: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp0_array type:<root>.IA flags:[val]' type=<root>.IA origin=null
index: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp1_index0 type:kotlin.String flags:[val]' type=kotlin.String origin=null
value: CALL 'FUN IR_EXTERNAL_DECLARATION_STUB name:plus visibility:public modality:FINAL <> ($this:kotlin.Int, other:kotlin.Int) returnType:kotlin.Int flags:[]' type=kotlin.Int origin=PLUSEQ
$this: CALL 'FUN name:get visibility:public modality:ABSTRACT <> ($this:<root>.IA, index:kotlin.String) returnType:kotlin.Int flags:[]' type=kotlin.Int origin=PLUSEQ
$this: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp0_array type:<root>.IA flags:[val]' type=<root>.IA origin=null
index: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp1_index0 type:kotlin.String flags:[val]' type=kotlin.String origin=null
CALL 'public abstract fun set (index: kotlin.String, value: kotlin.Int): kotlin.Unit declared in <root>.IB' type=kotlin.Unit origin=PLUSEQ
$this: GET_VAR '<this>: <root>.IB declared in <root>.test' type=<root>.IB origin=null
$receiver: GET_VAR 'val tmp0_array: <root>.IA [val] declared in <root>.test' type=<root>.IA origin=null
index: GET_VAR 'val tmp1_index0: kotlin.String [val] declared in <root>.test' type=kotlin.String origin=null
value: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
$this: CALL 'public abstract fun get (index: kotlin.String): kotlin.Int declared in <root>.IA' type=kotlin.Int origin=PLUSEQ
$this: GET_VAR 'val tmp0_array: <root>.IA [val] declared in <root>.test' type=<root>.IA origin=null
index: GET_VAR 'val tmp1_index0: kotlin.String [val] declared in <root>.test' type=kotlin.String origin=null
other: CONST Int type=kotlin.Int value=42