Ivan Kylchik
8e42ccaccb
[IR] Drop FoldConstantLowering and StringTrimLowering
2023-07-10 13:19:51 +00:00
Sergei Kharitontcev-Beglov
34c6afec5e
[Wasm] A name cache to distinguish same named declarations in DCE dump
2023-07-07 17:42:00 +00:00
Sergei Kharitontcev-Beglov
bc0afc36a2
[Wasm] Renovated Ir declarations dump by adding a type entry
2023-07-07 17:42:00 +00:00
Sergei Kharitontcev-Beglov
3b52b452a3
[Wasm] Escaped quotes and added export in DCE in IR dumps
2023-07-07 17:42:00 +00:00
Artem Kobzar
7c7aa98875
[K/JS] Throw error when a module contains file with the same name and package (ignoring case)
2023-07-07 13:50:04 +00:00
Artem Kobzar
cf949e8760
[K/JS] Support KClass<*>.createInstance reflection method ^KT-58684 Fixed
2023-07-06 18:18:14 +00:00
Alexander Korepanov
2cb28b6be1
[JS IR] Add an explicit toString() call for concatenating Char values
...
^KT-59718 Fixed
2023-07-06 14:40:06 +00:00
Ivan Kylchik
31e75cc603
[JS_IR] Forbid to inline constants during const lowering
2023-07-06 11:00:14 +00:00
Ivan Kylchik
d3d28783c5
[IR] Support const optimizations for JS backend
2023-07-06 11:00:14 +00:00
Ivan Kylchik
abbafc0b2a
[IR] Move some inline utils from backend.common into ir.util
2023-07-06 11:00:14 +00:00
Alexander Korepanov
4695dca056
[JS IR] Keep box and unbox intrinsics in call args after decomposing
...
^KT-59717 Fixed
2023-07-05 07:33:03 +00:00
Sergej Jaskiewicz
6281faa063
[IR] Move IrFactory#createBlockBody overloads to extension methods
...
This is to prepare for IrFactory auto-generation (KT-59308).
2023-07-04 15:19:28 +00:00
Artem Kobzar
9ad5910de9
[K/JS] Remove isObject check from runtime ^KT-57926 Fixed
2023-07-03 13:19:43 +00:00
Sergej Jaskiewicz
9fcdc10019
[IR] Reorder parameters in IrFactory#createValueParameter
...
This is to prepare for IrFactory auto-generation (KT-59308).
2023-06-30 12:41:02 +00:00
Sergej Jaskiewicz
3f6420c5b9
[IR] Move IrFactory#createExpressionBody overloads to extension methods
...
This is to prepare for IrFactory auto-generation (KT-59308).
2023-06-30 11:06:09 +00:00
Sergej Jaskiewicz
7b77ec9930
[IR] Reorder parameters in IrFactory#createFunction
...
This is to prepare for IrFactory auto-generation (KT-59308).
2023-06-28 10:13:09 +00:00
Dmitriy Dolovov
4c0583e415
[IR] Two modes of signature rendering
...
^KT-59486
2023-06-26 15:59:31 +00:00
Artem Kobzar
64158a8a2f
[K/JS] Add file-to-file compilation ^KT-6168 Fixed
2023-06-22 18:23:45 +00:00
Sergej Jaskiewicz
3a30d74096
[IR] Add the description field to CommonIdSignature
...
This field shall be used for storing a human-readable representation
of the declaration, that would be a mangled name for now.
This field is not yet serialized. Serialization will be implemented in
follow-up commits.
See KT-59486
2023-06-20 15:31:45 +00:00
Artem Kobzar
039b5fca7a
[K/JS] Use declared upper-bound types for parameters inside inlined functions body, instead of the provided types
2023-06-20 12:01:28 +00:00
Artem Kobzar
66bdb9ce79
[K/JS] Fix private constructor delegating inside single class with ES6 mode ^KT-59335 Fixed
2023-06-20 11:07:08 +00:00
Abduqodiri Qurbonzoda
295fdc36ce
Enum.valueOf throws inconsistent exception across multiple platforms #KT-35116
2023-06-16 22:18:20 +00:00
Alexander Korepanov
fc898c7620
[JS IR] Use type upper bounds for calculating function signatures
...
^KT-59239 Fixed
2023-06-14 14:57:15 +00:00
Abduqodiri Qurbonzoda
193aa0f935
Align the Boolean.hashCode() value across platforms
...
Boolean.hashCode() should return 1231/1237 for true/false correspondingly.
As a part of efforts to stabilize Native stdlib.
2023-06-14 08:19:46 +00:00
Alexander Korepanov
b04848d179
[JS IR] Drop pirLowerings lowering list
2023-06-08 07:31:43 +00:00
Alexander Korepanov
97620030c6
[JS IR] Rollback PL hacks from JS IR IC infra
...
^KT-57347 related
2023-06-06 09:27:57 +00:00
Alexander Korepanov
fab8a101bb
[JS IR] Track PL stubs in IC infra
...
^KT-57347 fixed
2023-06-06 09:27:57 +00:00
Alexander Korepanov
aef8ece123
[JS IR] Refactor signature serializer in JS IR IC infra
2023-06-06 09:27:57 +00:00
Alexander Korepanov
bb72a8bcb7
[JS IR] Minor style fixes in JS IR IC infra
2023-06-06 09:27:57 +00:00
Ivan Kylchik
b9856320cf
[IR] Rename fqName to packageFqName for IrPackageFragment
2023-06-02 16:38:04 +00:00
Artem Kobzar
bfd57fd2df
[K/JS, K/Wasm] Optimize simple objects declaration and usage ^Fixed KT-58797
2023-06-02 14:23:40 +00:00
Nikolay Lunyak
70605c84df
[FIR Native] KT-58549: Get rid of the builtin provider
...
According to
`FirNativeCodegenBoxTestGenerated.testNestedClassesInAnnotations`,
the annotation
`kotlin.internal.PlatformDependent` is
unresolved reference.
^KT-58549 Fixed
2023-06-01 10:27:54 +00:00
Alexander Korepanov
8066f1b7d2
[JS IR] Do not copy interface method if base class inherits it
...
^KT-58599 Fixed
2023-05-30 08:22:43 +00:00
Artem Kobzar
669efc781d
[K/JS] Import @JsModule declarations without asterisk
2023-05-11 12:39:57 +00:00
Alexander Korepanov
1920bbde07
[K/JS] Enable partial linkage tests
2023-05-11 12:37:01 +00:00
Sergej Jaskiewicz
93d1932ccb
[IR] Make IrReturnTargetSymbol a sealed interface
2023-05-10 11:51:26 +00:00
Sergej Jaskiewicz
1a371350ea
[IR] Make IrClassifierSymbol a sealed interface
2023-05-10 11:51:25 +00:00
Igor Chevdar
f90db20512
[K/N][caches] Added klib hash computing and storing
2023-05-10 08:37:32 +00:00
Anna Kozlova
366c67a668
extract StandartNames.NAME constant
2023-05-09 07:36:10 +00:00
Evgeniy.Zhelenskiy
bf5fa61ffb
[IR] Unify MFVC bridge redirection, fix related bugs, support MFVC overriding functions with default parameters
...
#KT-1179
2023-05-04 16:44:18 +00:00
Alexander Korepanov
97024edf8a
[JS IR] Replace canonicalPath with absolutePath
...
Since canonicalPath is slow, replace it with
absolutePath in SourceMaps and CompilationOutputs.
^KT-58187 Fixed
2023-05-03 10:39:40 +00:00
Pavel Kunyavskiy
f55fd481e9
[K/N] Refactor default argument lowering to avoid boxing
...
Current inline classes API is not compatible between different backends.
So implementing common function required for this optimization
was not possible in Native backend.
So, common default arguments lowering was refactored to make bigger
piece of code replaceable in backends.
^KT-57860
2023-05-01 13:04:21 +00:00
Zalim Bashorov
bd852e87ab
[Wasm] Add an option to dump declaration IR sizes to file
2023-04-25 19:44:03 +02:00
Zalim Bashorov
3c343e3074
[Wasm, JS] Minor: make description non-nullable
2023-04-25 19:44:02 +02:00
Zalim Bashorov
62b21ac078
[Wasm] Add an option to dump reachability info to file
2023-04-25 19:44:02 +02:00
Artem Kobzar
27b103e2ca
[K/JS] Eliminate duplication of init block inside exported ES-classes ^KT-58246 Fixed
2023-04-25 16:21:08 +00:00
Alexander Korepanov
81b591ed21
[JS IR IC] Interface default implementations affect IC hash
...
Adding or removing a method or property with
a default implementation to an interface should
invalidate all children: we must regenerate JS code for them
^KT-56237 Fixed
2023-04-25 15:34:22 +00:00
Artem Kobzar
9bcfd093c5
[K/JS] Remove super keyword insertion if the body of method was moved into another place (private methods, lambdas, coroutines) ^KT-57990 Fixed
2023-04-24 13:54:36 +00:00
Alexander Korepanov
898ed7658a
[JS IR] Update list of config settings affecting IC invalidation
2023-04-19 15:43:22 +00:00
Artem Kobzar
33c5068b79
[K/JS] Rework IR deserialization and lowering phases to consume less memory
2023-04-19 13:10:19 +00:00