[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
+4 -5
View File
@@ -5,7 +5,7 @@ FILE fqName:<root> fileName:/ArrayMap.kt
CLASS CLASS name:OneElementArrayMap modality:FINAL visibility:internal superTypes:[<root>.ArrayMap<T of <root>.OneElementArrayMap>]
CLASS CLASS name:ArrayMapImpl modality:FINAL visibility:internal superTypes:[<root>.ArrayMap<T of <root>.ArrayMapImpl>]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.ArrayMap<T of <root>.ArrayMap>
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any]
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any] reified:false
CONSTRUCTOR visibility:protected <> () returnType:<root>.ArrayMap<T of <root>.ArrayMap> [primary]
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
@@ -155,7 +155,7 @@ FILE fqName:<root> fileName:/ArrayMap.kt
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
CLASS CLASS name:OneElementArrayMap modality:FINAL visibility:internal superTypes:[<root>.ArrayMap<T of <root>.OneElementArrayMap>]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.OneElementArrayMap<T of <root>.OneElementArrayMap>
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any]
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any] reified:false
CONSTRUCTOR visibility:public <> (value:T of <root>.OneElementArrayMap, index:kotlin.Int) returnType:<root>.OneElementArrayMap<T of <root>.OneElementArrayMap> [primary]
VALUE_PARAMETER name:value index:0 type:T of <root>.OneElementArrayMap
VALUE_PARAMETER name:index index:1 type:kotlin.Int
@@ -325,7 +325,7 @@ FILE fqName:<root> fileName:/ArrayMap.kt
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
CLASS CLASS name:ArrayMapImpl modality:FINAL visibility:internal superTypes:[<root>.ArrayMap<T of <root>.ArrayMapImpl>]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.ArrayMapImpl<T of <root>.ArrayMapImpl>
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any]
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any] reified:false
CONSTRUCTOR visibility:private <> (data:kotlin.Array<kotlin.Any?>) returnType:<root>.ArrayMapImpl<T of <root>.ArrayMapImpl> [primary]
VALUE_PARAMETER name:data index:0 type:kotlin.Array<kotlin.Any?>
BLOCK_BODY
@@ -697,7 +697,7 @@ FILE fqName:<root> fileName:/ArrayMap.kt
then: CONST Null type=kotlin.Nothing? value=null
CLASS CLASS name:Entry modality:FINAL visibility:public [data] superTypes:[kotlin.collections.Map.Entry<kotlin.Int, T of <root>.ArrayMapImpl.Entry>]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.ArrayMapImpl.Entry<T of <root>.ArrayMapImpl.Entry>
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
CONSTRUCTOR visibility:public <> (key:kotlin.Int, value:T of <root>.ArrayMapImpl.Entry) returnType:<root>.ArrayMapImpl.Entry<T of <root>.ArrayMapImpl.Entry> [primary]
VALUE_PARAMETER name:key index:0 type:kotlin.Int
VALUE_PARAMETER name:value index:1 type:T of <root>.ArrayMapImpl.Entry
@@ -863,4 +863,3 @@ FILE fqName:<root> fileName:/ArrayMap.kt
overridden:
public open fun toString (): kotlin.String [fake_override] declared in <root>.ArrayMap
$this: VALUE_PARAMETER name:<this> type:kotlin.Any