summaryrefslogtreecommitdiff
path: root/compiler/optimizing/superblock_cloner_test.cc
diff options
context:
space:
mode:
author Santiago Aboy Solanes <solanes@google.com> 2024-11-18 15:51:22 +0000
committer Santiago Aboy Solanes <solanes@google.com> 2025-01-03 07:55:11 -0800
commit8842f9debe16fd1251cd6dbe16fd8c168098c61d (patch)
tree1c0e3df6cff6dbf1a6e24302c7ffe8a4739ee68a /compiler/optimizing/superblock_cloner_test.cc
parent970075bedbf0599cfd1ccea388d654cd68576608 (diff)
Remove superblock cloner's DoVersioning
It was added back in 2020 (r.android.com/1206763) but never used. Test: art/test/testrunner/testrunner.py --host --64 --optimizing -b Change-Id: Iace09f956bd520732588b3623722b74f6559a1fe
Diffstat (limited to 'compiler/optimizing/superblock_cloner_test.cc')
-rw-r--r--compiler/optimizing/superblock_cloner_test.cc46
1 files changed, 0 insertions, 46 deletions
diff --git a/compiler/optimizing/superblock_cloner_test.cc b/compiler/optimizing/superblock_cloner_test.cc
index 5190dae033..1bef8a4e9d 100644
--- a/compiler/optimizing/superblock_cloner_test.cc
+++ b/compiler/optimizing/superblock_cloner_test.cc
@@ -301,52 +301,6 @@ TEST_F(SuperblockClonerTest, LoopUnrolling) {
EXPECT_EQ(loop_info->GetBackEdges()[0], bb_map.Get(loop_body));
}
-// Tests SuperblockCloner for loop versioning case.
-//
-// See an ASCII graphics example near LoopClonerHelper::DoVersioning.
-TEST_F(SuperblockClonerTest, LoopVersioning) {
- HBasicBlock* return_block = InitGraphAndParameters();
- auto [preheader, header, loop_body] = CreateWhileLoop(return_block);
- CreateBasicLoopDataFlow(header, loop_body);
- graph_->BuildDominatorTree();
- EXPECT_TRUE(CheckGraph());
-
- HBasicBlockMap bb_map(
- std::less<HBasicBlock*>(), graph_->GetAllocator()->Adapter(kArenaAllocSuperblockCloner));
- HInstructionMap hir_map(
- std::less<HInstruction*>(), graph_->GetAllocator()->Adapter(kArenaAllocSuperblockCloner));
-
- HLoopInformation* loop_info = header->GetLoopInformation();
- HBasicBlock* original_preheader = loop_info->GetPreHeader();
- LoopClonerHelper helper(loop_info, &bb_map, &hir_map, /* induction_range= */ nullptr);
- EXPECT_TRUE(helper.IsLoopClonable());
- HBasicBlock* new_header = helper.DoVersioning();
- EXPECT_EQ(header, new_header);
-
- EXPECT_TRUE(CheckGraph());
-
- HBasicBlock* second_header = bb_map.Get(header);
- HBasicBlock* second_body = bb_map.Get(loop_body);
- HLoopInformation* second_loop_info = second_header->GetLoopInformation();
-
- // Check loop body successors.
- EXPECT_EQ(loop_body->GetSingleSuccessor(), header);
- EXPECT_EQ(second_body->GetSingleSuccessor(), second_header);
-
- // Check loop structure.
- EXPECT_EQ(loop_info, header->GetLoopInformation());
- EXPECT_EQ(loop_info->GetHeader(), header);
- EXPECT_EQ(second_loop_info->GetHeader(), second_header);
-
- EXPECT_EQ(loop_info->GetBackEdges().size(), 1u);
- EXPECT_EQ(second_loop_info->GetBackEdges().size(), 1u);
-
- EXPECT_EQ(loop_info->GetBackEdges()[0], loop_body);
- EXPECT_EQ(second_loop_info->GetBackEdges()[0], second_body);
-
- EXPECT_EQ(original_preheader->GetSuccessors().size(), 2u);
-}
-
// Checks that loop unrolling works fine for a loop with multiple back edges. Tests that after
// the transformation the loop has a single preheader.
TEST_F(SuperblockClonerTest, LoopPeelingMultipleBackEdges) {