pyos
34878d17eb
JVM: be more careful when removing unused constants
...
1. if an argument of a `pop` cannot be removed, then all other potential
arguments of that `pop` can't be removed either, and the same applies
to other `pop`s that touch them;
2. the same is true for primitive conversions, but this is even trickier
to implement correctly, so I simply did the same thing as with
boxing operators: replace the conversion itself with a `pop` and keep
the argument as-is.
Somehow this actually removes *more* redundant primitive type conversions
than the old code in a couple bytecode text tests, so I've patched them
to kind of use the value, forcing the instructions to stay.
#KT-46921 Fixed
2021-05-27 12:24:22 +02:00
..
2021-05-27 12:41:16 +03:00
2021-05-20 17:24:14 +03:00
2021-05-18 22:20:12 +03:00
2021-05-18 22:20:12 +03:00
2021-05-21 13:53:55 +03:00
2021-05-25 22:29:58 +03:00
2021-04-30 17:59:38 +03:00
2021-05-25 19:23:30 +03:00
2021-05-26 15:23:19 +02:00
2021-04-19 16:05:12 +02:00
2021-05-18 22:20:12 +03:00
2021-05-18 22:20:12 +03:00
2021-02-20 10:31:26 +03:00
2021-05-14 15:38:09 +03:00
2020-12-11 06:36:42 +01:00
2021-05-25 19:23:27 +03:00
2021-05-18 22:20:12 +03:00
2021-02-11 13:50:08 +01:00
2021-01-25 17:08:31 +03:00
2021-04-21 17:24:41 +03:00
2021-05-03 07:43:37 +02:00
2021-05-20 14:40:00 +02:00
2021-05-21 22:28:54 +03:00
2021-05-10 14:26:14 +03:00
2021-05-20 17:24:15 +03:00
2021-04-20 21:24:29 +02:00
2021-01-18 08:28:15 +03:00
2021-05-19 00:52:25 +03:00
2021-05-18 22:20:12 +03:00
2021-03-12 14:36:53 +03:00
2021-05-18 16:55:38 +02:00
2021-03-05 23:46:57 +03:00
2020-11-09 16:04:43 +03:00
2021-04-11 13:54:13 +02:00
2020-11-23 16:05:33 +03:00
2021-02-26 12:51:53 +01:00
2020-11-09 16:04:43 +03:00
2021-05-25 11:38:48 +03:00
2021-05-21 13:53:55 +03:00
2021-05-18 22:20:12 +03:00
2021-05-07 00:53:31 +03:00
2021-02-11 13:50:08 +01:00
2020-11-09 16:04:43 +03:00
2021-05-20 17:24:47 +03:00
2021-05-20 15:58:05 +02:00
2021-05-18 22:20:12 +03:00
2021-03-29 16:17:22 +03:00
2021-05-21 22:06:52 +03:00
2021-02-20 18:27:43 +03:00
2021-04-14 19:17:10 +03:00
2021-02-11 13:50:09 +01:00
2020-11-09 16:04:43 +03:00
2021-04-23 17:58:16 +02:00
2021-05-18 22:20:12 +03:00
2020-12-23 21:50:08 +03:00
2021-02-20 10:59:22 +03:00
2021-04-21 16:18:21 +03:00
2021-05-11 16:26:04 +02:00
2020-11-09 16:04:43 +03:00
2021-05-18 22:20:12 +03:00
2021-05-21 12:49:58 +03:00
2021-01-28 13:19:31 +03:00
2021-01-18 08:28:15 +03:00
2021-02-18 14:44:44 +03:00
2021-05-19 00:52:31 +03:00
2020-11-09 16:04:43 +03:00
2021-04-09 13:06:39 +03:00
2021-02-10 13:02:06 +03:00
2020-11-09 16:04:43 +03:00
2021-05-18 22:20:12 +03:00
2021-05-20 13:46:27 +03:00
2021-05-27 12:24:22 +02:00
2021-05-18 22:20:12 +03:00
2021-02-10 13:02:06 +03:00
2021-05-18 17:38:52 +03:00
2020-12-11 17:51:34 +01:00
2021-04-07 00:23:20 +03:00
2021-05-18 22:20:12 +03:00
2021-05-19 16:23:01 +03:00
2021-04-27 18:39:10 +03:00
2021-04-14 19:18:42 +03:00
2021-02-18 14:44:44 +03:00
2021-05-18 22:20:12 +03:00
2021-04-07 07:49:23 +03:00
2021-02-01 18:29:59 +01:00
2020-11-09 16:04:43 +03:00
2021-04-22 10:53:15 +02:00
2021-03-31 16:40:49 +03:00
2021-04-29 00:33:34 +03:00
2021-02-09 16:04:39 +03:00
2021-05-18 22:20:12 +03:00
2021-05-14 16:20:20 +03:00
2021-02-26 12:27:07 +03:00
2021-05-18 22:20:12 +03:00
2020-12-28 16:50:29 +03:00
2021-05-18 22:20:12 +03:00
2021-05-26 15:23:19 +02:00
2021-02-11 13:50:08 +01:00
2021-02-18 14:44:44 +03:00
2020-12-02 20:53:47 +01:00
2021-05-18 22:20:12 +03:00
2021-03-31 15:57:03 +03:00
2021-05-21 19:36:30 +02:00
2021-01-11 17:20:55 +01:00
2021-05-21 13:53:55 +03:00
2020-11-09 16:04:43 +03:00
2021-05-25 19:23:27 +03:00
2021-04-15 07:59:24 +00:00
2021-04-15 17:11:21 +03:00
2021-04-29 23:52:01 +03:00