bors
7a08f84627
Auto merge of #126578 - scottmcm:inlining-bonuses-too, r=davidtwco
...
Account for things that optimize out in inlining costs
This updates the MIR inlining `CostChecker` to have both bonuses and penalties, rather than just penalties.
That lets us add bonuses for some things where we want to encourage inlining without risking wrapping into a gigantic cost. For example, `switchInt(const …)` we give an inlining bonus because codegen will actually eliminate the branch (and associated dead blocks) once it's monomorphized, so measuring both sides of the branch gives an unrealistically-high cost to it. Similarly, an `unreachable` terminator gets a small bonus, because whatever branch leads there doesn't actually exist post-codegen.
2024-06-21 02:06:27 +00:00
..
2024-06-11 22:13:04 -04:00
2024-06-03 14:17:16 +10:00
2024-06-03 14:17:16 +10:00
2024-06-12 22:59:24 +10:00
2024-06-19 10:44:01 -07:00
2024-06-03 13:24:44 +10:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-19 10:44:01 -07:00
2024-06-03 14:17:16 +10:00
2024-06-03 14:17:16 +10:00
2024-06-19 21:35:37 -07:00
2024-06-03 14:17:16 +10:00
2024-06-03 14:17:16 +10:00
2024-04-08 15:08:06 +00:00
2024-06-03 14:17:16 +10:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-06-03 14:17:16 +10:00
2024-04-03 08:50:12 +00:00
2024-03-18 10:07:43 -04:00
2024-03-19 16:59:24 -04:00
2024-03-19 16:59:24 -04:00
2024-03-19 16:59:24 -04:00
2024-03-19 16:59:24 -04:00
2024-03-26 12:10:51 -04:00
2024-03-26 12:10:51 -04:00
2024-03-19 16:59:24 -04:00
2024-04-08 15:08:06 +00:00
2024-04-20 13:19:34 +02:00
2024-04-03 08:50:12 +00:00
2024-04-20 13:19:34 +02:00
2024-03-17 19:59:15 +01:00
2024-03-17 19:59:15 +01:00
2024-01-07 13:54:05 +00:00
2024-01-07 13:54:05 +00:00
2024-04-20 13:19:34 +02:00
2024-01-07 13:54:05 +00:00
2024-01-07 13:54:05 +00:00
2024-05-21 19:22:04 +02:00
2024-01-07 13:54:05 +00:00
2024-01-07 13:54:05 +00:00
2024-04-20 13:19:34 +02:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-02-09 21:13:53 +00:00
2024-02-22 16:04:04 +00:00
2024-03-17 19:59:15 +01:00
2024-03-10 14:59:41 +01:00
2024-03-17 19:59:15 +01:00
2024-04-03 08:50:12 +00:00
2024-03-17 19:59:15 +01:00
2024-04-24 08:05:29 +00:00
2024-04-24 08:05:29 +00:00
2024-04-24 08:05:29 +00:00
2024-04-24 08:05:29 +00:00
2024-04-24 08:05:29 +00:00
2024-04-24 08:05:29 +00:00
2024-04-24 08:05:29 +00:00
2024-04-24 08:05:29 +00:00
2024-02-12 17:37:05 +01:00
2024-02-12 17:37:05 +01:00
2024-04-20 13:19:34 +02:00
2024-03-10 14:59:41 +01:00
2024-03-10 14:59:41 +01:00
2024-06-03 14:17:16 +10:00
2024-04-20 13:19:34 +02:00
2024-06-03 14:17:16 +10:00
2024-06-03 14:17:16 +10:00
2024-06-03 14:17:16 +10:00
2024-04-20 13:19:34 +02:00
2024-04-07 21:14:26 +08:00
2024-04-08 19:20:07 +08:00
2024-04-20 13:19:34 +02:00
2024-04-20 13:19:34 +02:00
2024-04-07 21:14:26 +08:00
2024-03-13 06:41:21 +01:00
2024-04-20 13:19:34 +02:00
2024-04-07 21:14:26 +08:00
2024-04-07 21:14:26 +08:00
2024-04-20 13:19:34 +02:00
2024-04-07 21:14:26 +08:00
2024-04-07 21:14:26 +08:00
2024-04-08 19:20:07 +08:00
2024-04-08 19:20:07 +08:00
2024-04-20 13:19:34 +02:00
2024-06-03 14:17:16 +10:00
2024-02-22 16:04:04 +00:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-03-22 20:14:39 -04:00
2024-02-22 16:04:04 +00:00
2024-02-05 23:31:54 +00:00
2024-04-20 13:19:34 +02:00
2024-04-20 19:22:13 +00:00
2024-04-20 19:22:13 +00:00
2024-04-20 13:19:34 +02:00
2024-05-17 20:33:02 -07:00
2024-05-17 20:33:02 -07:00
2024-03-10 14:59:41 +01:00
2024-03-10 14:59:41 +01:00
2024-04-20 19:25:20 +00:00
2024-04-20 19:25:20 +00:00
2024-06-06 00:25:58 -07:00
2024-06-06 00:25:58 -07:00
2024-01-16 22:20:53 +00:00
2024-01-16 22:20:53 +00:00
2024-03-10 14:59:41 +01:00
2024-03-10 14:59:41 +01:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-05-17 18:33:37 -03:00
2024-05-17 18:33:37 -03:00
2024-06-06 00:25:58 -07:00
2024-06-06 00:25:58 -07:00
2024-04-20 19:10:23 +00:00
2024-04-20 19:10:23 +00:00
2024-01-16 22:20:54 +00:00
2024-01-16 22:20:54 +00:00
2024-06-06 00:25:58 -07:00
2024-06-06 00:25:58 -07:00
2024-06-06 00:25:58 -07:00
2024-06-06 00:25:58 -07:00
2024-06-06 00:25:58 -07:00
2024-04-20 19:22:13 +00:00
2024-04-20 19:22:13 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-01-16 22:20:54 +00:00
2024-01-16 22:20:54 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-03-10 14:59:41 +01:00
2024-03-10 14:59:41 +01:00
2024-03-10 14:59:41 +01:00
2024-03-10 14:59:41 +01:00
2024-02-12 17:37:05 +01:00
2024-02-12 17:37:05 +01:00
2024-04-20 13:19:34 +02:00
2024-04-20 13:19:34 +02:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-04-20 13:19:34 +02:00
2024-06-03 14:17:16 +10:00
2024-06-03 14:17:16 +10:00
2024-06-03 14:17:16 +10:00
2024-06-03 14:17:16 +10:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-02-12 17:37:05 +01:00
2024-04-08 15:08:06 +00:00
2024-06-03 14:17:16 +10:00
2024-02-17 20:21:57 +01:00
2024-04-03 08:50:12 +00:00
2024-06-03 14:17:16 +10:00
2024-06-20 09:23:20 +10:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-02-22 16:04:04 +00:00
2024-02-17 20:21:57 +01:00
2024-02-17 20:21:57 +01:00
2024-06-03 14:17:16 +10:00
2024-06-05 22:25:42 +01:00
2024-06-05 22:25:42 +01:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-04-20 13:19:34 +02:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-06-03 14:17:16 +10:00
2024-02-13 17:21:53 +00:00
2024-03-10 14:59:41 +01:00
2024-03-10 14:59:41 +01:00
2024-01-23 00:00:22 +00:00
2024-01-23 00:00:22 +00:00
2024-02-12 17:37:05 +01:00
2024-02-12 17:37:05 +01:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-06-03 14:17:16 +10:00
2024-02-12 17:37:05 +01:00
2024-02-12 17:37:05 +01:00
2024-02-22 16:04:04 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-06-03 14:17:16 +10:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-03-10 14:59:41 +01:00
2024-03-10 14:59:41 +01:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-05-28 09:28:51 -07:00
2024-05-28 09:28:51 -07:00
2024-04-21 11:08:37 -07:00
2024-04-21 11:08:37 -07:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-05-28 09:28:51 -07:00
2024-03-23 23:23:41 -07:00
2024-03-23 23:23:41 -07:00
2024-03-23 23:23:41 -07:00
2024-03-23 23:23:41 -07:00
2024-03-23 23:23:41 -07:00
2024-03-23 23:23:41 -07:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-03-30 03:32:11 -07:00
2024-03-30 03:32:11 -07:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-05-17 20:33:02 -07:00
2024-05-17 20:33:02 -07:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-06-03 14:17:16 +10:00
2024-04-20 16:01:35 +02:00
2024-04-20 16:01:35 +02:00
2024-04-08 18:54:33 +08:00
2024-04-20 05:37:53 +08:00
2024-04-20 05:37:53 +08:00
2024-04-20 05:37:53 +08:00
2024-04-08 18:54:33 +08:00
2024-04-08 18:54:33 +08:00
2024-04-08 18:54:33 +08:00
2024-04-20 05:37:53 +08:00
2024-04-08 18:54:33 +08:00
2024-04-20 05:37:53 +08:00
2024-06-03 13:24:44 +10:00
2024-04-20 05:37:53 +08:00
2024-04-20 05:37:53 +08:00
2024-06-03 14:17:16 +10:00
2024-02-22 16:04:04 +00:00
2024-03-17 19:59:15 +01:00
2024-03-17 19:59:15 +01:00
2024-03-17 19:59:15 +01:00
2024-06-03 13:24:44 +10:00
2024-05-31 00:22:40 +00:00
2024-05-31 00:22:40 +00:00
2024-05-31 00:22:40 +00:00
2024-06-03 14:17:16 +10:00
2024-06-16 18:23:48 +02:00
2024-06-16 18:23:48 +02:00
2024-06-16 18:39:50 +02:00
2024-03-17 19:59:15 +01:00
2024-03-17 19:59:15 +01:00
2024-06-03 14:17:16 +10:00
2024-04-20 13:19:34 +02:00
2024-03-10 14:59:41 +01:00
2024-04-03 08:50:12 +00:00
2024-04-20 19:19:06 +00:00
2024-04-03 08:50:12 +00:00
2024-04-20 19:19:06 +00:00
2024-06-03 14:17:16 +10:00
2024-04-03 08:50:12 +00:00
2024-04-20 16:01:35 +02:00
2024-04-20 16:01:35 +02:00
2024-01-06 14:17:33 -05:00
2024-02-12 17:37:05 +01:00
2024-02-12 17:37:05 +01:00
2024-04-20 13:19:34 +02:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-04-18 09:35:35 -07:00
2024-03-17 19:59:15 +01:00
2024-03-17 19:59:15 +01:00
2024-03-17 19:59:15 +01:00
2024-03-17 19:59:15 +01:00
2024-06-19 10:44:01 -07:00
2024-06-19 10:44:01 -07:00
2024-03-18 10:32:25 +01:00
2024-03-18 10:32:25 +01:00
2024-03-17 19:59:15 +01:00
2024-03-17 19:59:15 +01:00
2024-05-17 18:33:37 -03:00
2024-05-17 18:33:37 -03:00
2024-06-03 14:17:16 +10:00
2024-06-03 14:17:16 +10:00
2024-04-18 09:35:35 -07:00
2024-02-22 16:04:04 +00:00
2024-03-08 08:15:14 +08:00
2024-01-07 00:28:20 +00:00
2024-01-07 00:28:20 +00:00
2024-06-03 13:24:44 +10:00
2024-02-22 16:04:04 +00:00
2024-02-22 16:04:04 +00:00
2024-03-17 19:59:15 +01:00
2024-03-17 19:59:15 +01:00
2024-03-13 22:35:11 +08:00
2024-06-03 13:24:44 +10:00
2024-01-07 01:42:57 +00:00
2024-01-07 01:42:57 +00:00
2024-01-28 13:50:20 -06:00
2024-03-07 22:58:51 +08:00
2024-03-07 22:58:51 +08:00
2024-06-03 14:17:16 +10:00
2024-04-20 13:19:34 +02:00
2024-02-12 17:37:05 +01:00
2024-04-20 13:19:34 +02:00
2024-04-03 16:00:38 +02:00
2024-06-03 14:17:16 +10:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-01-11 09:58:19 +00:00
2024-01-11 09:58:19 +00:00
2024-06-03 14:17:16 +10:00
2024-02-22 16:04:04 +00:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-06-10 00:06:02 -07:00
2024-02-22 16:04:04 +00:00
2024-06-03 13:24:44 +10:00
2024-04-03 08:50:12 +00:00
2024-02-22 16:04:04 +00:00
2024-04-03 08:50:12 +00:00
2024-04-03 08:50:12 +00:00
2024-06-03 14:17:16 +10:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2023-10-31 11:44:23 +00:00
2023-10-31 11:44:23 +00:00
2024-04-20 13:19:34 +02:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-04-20 13:19:34 +02:00
2024-03-09 14:32:27 +08:00
2024-03-09 14:32:27 +08:00
2024-02-12 17:37:05 +01:00
2024-02-12 17:37:05 +01:00
2023-10-31 11:44:23 +00:00
2023-10-31 11:44:23 +00:00
2024-06-03 14:17:16 +10:00
2024-06-03 14:17:16 +10:00
2024-06-03 14:17:16 +10:00