aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorRolf Morel <rolf.morel@huawei.com>2024-03-28 13:13:08 +0000
committerGitHub <noreply@github.com>2024-03-28 14:13:08 +0100
commiteacda36c7dd842cb15c0c954eda74b67d0c73814 (patch)
treefadca8a65aec6793444ce3fa3bdb32614f5f49b6 /clang/lib/CodeGen/CodeGenModule.cpp
parent91856b34e3eddf157ab4c6ea623483b49d149e62 (diff)
downloadllvm-eacda36c7dd842cb15c0c954eda74b67d0c73814.zip
llvm-eacda36c7dd842cb15c0c954eda74b67d0c73814.tar.gz
llvm-eacda36c7dd842cb15c0c954eda74b67d0c73814.tar.bz2
[SCF][Transform] Add support for scf.for in LoopFuseSibling op (#81495)
Adds support for fusing two scf.for loops occurring in the same block. Uses the rudimentary checks already in place for scf.forall (like the target loop's operands being dominated by the source loop). - Fixes a bug in the dominance check whereby it was checked that values in the target loop themselves dominated the source loop rather than the ops that define these operands. - Renames the LoopFuseSibling op to LoopFuseSiblingOp. - Updates LoopFuseSiblingOp's description. - Adds tests for using LoopFuseSiblingOp on scf.for loops, including one which fails without the fix for the dominance check. - Adds tests checking the different failure modes of the dominance checker. - Adds test for case whereby scf.yield is automatically generated when there are no loop-carried variables.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions