Ivan Kylchik
c034edd58d
Disable tail call optimizations for inlined from IR functions
2023-03-14 20:47:40 +00:00
Ivan Kylchik
1e2ae137bf
Slightly change JS test data results in three files
...
This change is caused by previous commit and was extracted
as a separate change not to mix JVM and JS changes
2023-03-14 20:47:40 +00:00
Ivan Kylchik
b31114fa52
Extract new smap creation logic into separate class LineNumberMapper
2023-03-14 20:47:39 +00:00
Ivan Kylchik
bb401c39d9
Add several new SMAP tests
...
Some of them are still failing and suppose to be
fixed later
2023-03-14 20:47:39 +00:00
Ivan Kylchik
32a7633c06
Support smap creation for functions inlined with IR inliner
2023-03-14 20:47:38 +00:00
Ivan Kylchik
d451bc94a2
Separate creation and usage of synthetic accessors
...
This change allow us to inline private declarations
and only after that create synthetic accessors for them.
2023-03-14 20:47:38 +00:00
Ivan Kylchik
6e690f709e
Avoid irGet with Unit value if it is last it IrReturnableBlock
...
This is needed to pass `MethodVerifier` check on JVM backend
2023-03-14 20:47:38 +00:00
Ivan Kylchik
707c5f03b8
Add new "invent name" phase to generate names for regenerated classes
2023-03-14 20:47:37 +00:00
Ivan Kylchik
e159f7f682
Move some file level lowerings to module level
...
This is needed to fix "kt42408" test with enabled
IR inliner.
2023-03-14 20:47:37 +00:00
Ivan Kylchik
795d4bb739
Make regenerated inlined classes public by default
2023-03-14 20:47:37 +00:00
Ivan Kylchik
d9382b2b66
Properly remove duplicated inlined classes using capturedConstructors
2023-03-14 20:47:36 +00:00
Ivan Kylchik
969b0216d4
Support inlining of property reference with non-nullable field
2023-03-14 20:47:36 +00:00
Ivan Kylchik
4baf970d5b
Collect classes for JVM that must be regenerated after IR inline
2023-03-14 20:47:35 +00:00
Ivan Kylchik
41b56e5f16
Add some new utils to work with IrInlinedFunctionBlock
2023-03-14 20:47:35 +00:00
Ivan Kylchik
60702f0f02
Add new filed attributeOwnerIdBeforeInline to IrAttributeContainer
...
This field is null by default, and it is set to current
`attributeOwnerId` when declaration was inlined and must be
generated with new name. In its turn `attributeOwnerId` must be set to
`this` to show that this is actually a new declaration, not a copy.
2023-03-14 20:47:35 +00:00
Ivan Kylchik
163ed20de5
Set original type for expression inlined as arguments
...
This is mainly needed to fix cases like in "kt44429".
2023-03-14 20:47:34 +00:00
Ivan Kylchik
ce6084302f
Add FunctionInlining lowering to JvmLower
2023-03-14 20:47:34 +00:00
Ivan Kylchik
ef78196cbc
Replace all usages of inlineFunctionSymbol with inlineFunction
2023-03-14 20:47:34 +00:00
Ivan Kylchik
1d30a68285
Separate inlined by IR inliner arguments into two categories
...
First category of arguments is those that present at call site, and
second category is for those that are default.
2023-03-14 20:47:33 +00:00
Ivan Kylchik
ebf6e69ef3
Add new IR node IrInlinedFunctionBlock
...
This node will represent inlined in IR function.
2023-03-14 20:47:33 +00:00
Ivan Kylchik
59522a6130
Improve IR inliner to be able to inline property references
2023-03-14 20:47:33 +00:00
Ivan Kylchik
a09a48492b
Set names for tmp vars in FunctionInlining without special symbols
...
This way we drop excess symbols like `<` and `>`. This is need on
JVM to get rid of "dexing error".
2023-03-14 20:47:32 +00:00
Ivan Kylchik
c2fc745d66
Create special copy function in FunctionInlining
...
Semantically this is the same code, but it is easier to read
2023-03-14 20:47:32 +00:00
Svyatoslav Scherbina
ba2e46758d
Fix kotlin-native/backend.native/tests/samples after 82524fd
...
Enable language feature for these tests, because some code relies
on implicit integer coercion there
2023-03-14 19:26:44 +00:00
Alexander.Likhachev
67fc9be3c5
[Gradle] Access the artifact type attribute via non-deprecated API
...
#KT-54447 Fixed
2023-03-14 18:41:24 +00:00
Ilya Goncharov
2de4f471e9
[Gradle, JS] Use default browsers for wasm
...
^KT-56585 fixed
2023-03-14 17:06:35 +00:00
Dmitrii Gridin
b7370f0156
[Test] Add testdata of SLC tests to Test Helper plugin path
2023-03-14 16:09:50 +01:00
Yan Zhulanow
a350deaa4d
[LL API] Support FirScript declarations in declaration providers (KTIJ-21108)
2023-03-14 14:31:53 +00:00
Pavel Kunyavskiy
dc2e072af2
[K/N] Make exception handling in initializers more consistent with jvm
...
^KT-57091
2023-03-14 12:59:14 +00:00
Pavel Kunyavskiy
0506d39d8a
[K/N] Support ignoring test with legacy mm
2023-03-14 12:59:13 +00:00
Pavel Mikhailovskii
0f589dac34
KT-56833 [SLC] Mark accessors of lateinit properties with @NotNull
2023-03-14 12:45:57 +00:00
Ilya Goncharov
7794998113
[Gradle, JS] Use JAR archive task type for js ir
2023-03-14 12:34:19 +00:00
Leonid Startsev
5cf1c01273
Expand type aliases in K2 when checking if serializable class' properties
...
have serializers.
#KT-56594 Fixed
#KT-56480 Fixed
2023-03-14 12:11:32 +00:00
Ilya Goncharov
63e27a9713
[Gradle, JS] Implement own IncrementalSyncTask
2023-03-14 11:16:20 +00:00
Ilya Goncharov
7d2ba28911
[Gradle, JS] Only if with reasons
2023-03-14 11:10:34 +00:00
Ilya Goncharov
9d8e7991a8
[Gradle, JS] Remove redundant fields inside NpmDependency
2023-03-14 11:10:34 +00:00
Ilya Goncharov
df50994f4f
[Gradle, JS] Add documentation of KotlinNpmResolutionManager
2023-03-14 11:10:33 +00:00
Ilya Goncharov
d64e211dca
[Gradle, JS] Remove redundant field
2023-03-14 11:10:33 +00:00
Ilya Goncharov
234ffb4644
[Gradle, JS] Fix naming
2023-03-14 11:10:33 +00:00
Ilya Goncharov
e570f97db2
[Gradle, JS] Chaining build service disallowChanges
2023-03-14 11:10:32 +00:00
Ilya Goncharov
55db7690d8
[Gradle, JS] Remove redundant imports
2023-03-14 11:10:32 +00:00
Ilya Goncharov
1997b4ff43
[Gradle, JS] A bit change of npm resolution manager registering
2023-03-14 11:10:32 +00:00
Ilya Goncharov
5569c37ee3
[Gradle, JS] Fix npm resolution manager declaring
2023-03-14 11:10:31 +00:00
Ilya Goncharov
065b00c3d7
[Gradle, JS] Fix set npmResolutionManager inside YarnPlugin
2023-03-14 11:10:31 +00:00
Ilya Goncharov
b2f416dbbe
[Gradle, JS] Remove requireNodeModules
...
[Gradle, JS] Remove 4 major webpack
[Gradle, JS] Remove webpack 4 related dependencies
[Gradle, JS] How want to see npm dependency
[JS IR] Object factory and remove forceResolve
[Gradle, JS] Object factory to package json producer
[Gradle, JS] Only npm dependencies as required
[Gradle, JS] NodeJsRootPlugin applied once
[Gradle, JS] NodeJsRootPlugin applied once #2
[Gradle, JS] Divide task providers from NodeJsRootExtension
[Gradle, JS] Remove redundant
[Gradle, JS] Fix #1
[Gradle, JS] Fix #2
[Gradle, JS] Fix #3
[Gradle, JS] Fix #4
[Gradle, JS] Fix #5
[Gradle, JS] Fix tests
[Gradle, JS] No objectFactory
[Gradle, JS] Remove archive compat and fs compat
[Gradle, JS] Build service kotlin npm resolution manager
[JS] Build servicify
Build servicify
Build servicify
Fix internal
Tasks requirements as build service
~ try to move from build service
[JS] no nested
[JS] Configuration resolver inside input files
Revert "[JS] Configuration resolver inside input files"
This reverts commit 48536e011a8a341e9cb62fbf8e03a09f2ba115ba.
[JS] nested but only configuration
[JS] packageJsonHandlers serializable
[JS] packageJsonProducer as part of task inputs
[JS] packageJsonProducer
~1
~2
~3
~4
~5
~6
~7
~8
~9
~10
Remove comments
[Gradle, JS] Remove comments
[Gradle, JS] Fix internals and test
[Gradle, JS] Input package json files for root package json
[Gradle, JS] Kotlin npm install always tracked externally
[Gradle, JS] Rename resolution items
[Gradle, JS] Build service with new scheme
2023-03-14 11:10:30 +00:00
Pavel Punegov
7fa7118325
[K/N][test] LLDB tests should run only on host target
...
* Use EnforceHostTarget for the LldbTestGenerated
* Exclude test in provider if run with non-host target
Merge-request: KT-MR-8964
2023-03-14 11:06:51 +00:00
Pavel Punegov
60f43d6d4f
[K/N][test] Use Executors in the New test infra
...
Add RunnerWithExecutor class that uses Executors
Re-use checkers in the new executor
Merge-request: KT-MR-8964
2023-03-14 11:06:51 +00:00
Pavel Punegov
76ab130011
[K/N] Make executors be separate included project
...
This change will make possible use Executors in old, gtest and new
test infrastructures.
Merge-request: KT-MR-8964
2023-03-14 11:06:50 +00:00
Nikolay Lunyak
c105e63bbb
[FIR] KT-57214: Check the annotations "if possible"
...
^KT-57214 Fixed
Merge-request: KT-MR-9170
Merged-by: Nikolay Lunyak <Nikolay.Lunyak@jetbrains.com >
2023-03-14 10:25:02 +00:00
Pavel Kunyavskiy
854506fa9e
[K/N] refactor all function calls to use LlvmCallable machinery
2023-03-14 09:50:00 +00:00