Dmitry Petrov
b03c9b6fc6
JVM_IR additional tests for indy lambda serialization
2021-10-23 11:21:27 +03:00
Dmitry Petrov
1dbbe22c8c
JVM_IR serializable indy method references
2021-10-23 11:21:25 +03:00
Dmitry Petrov
a213dad9ab
JVM_IR add more tests for specialized generics and reification
2021-10-12 15:56:38 +03:00
Dmitry Petrov
0098103376
JVM_IR minor: update test
2021-10-12 15:56:36 +03:00
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
pyos
c522543e44
FIR: mute a blackbox test that fails due to another case of #3747
2021-09-06 13:11:17 +03:00
Dmitry Petrov
68c3f30aa7
JVM_IR KT-47510 indy callee parent is a package fragment, not a class
2021-06-29 17:00:31 +03:00
Dmitry Petrov
107e71acb0
Minor: fix Android tests
2021-06-03 13:05:23 +03:00
pyos
4128d27510
JVM_IR: do not use invokedynamic for inline fun references
2021-06-03 13:05:23 +03:00
Mads Ager
5d53d34d85
Fix regression test for KT-46962.
2021-06-03 13:05:23 +03:00
Mads Ager
0b5ec5535c
[JVM_IR] Add String.plus(Any) to intrinsics list.
...
This filters it out for use in SAM wrapper generation with
invoke-dynamic.
The intrinsic is not actually used for code generation so
it is added to the list of intrinsics that should have been
lowered away before codegen.
^KT-45779 Fixed
2021-06-03 00:04:47 +03:00
Mads Ager
886ce055f5
[JVM_IR] Do not use invoke-dynamic for targeting inline-only methods.
...
Fixes https://youtrack.jetbrains.com/issue/KT-46962
2021-05-31 18:11:50 +03:00
Dmitry Petrov
ba00709e4d
JVM_IR KT-46839 lower varargs for *arrayOf function references
2021-05-21 22:06:52 +03:00
Dmitry Petrov
c0fbdb1535
JVM_IR KT-46840 don't generate special function references with indy
2021-05-20 21:13:17 +03:00
Dmitry Petrov
851980e36f
JVM_IR KT-45103 optimize direct invoke for lambdas and callable refs
2021-05-18 22:20:12 +03:00
Dmitry Petrov
ac0aaff611
JVM_IR KT-46562 don't use LambdaMetafactory for Serializable SAMs
...
TODO support serializable lambdas creation with LambdaMetafactory
2021-05-10 14:54:14 +03:00
Dmitry Petrov
83e3a702c5
JVM_IR KT-46408 properly map fake overrides in method handles
2021-04-30 22:24:02 +03:00
Dmitry Petrov
72804d2e8c
JVM_IR KT-45779 don't generate intrinsic method refs via invokedynamic
2021-04-30 12:45:11 +03:00
Dmitry Petrov
46d5e974df
JVM_IR KT-46160 don't use LambdaMetafactory for mutifile class members
2021-04-19 19:32:34 +03:00
Dmitry Petrov
7f4da93cc3
JVM_IR KT-45998 protected companion object member accessors with indy
2021-04-19 15:41:21 +03:00
Dmitry Petrov
9a4a39e680
JVM_IR KT-45998 fix protected companion object member accessors
...
Also, make sure it works with indy-based SAM conversions.
2021-04-19 15:41:19 +03:00
Dmitry Petrov
f59b49db68
JVM_IR KT-45967 generate accessor for argument of indy intrinsic
...
TODO handle inaccessible constructors gracefully
2021-04-12 17:36:24 +03:00
Dmitry Petrov
162363a324
JVM: CHECK_BYTECODE_TEST directive + use it in INVOKEDYNAMIC tests
2021-04-12 16:43:15 +03:00
Dmitry Petrov
ed88aa43a4
JVM_IR KT-45868 look for parent for delegating lambda in scope stack
2021-04-08 23:49:59 +03:00
Dmitry Petrov
466e7b60b0
JVM_IR fix receiver type for fake overrides
2021-03-29 19:04:42 +03:00
Dmitriy Novozhilov
7dc3be3b9b
[FIR2IR] Replace star projections with upper bounds for SAM conversion types
2021-03-24 12:56:15 +03:00
Dmitry Petrov
9e30ddd12e
JVM_IR KT-45581 generate H_INVOKEINTERFACE for interface method handles
2021-03-19 18:57:21 +03:00
Dmitry Petrov
737fbe271f
JVM_IR Do not generate generic signatures for lifted lambda methods
2021-03-10 21:04:11 +03:00
Dmitry Petrov
387d84f826
JVM_IR indy-SAM: KT-45069 box lambda 'Unit' return type if needed
2021-02-20 15:07:24 +03:00
Dmitry Petrov
c629ba5a3c
JVM_IR indy-SAM: function reference to Java interface
2021-02-19 12:04:30 +03:00
Dmitry Petrov
6d019d9544
JVM_IR indy-SAM on functional expression
2021-02-17 22:18:06 +03:00
Dmitry Petrov
56a104dda9
JVM_IR KT-44974 fix SAM-converted capturing extension lambda
2021-02-16 19:51:59 +03:00
Mikhael Bogdanov
f493766563
Add IR tests to Android codegen test
2021-02-15 11:24:10 +01:00
Dmitry Petrov
5013344bc4
JVM_IR nullability assertions test for indy lambdas
...
KT-44278 KT-26060 KT-42621
2021-02-12 16:52:32 +03:00
Dmitry Petrov
afeb7e18cd
JVM_IR indy: fix non-null assertions on indy lambda parameters
...
KT-44278 KT-26060 KT-42621
2021-02-12 16:52:31 +03:00
Dmitry Petrov
052f6929c9
JVM_IR indy SAM conversions: update tests
...
KT-44278 KT-26060 KT-42621
2021-02-12 16:52:30 +03:00
Dmitry Petrov
3ebeca5852
JVM_IR: use indy SAM conversions in jvmTarget 1.8+, fix bridges
...
KT-44278 KT-26060 KT-42621
2021-02-12 16:52:30 +03:00
Mikhail Glukhikh
7050af9b79
FIR2IR: use invariant projections for SAM_CONVERSION types
2021-02-11 11:48:34 +03:00
Dmitry Petrov
ab20a8ffff
JVM_IR indy-lambdas: minor updates and fixes
...
KT-44278 KT-26060 KT-42621
2021-02-03 14:16:25 +03:00
Dmitry Petrov
088448043a
JVM_IR indy-lambdas: don't use indy for big arity lambdas
...
KT-44278 KT-26060 KT-42621
2021-02-03 14:16:24 +03:00
Dmitry Petrov
d94912ed62
JVM_IR indy-lambdas: initial implementation and tests
...
KT-44278 KT-26060 KT-42621
2021-02-03 14:16:22 +03:00
Mikhael Bogdanov
9f9c8e3d77
Mute stream api test on Android
2021-01-29 18:22:16 +01:00
Dmitry Petrov
5d7dc5fa39
JVM_IR indy-SAM conversions: minor updates
...
See: KT-44575 KT-44577
KT-44278 KT-26060 KT-42621
2021-01-29 12:59:48 +03:00
Dmitry Petrov
f34224ecee
JVM_IR indy-SAM conversions: tests for function references equality
...
(SAM conversion using LambdaMetafactory is not used for function refs).
KT-44278 KT-26060 KT-42621
2021-01-29 12:59:48 +03:00
Dmitry Petrov
f0abd8bc68
JVM_IR indy-SAM conversions: prohibit in crossinline lambdas
...
KT-44278 KT-26060 KT-42621
2021-01-29 12:59:47 +03:00
Dmitry Petrov
ad1d80d700
JVM_IR indy-SAM conversions: add more tests
...
KT-44278 KT-26060 KT-42621
2021-01-29 12:59:47 +03:00
Dmitry Petrov
98b0c07b18
JVM_IR indy-SAM conversions: inline funs and lambdas
...
KT-44278 KT-26060 KT-42621
2021-01-29 12:59:47 +03:00
Dmitry Petrov
4da2f3d9d4
JVM_IR indy-SAM conversions: use old scheme for suspend funs
...
KT-44278 KT-26060 KT-42621
2021-01-29 12:59:46 +03:00
Dmitry Petrov
1f16b96796
JVM_IR indy-SAM conversions: inline classes
...
KT-44278 KT-26060 KT-42621
2021-01-29 12:59:46 +03:00