Ilmir Usmanov
7579be6c68
Generate CHECKCAST after ACONST_NULL in coroutines
...
If we do not do this, the state-machine builder will not know the type
of the ACONST_NULL, defaulting to Object, leading to VerifyError.
Alternatively, we could use LVT to deduce the type, but getting types
from LVT is something I got rid of long time ago, and I have no desire
to return it back.
Generating CHECKCAST hints the state-machine builder the type of the
variable avoiding the issue of VerifyError. However, this CHECKCAST
replaces StrictBasicValue.NULL_VALUE with BasicValue in
OptimizationBasicInterpreter. To preserve optimization on not-spilling
known nulls, introduce BasicValues, which represent typed nulls and
create BasicInterpreter, which is aware of them. This way we have the
best of two worlds - we do not spill known nulls, and we know the type
of ACONST_NULL.
#KT-51718 Fixed
2022-03-30 14:27:29 +00:00
..
2021-11-17 15:26:38 +03:00
2022-02-25 11:46:27 +00:00
2021-11-20 03:37:31 +03:00
2022-03-08 14:19:37 +01:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-20 03:37:31 +03:00
2021-12-01 16:50:16 +03:00
2021-12-07 21:33:28 +03:00
2020-05-28 18:00:35 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2022-03-30 14:27:29 +00:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-23 13:49:45 +01:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2020-05-09 21:11:40 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2022-02-01 13:12:49 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-12-06 17:29:59 +01:00
2021-12-16 06:40:22 +00:00
2022-03-30 14:27:29 +00:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-12-13 14:13:34 +00:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-20 03:37:31 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2020-08-10 10:16:24 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00
2021-11-17 15:26:38 +03:00