pyos
ad53fc931e
JVM: optimize temporary kotlin.jvm.internal.Refs as well
...
i.e. remove the condition that there must be an LVT entry. Such
temporary `Ref`s can be created, for example, by the JVM_IR backend
if a lambda inlined at an IR level (e.g. argument to `assert`/`Array`)
is the target of a non-local return from a function inlined at bytecode
level (e.g. `run`):
IntArray(n) { i ->
intOrNull?.let { return@IntArray it }
someInt
}
->
val `tmp$0` = IntArray(n)
for (i in 0 until `tmp$0`.size) {
var `tmp$1`: Int
do {
intOrNull?.let {
`tmp$1` = it // causes `tmp$1` to become an IntRef
break
}
`tmp$1` = someInt
} while (false)
`tmp$0`[i] = `tmp$1`
}
2021-02-01 15:51:31 +01:00
..
2020-02-14 14:07:03 +03:00
2020-02-20 11:07:46 +01:00
2020-01-20 16:00:36 +01:00
2021-02-01 11:54:04 +01:00
2020-11-16 15:50:39 +03:00
2020-11-30 15:49:02 +03:00
2021-02-01 15:51:31 +01:00
2020-08-11 15:13:40 +02:00
2020-10-16 19:21:08 +03:00
2020-12-11 06:24:55 +01:00
2020-05-08 11:39:30 +03:00
2020-09-29 19:16:42 +03:00
2020-09-29 10:21:21 +03:00
2020-09-29 10:21:21 +03:00
2020-11-13 09:59:34 +03:00
2020-08-07 09:16:01 +02:00
2021-01-25 17:11:21 +03:00
2020-10-16 12:25:55 +02:00
2020-09-24 07:53:31 +02:00
2020-09-29 10:21:21 +03:00
2019-12-17 12:41:22 +01:00
2020-07-20 22:37:49 +02:00
2020-08-28 20:03:19 +02:00
2020-10-09 21:34:56 +02:00
2021-02-01 11:54:04 +01:00
2020-09-29 10:21:21 +03:00
2020-09-29 12:38:54 +02:00
2021-02-01 11:54:04 +01:00
2020-06-09 11:33:27 +02:00
2020-10-01 17:49:02 +03:00
2020-03-17 22:56:45 +03:00
2020-09-29 10:21:21 +03:00
2019-05-14 20:19:43 +02:00
2021-01-29 12:59:48 +03:00
2020-10-01 17:49:02 +03:00
2020-01-20 19:12:59 +01:00
2020-09-29 19:16:42 +03:00
2020-03-06 17:58:36 +03:00
2020-08-19 11:07:41 +03:00
2020-10-28 11:43:25 +03:00
2020-11-18 13:06:48 +03:00
2020-11-18 13:06:48 +03:00
2021-01-13 19:16:31 +01:00
2020-07-31 19:00:27 +03:00
2021-01-25 17:11:21 +03:00
2020-12-09 10:29:09 +03:00
2020-09-29 10:21:21 +03:00
2021-01-25 17:11:21 +03:00
2019-10-31 11:13:44 +03:00
2020-02-20 14:20:21 +03:00
2020-10-09 21:34:56 +02:00
2021-01-25 17:11:21 +03:00
2019-11-28 08:31:15 +01:00
2021-02-01 11:54:04 +01:00
2019-08-13 14:24:55 +02:00
2020-10-21 20:07:11 +03:00
2021-01-11 17:27:03 +01:00
2020-09-29 10:21:21 +03:00
2020-01-31 09:31:52 +01:00
2020-10-01 17:49:02 +03:00
2020-03-12 23:14:17 +03:00
2020-09-29 10:21:21 +03:00
2019-10-23 11:11:16 +02:00
2020-09-29 10:21:21 +03:00
2020-02-11 17:01:22 +01:00
2020-09-29 10:21:21 +03:00
2020-02-25 11:31:01 +01:00
2020-10-02 08:57:44 +03:00
2021-01-25 17:11:21 +03:00
2020-10-02 08:57:44 +03:00
2020-01-20 19:12:59 +01:00
2020-02-14 14:07:03 +03:00
2019-10-28 15:26:38 +01:00
2019-10-28 15:26:38 +01:00
2020-06-18 12:22:53 +03:00
2020-06-18 12:22:53 +03:00
2020-09-29 10:21:21 +03:00
2021-01-25 17:11:21 +03:00
2020-01-31 09:31:52 +01:00
2020-03-26 12:39:39 +03:00
2020-03-26 12:39:39 +03:00
2020-03-26 12:39:39 +03:00
2019-08-12 16:09:23 +02:00
2019-11-06 13:11:44 +01:00
2020-03-19 15:23:44 +01:00
2020-03-19 15:23:44 +01:00
2020-10-02 12:51:49 +03:00
2020-01-31 13:20:30 +01:00
2019-08-14 11:16:10 +03:00
2019-10-10 14:07:43 +03:00
2021-01-25 17:11:21 +03:00
2020-09-29 10:21:21 +03:00
2020-02-17 23:04:11 +03:00
2020-02-17 23:04:11 +03:00
2020-02-17 23:04:11 +03:00
2020-02-17 23:04:11 +03:00
2019-08-27 10:44:23 +02:00
2019-08-27 10:44:23 +02:00
2020-02-11 17:01:22 +01:00
2020-04-16 10:53:48 +03:00
2020-03-12 11:28:42 +03:00