[JS IR] IC invalidation refactoring

- Huge refactoring for IC
  - Update hash combination logic
  - Introduce value class for IC hashes
  - Calc md5 directly by function IR
  - Split IC logic by classes
  - Move JsIrLinkerLoader into separate file
  - CacheUpdateStatus is a sealed class
  - Render TYPE_PARAMETER reified flag

^KT-51081 Fixed
^KT-51084 Fixed
This commit is contained in:
Alexander Korepanov
2022-03-15 05:34:19 +00:00
committed by Space
parent c38dd1c004
commit 69295f2cf0
246 changed files with 1724 additions and 2048 deletions
@@ -32,7 +32,7 @@ FILE fqName:<root> fileName:/candidateSymbol.kt
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
CLASS CLASS name:AbstractFirBasedSymbol modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.AbstractFirBasedSymbol<E of <root>.AbstractFirBasedSymbol>
TYPE_PARAMETER name:E index:0 variance: superTypes:[<root>.FirSymbolOwner<E of <root>.AbstractFirBasedSymbol>; <root>.FirDeclaration]
TYPE_PARAMETER name:E index:0 variance: superTypes:[<root>.FirSymbolOwner<E of <root>.AbstractFirBasedSymbol>; <root>.FirDeclaration] reified:false
CONSTRUCTOR visibility:public <> () returnType:<root>.AbstractFirBasedSymbol<E of <root>.AbstractFirBasedSymbol> [primary]
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
@@ -84,7 +84,7 @@ FILE fqName:<root> fileName:/candidateSymbol.kt
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
CLASS INTERFACE name:FirSymbolOwner modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.FirSymbolOwner<E of <root>.FirSymbolOwner>
TYPE_PARAMETER name:E index:0 variance: superTypes:[<root>.FirSymbolOwner<E of <root>.FirSymbolOwner>; <root>.FirDeclaration]
TYPE_PARAMETER name:E index:0 variance: superTypes:[<root>.FirSymbolOwner<E of <root>.FirSymbolOwner>; <root>.FirDeclaration] reified:false
PROPERTY name:symbol visibility:public modality:ABSTRACT [val]
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-symbol> visibility:public modality:ABSTRACT <> ($this:<root>.FirSymbolOwner<E of <root>.FirSymbolOwner>) returnType:<root>.AbstractFirBasedSymbol<E of <root>.FirSymbolOwner>
correspondingProperty: PROPERTY name:symbol visibility:public modality:ABSTRACT [val]
@@ -104,7 +104,7 @@ FILE fqName:<root> fileName:/candidateSymbol.kt
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
CLASS INTERFACE name:FirCallableMemberDeclaration modality:ABSTRACT visibility:public superTypes:[<root>.FirSymbolOwner<F of <root>.FirCallableMemberDeclaration>; <root>.FirDeclaration]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.FirCallableMemberDeclaration<F of <root>.FirCallableMemberDeclaration>
TYPE_PARAMETER name:F index:0 variance: superTypes:[<root>.FirCallableMemberDeclaration<F of <root>.FirCallableMemberDeclaration>]
TYPE_PARAMETER name:F index:0 variance: superTypes:[<root>.FirCallableMemberDeclaration<F of <root>.FirCallableMemberDeclaration>] reified:false
PROPERTY name:symbol visibility:public modality:ABSTRACT [val]
overridden:
public abstract symbol: <root>.AbstractFirBasedSymbol<E of <root>.FirSymbolOwner> [val]