Luke Lau
c9faedd760
[VPlan] Fold common edges away in convertPhisToBlends ( #150368 )
...
If a phi is widened with tail folding, all of its predecessors will have
a mask of the form
%x = logical-and %active-lane-mask, %foo
%y = logical-and %active-lane-mask, %bar
%z = logical-and %active-lane-mask, %baz
...
We can remove the common %active-lane-mask from all of these edge masks,
which in turn allows us to simplify a lot of VPBlendRecipes.
In particular, it allows the header mask to be removed in selects with
EVL tail folding, improving RISC-V codegen on SPEC CPU 2017 for
525.x264_r, and supersedes #147243 .
This also allows us to remove VPBlendRecipe and directly emit
VPInstruction::Select in another patch.
2025-09-01 07:03:33 +00:00
..
2025-05-19 13:27:17 +01:00
2025-07-31 15:56:31 -04:00
2025-08-26 09:59:06 +01:00
2024-11-21 08:06:56 +00:00
2025-08-14 21:21:03 +01:00
2025-08-27 22:35:08 +01:00
2025-07-27 13:53:26 +01:00
2025-08-31 15:13:47 +01:00
2025-08-27 22:35:08 +01:00
2025-04-28 20:01:37 +01:00
2025-08-31 15:13:47 +01:00
2025-07-27 13:53:26 +01:00
2025-09-01 07:03:33 +00:00
2025-08-22 07:59:14 +08:00
2025-08-01 20:54:39 +01:00
2025-08-10 21:21:16 +01:00
2025-08-01 09:43:15 +02:00
2025-07-27 13:53:26 +01:00
2024-11-19 08:55:39 +00:00
2025-08-26 09:59:06 +01:00
2025-08-26 09:59:06 +01:00
2025-07-27 13:53:26 +01:00
2025-07-27 13:53:26 +01:00
2025-06-02 17:40:50 +01:00
2025-07-27 13:53:26 +01:00
2025-08-16 18:54:27 +01:00
2025-08-16 18:54:27 +01:00
2025-08-23 22:00:01 +01:00
2025-08-21 18:58:10 +01:00
2025-07-26 17:16:36 +01:00
2025-03-25 12:57:24 +00:00
2025-03-25 12:57:24 +00:00
2025-07-26 17:16:36 +01:00
2025-02-09 11:20:20 +00:00
2025-02-09 11:20:20 +00:00
2025-02-26 13:57:51 +00:00
2025-07-27 13:53:26 +01:00
2025-05-07 11:05:25 +01:00
2025-05-07 11:05:25 +01:00
2025-05-07 11:05:25 +01:00
2025-07-27 13:53:26 +01:00
2025-08-16 18:54:27 +01:00
2025-07-27 13:53:26 +01:00
2025-07-27 13:53:26 +01:00
2025-08-16 18:54:27 +01:00
2024-11-19 08:55:39 +00:00
2025-03-25 12:57:24 +00:00
2025-08-16 18:54:27 +01:00
2025-08-21 07:34:54 +08:00
2025-07-26 17:16:36 +01:00
2025-02-09 11:20:20 +00:00
2025-08-16 18:54:27 +01:00
2025-08-08 11:09:34 +02:00
2025-07-27 13:53:26 +01:00
2024-11-21 08:06:56 +00:00
2024-12-09 16:44:05 +01:00
2025-07-27 13:53:26 +01:00
2025-08-05 16:54:02 +08:00
2025-08-22 07:59:14 +08:00
2025-02-26 13:57:51 +00:00
2025-04-28 20:01:37 +01:00
2025-07-27 13:53:26 +01:00
2025-06-15 22:00:47 +01:00
2025-08-10 21:21:16 +01:00
2025-07-26 17:16:36 +01:00
2025-07-26 17:16:36 +01:00
2025-08-16 18:54:27 +01:00
2025-07-27 13:53:26 +01:00
2024-11-21 08:06:56 +00:00
2025-07-27 13:53:26 +01:00
2025-08-16 18:54:27 +01:00
2025-06-09 20:59:12 +01:00
2024-11-20 09:10:51 +00:00
2025-06-02 17:40:50 +01:00
2025-06-02 17:40:50 +01:00
2025-08-21 11:34:49 +01:00
2025-08-16 18:54:27 +01:00
2025-06-17 18:24:07 +01:00
2025-08-10 21:21:16 +01:00
2025-01-29 16:56:47 +01:00
2025-07-26 17:16:36 +01:00
2025-08-16 18:54:27 +01:00
2025-08-10 21:21:16 +01:00
2025-03-15 21:13:49 +00:00
2025-07-27 13:53:26 +01:00
2024-12-24 20:23:48 +00:00
2025-07-27 13:53:26 +01:00
2025-08-16 18:54:27 +01:00
2025-01-12 22:03:21 +00:00
2024-11-19 08:55:39 +00:00
2025-08-16 18:54:27 +01:00
2024-11-19 08:55:39 +00:00
2025-08-26 09:59:06 +01:00
2025-08-18 18:04:53 +01:00
2025-08-26 09:59:06 +01:00
2025-08-10 21:21:16 +01:00
2025-08-10 21:21:16 +01:00
2025-03-28 21:48:59 +00:00
2025-08-16 18:54:27 +01:00
2024-12-18 19:06:34 +01:00
2025-03-18 22:35:18 +00:00
2024-12-05 14:36:40 +01:00
2025-08-16 18:54:27 +01:00