diff options
author | Uday Bondhugula <uday@polymagelabs.com> | 2023-11-16 08:52:12 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-16 08:52:12 +0530 |
commit | c79ffb02bbd79c9abe0add4a5bcef375af0a9755 (patch) | |
tree | 9004949aca29b059940eb0a76d43b6d69fd2e907 /llvm/lib/CodeGen/MachineBasicBlock.cpp | |
parent | f5bfc833fcbf17a5876911783d1adaca7028d20c (diff) | |
download | llvm-c79ffb02bbd79c9abe0add4a5bcef375af0a9755.zip llvm-c79ffb02bbd79c9abe0add4a5bcef375af0a9755.tar.gz llvm-c79ffb02bbd79c9abe0add4a5bcef375af0a9755.tar.bz2 |
Generalize affine fusion to work at all depths and inside other region-holding ops (#72288)
Generalize affine fusion to work at any inner depth; fusing loops inside
other
affine.for or even inside scf.for or scf.while nests. Apply in post
order on
all affine nests on the pass' top-level operation.
Fix MDG init for blocks inside other affine nests.
Relax unnecessary requirement for unique vars during merge and align of
FlatLinearValueConstraints. There are several cases where
FlatLinearValueConstraints need to have duplicate Values for the
dimensions:
for eg. in dependence relation systems with source and destination
accesses
could have common loop IVs. `mergeAndAlign` can be done even in the
presence
of Values reappearing by simply aligning from left to right in that
order.
While at this, drop outdated comments; improve some debug messages.
Diffstat (limited to 'llvm/lib/CodeGen/MachineBasicBlock.cpp')
0 files changed, 0 insertions, 0 deletions