Henry Jiang
77434ce19a
[DAGCombiner] Teach reduceLoadWidth to look past ISD:FREEZE ( #189317 )
...
Teach `DAGCombiner::reduceLoadWidth` to look through freeze SDNodes when
narrowing loads. The narrowed result is then wrapped in freeze to
preserve the original semantics. Currently, several folds were blocked
by the freeze:
```
and(freeze(load), 0xff) -> AssertZext(freeze(zextload, i8))
trunc(freeze(load i32), i8) -> freeze(load i8)
sext_inreg(freeze(load), i8) -> AssertSext(freeze(sextload, i8))
```
and many other patterns due to legalizer or upstream IR passes inserting
freeze. This generally has the positive effects of narrowing the load
type.
2026-04-30 09:37:39 -07:00
..
2026-01-26 15:11:17 +00:00
2026-03-23 13:55:09 +00:00
2026-03-23 13:55:09 +00:00
2026-04-22 18:05:16 +00:00
2026-04-28 10:09:56 +00:00
2026-02-04 10:21:07 +01:00
2026-01-09 13:49:21 -05:00
2026-02-03 14:15:16 -05:00
2026-02-03 14:15:16 -05:00
2026-02-03 14:15:16 -05:00
2026-02-05 19:00:23 +00:00
2026-02-04 03:53:59 +00:00
2026-02-03 14:15:16 -05:00
2026-04-17 12:23:56 +01:00
2026-04-17 12:23:56 +01:00
2026-01-09 13:49:21 -05:00
2026-03-04 12:25:11 -05:00
2026-04-22 18:05:16 +00:00
2026-03-10 01:03:27 -07:00
2026-04-17 12:23:56 +01:00
2026-04-30 09:31:39 -07:00
2026-02-20 11:16:45 -08:00
2026-04-15 15:07:50 -04:00
2026-02-23 10:32:01 +00:00
2026-04-30 09:31:39 -07:00
2026-04-30 09:31:39 -07:00
2026-03-31 09:01:11 +08:00
2026-03-26 15:25:09 +01:00
2026-04-14 09:58:31 -04:00
2026-04-07 10:03:24 -04:00
2026-03-18 13:12:47 +05:30
2026-01-21 21:34:06 +05:30
2026-04-15 13:41:05 -04:00
2026-04-17 12:23:56 +01:00
2026-03-03 17:25:54 -08:00
2026-04-11 06:16:43 +00:00
2026-01-12 12:29:55 +05:30
2026-04-17 12:23:56 +01:00
2026-04-17 12:23:56 +01:00
2026-04-30 15:42:15 +00:00
2026-04-16 11:37:25 -04:00
2026-03-16 11:20:32 -04:00
2026-03-16 11:20:32 -04:00
2026-03-16 11:20:32 -04:00
2026-03-16 11:20:32 -04:00
2026-01-26 15:11:17 +00:00
2026-02-26 11:13:42 +00:00
2026-02-27 04:45:54 +08:00
2026-01-26 15:11:17 +00:00
2026-03-25 12:33:53 +00:00
2026-03-29 14:28:07 +00:00
2026-02-23 10:32:01 +00:00
2026-03-13 09:29:28 +00:00
2026-04-08 19:47:41 -07:00
2026-01-21 09:50:28 +00:00
2026-02-03 14:15:16 -05:00
2026-03-26 15:25:09 +01:00
2026-03-18 11:38:51 +01:00
2026-04-27 08:33:45 +00:00
2026-04-27 08:33:45 +00:00
2026-04-27 08:33:45 +00:00
2026-04-27 08:33:45 +00:00
2026-04-02 09:57:00 +02:00
2026-04-02 09:57:00 +02:00
2026-04-02 09:57:00 +02:00
2026-04-02 09:57:00 +02:00
2026-04-02 09:57:00 +02:00
2026-04-02 09:57:00 +02:00
2026-03-23 13:55:09 +00:00
2026-03-23 13:55:09 +00:00
2026-02-04 17:35:21 +00:00
2026-02-26 13:09:22 -05:00
2026-02-26 13:09:22 -05:00
2026-03-16 11:20:32 -04:00
2026-03-16 11:20:32 -04:00
2026-03-16 11:20:32 -04:00
2026-04-21 13:51:45 -04:00
2026-02-17 15:37:35 -08:00
2026-04-02 09:57:00 +02:00
2026-03-26 18:14:58 +01:00
2026-04-01 10:11:42 -05:00
2026-01-27 09:44:23 -05:00
2026-01-24 11:35:14 +01:00
2026-04-17 13:01:38 -04:00
2026-02-23 10:32:01 +00:00
2026-04-11 06:16:43 +00:00
2026-03-31 13:40:51 +00:00
2026-01-22 18:08:49 -05:00
2026-02-23 10:44:38 -05:00
2026-02-25 10:03:15 +00:00
2026-03-23 13:55:09 +00:00
2026-01-12 12:29:55 +05:30
2026-02-05 13:31:26 +00:00
2026-03-10 14:06:42 +08:00
2026-02-04 00:35:15 +00:00
2026-03-13 09:29:28 +00:00
2026-01-12 12:29:55 +05:30
2026-04-17 12:23:56 +01:00
2026-03-25 12:33:53 +00:00
2026-02-04 17:35:21 +00:00
2026-04-29 13:55:04 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-04-23 12:03:09 -04:00
2026-02-02 09:00:40 +01:00
2026-03-19 17:58:54 +05:30
2026-03-12 12:54:07 -04:00
2026-01-21 16:48:26 +00:00
2026-04-22 18:05:16 +00:00
2026-01-12 12:29:55 +05:30
2026-04-01 11:38:43 -04:00
2026-03-16 11:20:32 -04:00
2026-01-30 18:21:32 +01:00
2026-03-25 12:33:53 +00:00
2026-04-30 09:37:39 -07:00
2026-02-04 17:35:21 +00:00