diff options
author | Chijun Sima <simachijun@gmail.com> | 2018-07-12 04:08:14 +0000 |
---|---|---|
committer | Chijun Sima <simachijun@gmail.com> | 2018-07-12 04:08:14 +0000 |
commit | 04d4b7fd45bc73981d9a6faaec6eee98696b5e94 (patch) | |
tree | e46c140ff2a70dffe321fb6ea747899c24296315 /unittests/IR | |
parent | ad360c850d4f1aa41f3eca59eda44e5a4e1658a8 (diff) |
[Dominators] Add isUpdateLazy() method to the DomTreeUpdater
Summary:
Previously, when people need to deal with DTU with different UpdateStrategy using different actions, they need to
```
if (DTU.getUpdateStrategy() == DomTreeUpdater::UpdateStrategy::Lazy) {
...
}
if (DTU.getUpdateStrategy() == DomTreeUpdater::UpdateStrategy::Eager) {
...
}
```
After the patch, they can avoid code patterns above
```
if (DTU.isUpdateLazy()){
...
}
if (!DTU.isUpdateLazy()){
...
}
```
Reviewers: kuhar, brzycki, dmgreen
Reviewed By: kuhar
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D49056
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@336886 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'unittests/IR')
-rw-r--r-- | unittests/IR/DomTreeUpdaterTest.cpp | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/unittests/IR/DomTreeUpdaterTest.cpp b/unittests/IR/DomTreeUpdaterTest.cpp index 242eee7d09e..10d84442617 100644 --- a/unittests/IR/DomTreeUpdaterTest.cpp +++ b/unittests/IR/DomTreeUpdaterTest.cpp @@ -58,7 +58,8 @@ TEST(DomTreeUpdater, EagerUpdateBasicOperations) { ASSERT_TRUE(DTU.hasDomTree()); ASSERT_TRUE(DTU.hasPostDomTree()); - ASSERT_EQ(DTU.getUpdateStrategy(), DomTreeUpdater::UpdateStrategy::Eager); + ASSERT_TRUE(DTU.isEager()); + ASSERT_FALSE(DTU.isLazy()); ASSERT_TRUE(DTU.getDomTree().verify()); ASSERT_TRUE(DTU.getPostDomTree().verify()); ASSERT_FALSE(DTU.hasPendingUpdates()); @@ -166,7 +167,8 @@ TEST(DomTreeUpdater, EagerUpdateReplaceEntryBB) { DomTreeUpdater DTU(DT, PDT, DomTreeUpdater::UpdateStrategy::Eager); ASSERT_TRUE(DTU.hasDomTree()); ASSERT_TRUE(DTU.hasPostDomTree()); - ASSERT_EQ(DTU.getUpdateStrategy(), DomTreeUpdater::UpdateStrategy::Eager); + ASSERT_TRUE(DTU.isEager()); + ASSERT_FALSE(DTU.isLazy()); ASSERT_TRUE(DT.verify()); ASSERT_TRUE(PDT.verify()); @@ -239,7 +241,8 @@ TEST(DomTreeUpdater, LazyUpdateDTBasicOperations) { DomTreeUpdater DTU(&DT, PDT, DomTreeUpdater::UpdateStrategy::Lazy); ASSERT_TRUE(DTU.hasDomTree()); ASSERT_FALSE(DTU.hasPostDomTree()); - ASSERT_EQ(DTU.getUpdateStrategy(), DomTreeUpdater::UpdateStrategy::Lazy); + ASSERT_FALSE(DTU.isEager()); + ASSERT_TRUE(DTU.isLazy()); ASSERT_TRUE(DTU.getDomTree().verify()); Function::iterator FI = F->begin(); @@ -327,7 +330,8 @@ TEST(DomTreeUpdater, LazyUpdateDTInheritedPreds) { DomTreeUpdater DTU(&DT, PDT, DomTreeUpdater::UpdateStrategy::Lazy); ASSERT_TRUE(DTU.hasDomTree()); ASSERT_FALSE(DTU.hasPostDomTree()); - ASSERT_EQ(DTU.getUpdateStrategy(), DomTreeUpdater::UpdateStrategy::Lazy); + ASSERT_FALSE(DTU.isEager()); + ASSERT_TRUE(DTU.isLazy()); ASSERT_TRUE(DTU.getDomTree().verify()); Function::iterator FI = F->begin(); @@ -453,7 +457,8 @@ TEST(DomTreeUpdater, LazyUpdateBasicOperations) { DomTreeUpdater DTU(&DT, &PDT, DomTreeUpdater::UpdateStrategy::Lazy); ASSERT_TRUE(DTU.hasDomTree()); ASSERT_TRUE(DTU.hasPostDomTree()); - ASSERT_EQ(DTU.getUpdateStrategy(), DomTreeUpdater::UpdateStrategy::Lazy); + ASSERT_FALSE(DTU.isEager()); + ASSERT_TRUE(DTU.isLazy()); ASSERT_TRUE(DTU.getDomTree().verify()); ASSERT_TRUE(DTU.getPostDomTree().verify()); @@ -535,7 +540,8 @@ TEST(DomTreeUpdater, LazyUpdateReplaceEntryBB) { DomTreeUpdater DTU(DT, PDT, DomTreeUpdater::UpdateStrategy::Lazy); ASSERT_TRUE(DTU.hasDomTree()); ASSERT_TRUE(DTU.hasPostDomTree()); - ASSERT_EQ(DTU.getUpdateStrategy(), DomTreeUpdater::UpdateStrategy::Lazy); + ASSERT_FALSE(DTU.isEager()); + ASSERT_TRUE(DTU.isLazy()); ASSERT_TRUE(DTU.getDomTree().verify()); ASSERT_TRUE(DTU.getPostDomTree().verify()); @@ -624,7 +630,8 @@ TEST(DomTreeUpdater, LazyUpdateStepTest) { ASSERT_TRUE(DTU.hasDomTree()); ASSERT_TRUE(DTU.hasPostDomTree()); - ASSERT_EQ(DTU.getUpdateStrategy(), DomTreeUpdater::UpdateStrategy::Lazy); + ASSERT_FALSE(DTU.isEager()); + ASSERT_TRUE(DTU.isLazy()); ASSERT_TRUE(DTU.getDomTree().verify()); ASSERT_TRUE(DTU.getPostDomTree().verify()); ASSERT_FALSE(DTU.hasPendingUpdates()); |