Ivan Kochurkin
c89770c450
[IR] Consider extension receivers during expect functions actualization
...
^KT-56199 Fixed
2023-02-01 11:42:45 +00:00
Kirill Rakhman
feb6fd0e0d
Revert "[FIR2IR] Temporary fix of createIrEnumEntry"
...
This reverts commit c9a8f433fb .
KT-54079
2023-01-31 15:40:24 +00:00
Nikita Nazarov
fe5a8f664a
Add debug information for inline function parameters ( #5050 )
...
Add debug information for inline function parameters
Previously during debugging Kotlin/Native applications you couldn't inspect the inline function or inline lambda parameters. This happened because the debug information for them wasn't generated at all. To fix this issue we have to store the information about which expressions were inlined instead of which parameters. This commit adds a new mapping, which allows storing the required information during the inlining phase. The mapping is then reused during the bitcode generation phase to add the debug information for inline function parameters.
^KT-55440
2023-01-31 11:02:48 +01:00
Pavel Kunyavskiy
cb655d2d37
[K/N] Fix work with adapted function references
...
Their parsing was totally incorrect for K2, and sometimes incorrect for
K1. After this commit it uses same code as for JVM.
^KT-55462
2023-01-30 19:44:49 +00:00
Mads Sig Ager
7c3cc1d5c1
[JVM_IR] Limit inner class attributes to types in class file ( #5081 )
...
* [JVM_IR] Limit inner class attributes to types in class file
Inner class attributes should only be recorded for types that
are materialized in the result class file. In particular, we
should not emit inner classes attributes for types that appear
only in fake overrides. We do map these types to track the
fake overrides for JVM signature clashes but they are not
materialized in the class file.
^KT-56104 Fixed
* [JVM_IR] Consistently pass around materialized boolean in mapType.
2023-01-30 14:11:07 +01:00
Pavel Mikhailovskii
f308f33f9f
KT-56154 Fix PropertyReferenceLowering for Java synthetic properties
...
Co-authored-by: Alexander Udalov <Alexander.Udalov@jetbrains.com >
2023-01-28 10:38:09 +00:00
Zalim Bashorov
885381dd63
[Wasm] Change externRefToAny to make it compatible with SpiderMonkey and V8
...
It's hard to achieve that without implementing part of `externRefToAny` using an intrinsic. It should be rewritten when all VMs and tools update to the latest spec.
Also, stop using (deprecated) instructions unsupported by SpiderMonkey.
#KT-56166 In-Progress
2023-01-27 17:57:50 +01:00
Zalim Bashorov
d1855371a0
[Wasm] Don't wrap single null expression into composite in WasmNullCoercingLowering
...
Otherwise, it breaks check/assert inside DeclarationGenerator::visitField (DeclarationGenerator.kt:458)
#KT-56166 In-Progress
2023-01-27 17:57:50 +01:00
Zalim Bashorov
ca79711610
[Wasm] Generate .mjs compatible with other standalone js & wasm VMs: SpiderMonkey and JavaScriptCore in addition to V8
...
#KT-56166 In-Progress
2023-01-27 17:57:50 +01:00
Zalim Bashorov
1d793f7bec
[Wasm] Revert a7ed496a and few fixes to make Kotlin/Wasm compatible with Firefox
...
Revert changes as soon as the bug is fixed https://bugzilla.mozilla.org/show_bug.cgi?id=1811932
a7ed496a "[WASM] Use wasm bottom types for Nothing?"
#KT-56166 In-Progress
2023-01-27 17:57:49 +01:00
Ilya Goncharov
1150ec6882
[JS] Implementation dependencies for JS klibs
...
^KT-56158 fixed
2023-01-27 13:31:59 +00:00
Ivan Kylchik
91f68f0e17
Fix bug with wrong cast in CommonProxy
2023-01-27 10:52:56 +00:00
Sergey Bogolepov
0b4db4beca
[K/N] Fix ALL phases value
2023-01-26 14:32:48 +00:00
Sergey Bogolepov
32a265a7eb
[IR] Lift restrictions on phase prerequisites
...
Allow depending on phases of different "types".
2023-01-26 14:32:44 +00:00
Sergey Bogolepov
7cc2947c57
[K/N] Fix KT-56132
...
Add a secondary constructor for compatibility purposes
2023-01-25 07:21:19 +00:00
Alexander Korepanov
1ec88ff560
[JS IR] Enable IR dump for IC invalidation tests
...
Support 'fd.kotlin.js.debugMode' property in IC invalidation tests.
2023-01-24 09:35:15 +00:00
Ilya Goncharov
7ae85ed68e
[JS IR] Module descriptors depends on each other
2023-01-23 16:16:48 +00:00
Roman Efremov
14b4cdc7c4
Write "hasEnumEntries" flag into metadata when feature enabled
...
^KT-53929 Fixed
2023-01-23 12:53:04 +01:00
Sergey Bogolepov
5bd405856f
[IR] Pass input value to AbstractNamedCompilerPhase.runAfter
...
It is needed for the K/N dynamic compiler driver where phase input
might be required for actions performed after its execution.
2023-01-20 13:33:07 +00:00
Sergey Bogolepov
c22285f824
[IR] Remove unused Ir.irModule property
...
It is required for the Native backend refactoring
where `Context` does not contain a reference for any
particular IrModuleFragment.
2023-01-20 13:33:06 +00:00
Sergej Jaskiewicz
1f76d39e66
[IR] Make IrTypeArgument a sealed interface
2023-01-20 10:58:28 +00:00
Igor Chevdar
bd24fc4f0c
[IR] Don't wrap KotlinExceptionWithAttachments
...
#KT-56015 Fixed
2023-01-18 15:47:48 +00:00
Artem Kobzar
c4eca5f2df
[K/JS] Exclude componentN methods from JsExport
2023-01-17 21:18:50 +00:00
Zalim Bashorov
ab1cbc49dd
[Wasm] Minor: move buildUnreachable* helpers to more specific module
2023-01-17 19:37:05 +01:00
Zalim Bashorov
37879e18d9
[Wasm] Pass location instead of fileEntry to generateConstExpression
2023-01-17 19:37:05 +01:00
Zalim Bashorov
aa8a0fd7d7
[Wasm] Remove LocationHolder and helper functions
...
It turned out that dedicated scoping function for locations are not so useful.
Now, if you want to scope a location use functions from stdlib, like `let`.
2023-01-17 19:37:05 +01:00
Zalim Bashorov
0d203d190e
[Wasm] Remove buildInstr without location and fix usages
2023-01-17 19:37:05 +01:00
Zalim Bashorov
42f2edd282
[Wasm] Require location for buildThrow and fix all usages
2023-01-17 19:37:05 +01:00
Zalim Bashorov
1244cd1259
[Wasm] Require location for buildBr* and fix all usages
2023-01-17 19:37:05 +01:00
Zalim Bashorov
95c84d5d3f
[Wasm] Require location for buildDrop and fix all usages
2023-01-17 19:37:05 +01:00
Zalim Bashorov
6eba0392db
[Wasm] Require location for buildRefNull and fix all usages
2023-01-17 19:37:05 +01:00
Zalim Bashorov
12854af0a2
[Wasm] Require location for buildRefTestStatic and fix all usages
2023-01-17 19:37:05 +01:00
Zalim Bashorov
7bd92bc412
[Wasm] Require location for buildRefCastNullStatic and fix all usages
2023-01-17 19:37:05 +01:00
Zalim Bashorov
158a307334
[Wasm] Require location for buildStructSet and fix all usages
2023-01-17 19:37:05 +01:00
Zalim Bashorov
e7dc443c18
[Wasm] Require location for buildStructGet and fix all usages
2023-01-17 19:37:04 +01:00
Zalim Bashorov
530438dfcb
[Wasm] Require location for buildStructNew and fix all usages
2023-01-17 19:37:04 +01:00
Zalim Bashorov
3967bd2755
[Wasm] Require location for buildSetGlobal and fix all usages
2023-01-17 19:37:04 +01:00
Zalim Bashorov
65e1b53027
[Wasm] Require location for buildGetGlobal and fix all usages
2023-01-17 19:37:04 +01:00
Zalim Bashorov
00d0c38fc3
[Wasm] Require location for buildSetLocal and fix all usages
2023-01-17 19:37:04 +01:00
Zalim Bashorov
0b59ef58dc
[Wasm] Require location for buildGetLocal and fix all usages
2023-01-17 19:37:04 +01:00
Zalim Bashorov
e5e786c265
[Wasm] Use more specific types in generateExpression and generateStatement
...
Also, rename: `generateStatement` -> `generateAsStatement`
2023-01-17 19:37:04 +01:00
Zalim Bashorov
ce265c049a
[Wasm] Require location for buildUnreachable and fix all usages
2023-01-17 19:37:04 +01:00
Zalim Bashorov
36d4e29253
[Wasm] Require location for buildConstI32Symbol and fix all usages
2023-01-17 19:37:04 +01:00
Zalim Bashorov
e69bbdd5b4
[Wasm] Require location for buildConstF32 & buildConstF64 and fix all usages
2023-01-17 19:37:04 +01:00
Zalim Bashorov
332aca10b0
[Wasm] Require location for buildConstI64 and fix all usages
2023-01-17 19:37:04 +01:00
Zalim Bashorov
f2f4c63720
[Wasm] Require location for buildConstI32 and fix all usages
2023-01-17 19:37:04 +01:00
Zalim Bashorov
cdc1d66b1f
[Wasm] Require a description on each usage of SourceLocation.NoLocation
2023-01-17 19:37:04 +01:00
Zalim Bashorov
61440c74d5
[Wasm] Require location for buildCall and fix all usages
2023-01-17 19:37:03 +01:00
Artem Kobzar
71486a321c
[K/JS] Add support of compilation with ES-classes
2023-01-17 18:14:17 +00:00
Alexander Korepanov
8492791bf3
[JS IR IC] Check the unbound symbols in the IC infrastructure
2023-01-17 15:48:37 +00:00