Liu, Fang L
75b46bbc7d
Don't swap src operands if the swapping causes invalid datetype combination for mad instruction
...
Don't swap src0 and src1 of pseudo_mad instruction in HWConformity if the swapping
causes invalid datatype combination. For example:
pseudo_mad (32) result1(0,0)<1>:d x1(0,0)<2;0>:uw r0.1<0;0>:d z(0,0)<1;0>:d
In this case, we swap src0(actually src2) and src1 if src1 is scalar but src0 is
not, as src0(actually src2) has no regioning support:
pseudo_mad (32) result1(0,0)<1>:d r0.1<0;0>:d x1(0,0)<2;0>:uw z(0,0)<1;0>:d
After swapping, the datatype combination is invalid as it changes the datatype
combination from (W * D + D) to (D * W + D). If src2(actually src0) is D, HW only
supports (W * D + D).
Then we wouldn't generate mad, and we generate mul+add instead. But without this
swapping, actually we can generate mad as src0(actually src2) is aligned to dst.
2025-08-29 03:22:04 +02:00
..
2025-05-08 16:12:06 +02:00
2025-08-20 11:34:09 +02:00
2025-08-27 18:09:24 +02:00
2025-08-14 08:09:25 +02:00
2025-08-06 01:43:07 +02:00
2025-08-11 14:31:36 +02:00
2023-12-01 03:33:59 -05:00
2025-08-20 11:34:09 +02:00
2023-12-22 15:57:13 +01:00
2025-07-01 18:23:24 +02:00
2023-12-22 15:57:13 +01:00
2025-07-01 18:23:24 +02:00
2025-08-20 11:34:09 +02:00
2025-07-01 18:23:24 +02:00
2025-07-01 18:23:24 +02:00
2025-08-08 10:49:38 +02:00
2025-07-19 10:40:25 +02:00
2025-07-01 18:23:24 +02:00
2025-07-01 18:23:24 +02:00
2025-07-04 01:20:54 +02:00
2025-07-10 22:41:57 +02:00
2025-01-21 17:25:58 +01:00
2025-07-01 18:23:24 +02:00
2024-06-22 01:52:25 +02:00
2025-04-08 20:29:31 +02:00
2025-07-01 18:23:24 +02:00
2025-03-31 20:59:38 +02:00
2025-04-24 20:01:58 +02:00
2023-11-16 15:35:14 -05:00
2025-07-01 18:23:24 +02:00
2024-12-20 16:56:00 +01:00
2025-07-01 18:23:24 +02:00
2025-07-01 18:23:24 +02:00
2024-12-18 16:19:46 +01:00
2025-07-01 18:23:24 +02:00
2024-07-02 11:17:45 +02:00
2025-07-01 18:23:24 +02:00
2025-08-08 10:49:38 +02:00
2025-07-01 18:23:24 +02:00
2024-09-27 09:09:47 +02:00
2025-08-20 11:34:09 +02:00
2025-07-01 18:23:24 +02:00
2024-07-15 06:25:08 +02:00
2025-03-21 07:00:15 +01:00
2023-10-24 17:36:49 -04:00
2025-07-19 10:40:25 +02:00
2025-07-19 10:40:25 +02:00
2025-08-12 23:08:27 +02:00
2025-08-12 23:08:27 +02:00
2025-01-28 18:13:40 +01:00
2025-01-17 10:56:05 +01:00
2025-07-01 18:23:24 +02:00
2025-01-17 10:56:05 +01:00
2025-07-01 18:23:24 +02:00
2025-07-01 18:23:24 +02:00
2025-07-01 18:23:24 +02:00
2023-12-27 12:19:29 +01:00
2025-07-28 19:01:24 +02:00
2025-08-20 11:34:09 +02:00
2025-07-10 16:44:12 +02:00
2025-08-29 03:22:04 +02:00
2025-05-31 01:45:39 +02:00
2025-07-01 18:23:24 +02:00
2024-10-19 00:23:53 +02:00
2025-03-21 18:13:17 +01:00
2025-01-17 10:56:05 +01:00
2025-05-30 22:28:55 +02:00
2025-08-14 22:58:17 +02:00
2024-09-20 12:12:54 +02:00
2025-08-27 18:09:24 +02:00
2025-07-01 18:23:24 +02:00
2024-09-08 06:59:10 +02:00
2025-07-01 18:23:24 +02:00
2024-12-05 09:49:02 +01:00
2025-05-09 18:39:03 +02:00
2023-12-18 18:46:19 +01:00
2025-07-18 02:38:09 +02:00
2025-01-22 23:30:18 +01:00
2024-07-15 06:25:08 +02:00
2025-07-01 18:23:24 +02:00
2024-02-15 06:11:47 +01:00
2025-08-20 11:34:09 +02:00
2025-07-29 15:18:15 +02:00
2025-08-27 18:09:24 +02:00
2025-04-01 07:54:28 +02:00
2025-08-20 11:34:09 +02:00
2025-07-01 18:23:24 +02:00
2025-01-17 10:56:05 +01:00
2025-07-01 18:23:24 +02:00
2024-01-18 23:22:35 +01:00
2024-09-30 02:20:10 +02:00
2024-09-30 02:20:10 +02:00
2025-07-01 18:23:24 +02:00
2025-07-16 20:18:10 +02:00
2023-12-27 07:53:39 +01:00
2025-07-01 18:23:24 +02:00
2025-07-01 18:23:24 +02:00
2024-02-15 21:59:36 +01:00
2024-06-12 17:57:56 +02:00
2023-12-01 03:33:59 -05:00
2025-07-01 18:23:24 +02:00
2025-08-20 11:34:09 +02:00
2023-11-29 10:54:24 -05:00
2023-12-01 03:33:59 -05:00
2025-04-21 13:19:27 +02:00
2025-04-21 13:19:27 +02:00
2025-07-01 18:23:24 +02:00
2025-01-17 10:56:05 +01:00
2025-07-01 18:23:24 +02:00
2025-08-20 11:34:09 +02:00
2023-11-29 10:54:24 -05:00
2025-07-01 18:23:24 +02:00
2025-07-08 20:05:49 +02:00
2023-12-27 12:19:29 +01:00
2025-07-01 18:23:24 +02:00
2023-12-05 01:58:52 -05:00
2025-07-29 15:18:15 +02:00
2025-08-07 23:59:08 +02:00