Yun-Fly
9bc3102bea
[mlir][scf] Extend consumer fusion to multiple tilable users (#111955)
Before, consumer fusion expects single usage(or others are terminator
op). This patch supports multiple tilable consumers fusion.
E.g.
```
%0 = scf.for {
...
%p = tiledProducer
...
}
%1 = tilableConsumer1 ins(%0 : ...)
%2 = tilableConsumer2 ins(%0 : ...)
```
===>
```
%0:3 = scf.for {
...
%p = tiledProducer
%1 = tiledConsumer1 ins(%p : ...)
%2 = tiledConsumer2 ins(%p : ...)
...
}
```
The key process is ensuring that the first user of loop
should not dominate any define of consumer operand(s).
2024-11-06 10:03:23 +08:00
..
2023-09-20 14:19:13 +02:00
2024-10-29 09:10:30 +09:00
2024-10-29 09:10:30 +09:00
2024-09-17 11:02:20 +00:00
2024-06-07 18:25:43 -05:00
2024-01-25 11:01:28 +01:00
2024-01-17 11:08:59 +01:00
2024-10-15 13:13:49 -07:00
2024-10-14 20:15:12 +02:00
2024-10-29 15:47:13 +00:00
2024-10-05 21:32:40 +02:00
2024-09-27 18:25:41 -07:00
2024-09-17 11:02:20 +00:00
2023-12-20 11:06:27 +09:00
2024-07-30 10:06:01 +02:00
2024-10-05 21:32:40 +02:00
2024-11-06 10:03:23 +08:00
2024-04-16 12:39:57 +03:00
2024-02-08 17:52:09 -05:00