aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
diff options
context:
space:
mode:
authorYun-Fly <yunfei.song@intel.com>2024-11-06 10:03:23 +0800
committerGitHub <noreply@github.com>2024-11-06 10:03:23 +0800
commit9bc3102bea80f422f4f3b788186f6e1c636e0fba (patch)
treef88696370590b1f680d0545d34afe321f9149f48 /llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
parent11b768af3ed672c18c4197bf43273b31ccc3c95e (diff)
downloadllvm-9bc3102bea80f422f4f3b788186f6e1c636e0fba.zip
llvm-9bc3102bea80f422f4f3b788186f6e1c636e0fba.tar.gz
llvm-9bc3102bea80f422f4f3b788186f6e1c636e0fba.tar.bz2
[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).
Diffstat (limited to 'llvm/lib/Analysis/ModuleSummaryAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions