Dmitry Petrov
005d3b1f6f
JVM_IR pass reified type parameters in indy SAM conversion proxy
2021-10-12 15:56:33 +03:00
Dmitry Petrov
40fe67880b
JVM_IR wrap function into a proxy if indy SAM-conversion becomes valid
2021-10-12 15:56:31 +03:00
Svyatoslav Kuzmich
15acc412ba
[Wasm] Update testdata after coroutines support
2021-10-12 08:42:00 +03:00
Roman Artemev
686e5e7f2b
[TEST] Fix test data.
...
Due to JS IR runner doesn't override stdout test fails.
Remove using stdout from test.
2021-10-11 21:19:28 +03:00
Sergej Jaskiewicz
360c0170be
fixup! Mute the test on WASM
2021-10-11 15:57:53 +00:00
Sergej Jaskiewicz
9ee8f1e961
[JS IR] Enable StringTrimLowering for JS IR backend
2021-10-11 15:57:53 +00:00
Ilmir Usmanov
5a47eaf215
Fix @JvmInline value class tests for JS BE
2021-10-11 12:09:52 +03:00
zhelenskiy
1da46586bd
Replaced deprecated inline classes with JvmInline value classes in tests
2021-10-11 12:09:51 +03:00
Ilya Goncharov
b0aefd543a
[JS IR] Fix offsets and add new test
...
[JS IR] Use TypeSubstitutor for full substitution of types
- adding new tests
[JS IR] Commonize context and use in wasm
[JS IR] Add test with receiver with callable reference
[JS IR] Add prerequisites around inlining and callable references
[JS IR] Review fixes
- Add test with bounded type parameter
- Remove redundant casts
- Use offsets for synth function
- Correct traversing
[JS IR] Not use origin for not inlined function reference
[JS IR] Move util into common place
[JS IR] Fix offsets
[JS IR] Add type parameter argument and using value in test
[JS IR] Wrap inlined callable references with reified parameters
[JS IR] Add test on callable reference inlined fun
Merge-request: KT-MR-4722
2021-10-11 09:02:08 +00:00
Artem Kobzar
c9510af2c7
test(KT-47806): add tests for the uncovered behavior for generic companion function extensions.
2021-10-11 08:56:52 +00:00
Ilmir Usmanov
f760cd6736
Make CHECKCAST Object not break tail-call optimization
...
Since CHECKCAST Object does nothing for return value of suspend
function - the function returns references only, this is safe.
#KT-49157 Fixed
2021-10-11 06:40:26 +00:00
Dmitry Petrov
31d7d341d4
JVM_IR KT-41214 minor: update testData
2021-10-09 17:07:37 +03:00
Dmitriy Novozhilov
63d841247c
[FIR2IR] Properly setup IrClass.sealedSubclasses
2021-10-09 17:07:36 +03:00
Artem Kobzar
dca4a8e722
fix(KT-45056, KT-47516): use enum as an IR class instead of enum entity class.
2021-10-08 16:21:49 +00:00
Ivan Kochurkin
6c7c1a7a0d
[FIR] Convert REDUNDANT_MODIFIER, DEPRECATED_MODIFIER_PAIR to warnings ^KT-49073 Fixed
2021-10-08 18:52:18 +03:00
Roman Artemev
876a0d9b7b
[IR] Add test about default arguments in expect declaration for HMMP
...
KT-45542
2021-10-08 16:07:10 +03:00
Dmitry Petrov
27860ef008
JVM_IR KT-49136 don't optimize null checks on fields and calls
2021-10-08 08:55:24 +03:00
Svyatoslav Kuzmich
9ef899ef10
[Wasm] Reuse Callable reference and SAM lowerings from JS
2021-10-08 07:24:41 +03:00
Svyatoslav Kuzmich
1ed2748334
[Wasm] Generate [K][Suspend]FunctionN on demand and support big arity
2021-10-08 07:24:41 +03:00
Svyatoslav Kuzmich
aa5f98f919
[JS] Remove KJS_WITH_FULL_RUNTIME for tests that already have WITH_RUNTIME
2021-10-07 22:36:18 +03:00
Svyatoslav Kuzmich
e18980b7ad
[Wasm] Clean wasm testdata annotations
2021-10-07 22:36:17 +03:00
Denis.Zharkov
f5da8957b4
FIR2IR: Support not found dependencies classes
...
^KT-49119 Relates
2021-10-07 17:26:27 +03:00
Roman Artemev
7eb0fd4762
[JS IR] Unmute fixed tests
2021-10-07 16:00:50 +03:00
Roman Artemev
ed8e7c754d
[IR] Add test for internal fake overrides from friend module
2021-10-07 16:00:48 +03:00
Ilya Goncharov
a0fb60f201
[JS IR] Use label for continue loop in tailrec
...
^KT-46218 fixed
2021-10-06 18:40:34 +00:00
Dmitry Petrov
3d64c91375
PSI2IR KT-49053 skip fake overrides with unresolved types in signature
2021-10-06 16:23:08 +03:00
pyos
1c3a20fab9
JVM_IR: generate $suspendImpl in interfaces as public
...
The visibility was the cause of KT-44533; not generating `$suspendImpl`
at all makes `super` calls impossible.
^KT-49106 Fixed
2021-10-06 15:03:51 +02:00
Ilmir Usmanov
27081231d9
Use original instead of lowered function to retrieve toString-impl
...
in string concatenation lowering. Otherwise, inliner tries to get
body of already lowered function, failing.
#KT-48284 Fixed
2021-10-06 11:12:26 +00:00
Sergej Jaskiewicz
65d40c2253
[JS IR] Make tests that use directives pass with IR BE
2021-10-06 09:23:50 +00:00
Roman Artemev
1d39b37c90
[IR] Add test describes case from KT-48912
...
It actually doesn't check behaviour because we don't have proper infra
for that but explains a bit a problem for further investigations.
2021-10-06 03:47:17 +03:00
Nikolay Lunyak
e5d5e5be44
[FIR] Reorder scopes for KT-34822
2021-10-05 19:37:53 +03:00
Dmitry Petrov
1dae2aca4c
JVM_IR KT-48954 prohibit indy reference creation in some cases
2021-10-05 15:38:46 +03:00
pyos
337cbeded1
JVM_IR: do not move receivers on functions with inline class parameters
...
^KT-48993 Fixed
2021-10-05 13:34:32 +02:00
Denis.Zharkov
0a3c950e7f
FIR: Fix resolution scope of constructor delegation calls
2021-10-05 13:48:53 +03:00
Igor Chevdar
232608e300
[box-tests] Added a test
2021-10-04 14:34:56 +00:00
Svyatoslav Kuzmich
fa3e75463e
[Wasm] Support throwIAE and throwNoBranchMatchedException
...
Add a couple of test stubs
Unmute tests
2021-10-02 06:14:36 +00:00
Svyatoslav Kuzmich
6eb81517a0
[Wasm] Unmute passed Wasm tests
2021-10-02 06:14:35 +00:00
Svyatoslav Kuzmich
c88cde2f8b
[Wasm] DONT_TARGET_WASM_BACKEND => IGNORE_BACKEND in testdata
2021-10-02 06:14:35 +00:00
Roman Artemev
fcf44be785
[JS IR] Add test for KT-46225
2021-10-01 23:36:41 +03:00
Roman Artemev
0621b79505
Add test for KT-46225
2021-10-01 23:36:40 +03:00
Roman Artemev
38f21b7139
[JS IR] Add test to check proper type substitution
2021-10-01 23:02:24 +03:00
Svyatoslav Kuzmich
ab9a23cbfa
[Wasm][Stdlib] Reuse K/N collections and StringBuilder
2021-10-01 17:18:49 +03:00
Ilya Goncharov
8bd009c5fd
[JS IR] Eager initialization on side effect test
2021-10-01 13:32:13 +00:00
Ilya Goncharov
4c0045b136
[JS IR] Add test on initialization calling only once
2021-10-01 13:32:11 +00:00
Ilya Goncharov
c2cf221965
[JS IR] Add annotation for eager property initialization
2021-10-01 13:32:10 +00:00
pyos
cb505d1101
IR: keep capture sets the same when copying objects for tailrec funs
...
tailrec f(x: () -> T = { y }, y: T = ...) = f()
-- at the call we know that in `x` the observed value of `y` is `null`,
but the constructor should still have a single parameter.
2021-10-01 14:37:54 +02:00
pyos
a4d1358e57
FIR: permit tailrec calls in inline lambdas
2021-10-01 14:37:54 +02:00
pyos
2afab62dae
JVM_IR: optimize tailrec calls in inline lambdas
...
^KT-48600 Fixed
2021-10-01 14:37:54 +02:00
pyos
7c63d50d1c
IR: create more temporary vals when optimizing tailrec calls
...
This is needed so that SharedVariablesLowering doesn't get confused, and
SharedVariablesLowering should run after TailrecLowering to properly
optimize tailrec calls in inline lambdas.
2021-10-01 14:37:54 +02:00
pyos
b2315a4a05
IR: optimize f(); return in tailrec fun f(): Unit
...
It's equivalent to `return f()`.
2021-10-01 14:37:54 +02:00