aboutsummaryrefslogtreecommitdiff
path: root/clang/unittests/Tooling/CompilationDatabaseTest.cpp
diff options
context:
space:
mode:
authorCongzhe Cao <congzhe.cao@huawei.com>2021-03-24 15:20:23 -0400
committerCongzheUalberta <congzhecao@gmail.com>2021-03-24 15:49:25 -0400
commit829c1b644390e35bd179c06f45223f778dfc5ab2 (patch)
tree0dc0e77052ffbd6021bae1d399a7b08147f32379 /clang/unittests/Tooling/CompilationDatabaseTest.cpp
parent26e0fb88a30ad1ab96f66969f4d6da3e71c697b1 (diff)
downloadllvm-829c1b644390e35bd179c06f45223f778dfc5ab2.zip
llvm-829c1b644390e35bd179c06f45223f778dfc5ab2.tar.gz
llvm-829c1b644390e35bd179c06f45223f778dfc5ab2.tar.bz2
[LoopInterchange] fix tightlyNested() in LoopInterchange legality
This is yet another attempt to fix tightlyNested(). Add checks in tightlyNested() for the inner loop exit block, such that 1) if there is control-flow divergence in between the inner loop exit block and the outer loop latch, or 2) if the inner loop exit block contains unsafe instructions, tightlyNested() returns false. The reasoning behind is that after interchange, the original inner loop exit block, which was part of the outer loop, would be put into the new inner loop, and will be executed different number of times before and after interchange. Thus it should be dealt with appropriately. Reviewed By: Whitney Differential Revision: https://reviews.llvm.org/D98263
Diffstat (limited to 'clang/unittests/Tooling/CompilationDatabaseTest.cpp')
0 files changed, 0 insertions, 0 deletions