Psi2ir: do not sort descriptors for fake override generation
Descriptors are already supposed to be sorted in scopes. The problem is that rendering descriptors for sorting takes a lot of time (~1.5% of total compilation time of intellij with JVM IR), and simple heuristics, like comparing by names first, don't fully help with it. #KT-48233
This commit is contained in:
+7
-7
@@ -17,13 +17,6 @@ FILE fqName:<root> fileName:/javaInnerClass.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test> (): <root>.J.JInner declared in <root>.Test1'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test type:<root>.J.JInner visibility:private [final]' type=<root>.J.JInner origin=null
|
||||
receiver: GET_VAR '<this>: <root>.Test1 declared in <root>.Test1.<get-test>' type=<root>.Test1 origin=null
|
||||
PROPERTY FAKE_OVERRIDE name:x visibility:public modality:FINAL [fake_override,var]
|
||||
overridden:
|
||||
public final x: kotlin.Int [var]
|
||||
FUN FAKE_OVERRIDE name:bar visibility:public modality:OPEN <> ($this:<root>.J) returnType:kotlin.Unit [fake_override]
|
||||
overridden:
|
||||
public open fun bar (): kotlin.Unit declared in <root>.J
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.J
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [fake_override,operator] declared in <root>.J
|
||||
@@ -37,3 +30,10 @@ FILE fqName:<root> fileName:/javaInnerClass.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String [fake_override] declared in <root>.J
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:bar visibility:public modality:OPEN <> ($this:<root>.J) returnType:kotlin.Unit [fake_override]
|
||||
overridden:
|
||||
public open fun bar (): kotlin.Unit declared in <root>.J
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.J
|
||||
PROPERTY FAKE_OVERRIDE name:x visibility:public modality:FINAL [fake_override,var]
|
||||
overridden:
|
||||
public final x: kotlin.Int [var]
|
||||
|
||||
Reference in New Issue
Block a user