summaryrefslogtreecommitdiff
path: root/unittests/Transforms/Utils
diff options
context:
space:
mode:
authorAnna Thomas <anna@azul.com>2017-02-15 17:08:29 +0000
committerAnna Thomas <anna@azul.com>2017-02-15 17:08:29 +0000
commit49d7488ea97ac7554fef61cd288ba6d7a353602e (patch)
tree812ed42f9a5f5648e3199c40471b7b6e6fde2bae /unittests/Transforms/Utils
parentcbdd3bd87f30c5605adb6f18ca924f4b17243180 (diff)
Revert "[JumpThreading] Thread through guards"
This reverts commit r294617. We fail on an assert while trying to get a condition from an unconditional branch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295200 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'unittests/Transforms/Utils')
-rw-r--r--unittests/Transforms/Utils/Cloning.cpp47
1 files changed, 0 insertions, 47 deletions
diff --git a/unittests/Transforms/Utils/Cloning.cpp b/unittests/Transforms/Utils/Cloning.cpp
index a216959751f..634aa9e7e65 100644
--- a/unittests/Transforms/Utils/Cloning.cpp
+++ b/unittests/Transforms/Utils/Cloning.cpp
@@ -201,53 +201,6 @@ TEST_F(CloneInstruction, CallingConvention) {
delete F2;
}
-TEST_F(CloneInstruction, DuplicateInstructionsToSplit) {
- Type *ArgTy1[] = {Type::getInt32PtrTy(context)};
- FunctionType *FT = FunctionType::get(Type::getVoidTy(context), ArgTy1, false);
- V = new Argument(Type::getInt32Ty(context));
-
- Function *F = Function::Create(FT, Function::ExternalLinkage);
-
- BasicBlock *BB1 = BasicBlock::Create(context, "", F);
- IRBuilder<> Builder1(BB1);
-
- BasicBlock *BB2 = BasicBlock::Create(context, "", F);
- IRBuilder<> Builder2(BB2);
-
- Builder1.CreateBr(BB2);
-
- Instruction *AddInst = cast<Instruction>(Builder2.CreateAdd(V, V));
- Instruction *MulInst = cast<Instruction>(Builder2.CreateMul(AddInst, V));
- Instruction *SubInst = cast<Instruction>(Builder2.CreateSub(MulInst, V));
- Builder2.CreateRetVoid();
-
- ValueToValueMapTy Mapping;
-
- auto Split = DuplicateInstructionsInSplitBetween(BB2, BB1, SubInst, Mapping);
-
- EXPECT_TRUE(Split);
- EXPECT_EQ(Mapping.size(), 2u);
- EXPECT_TRUE(Mapping.find(AddInst) != Mapping.end());
- EXPECT_TRUE(Mapping.find(MulInst) != Mapping.end());
-
- auto AddSplit = dyn_cast<Instruction>(Mapping[AddInst]);
- EXPECT_TRUE(AddSplit);
- EXPECT_EQ(AddSplit->getOperand(0), V);
- EXPECT_EQ(AddSplit->getOperand(1), V);
- EXPECT_EQ(AddSplit->getParent(), Split);
-
- auto MulSplit = dyn_cast<Instruction>(Mapping[MulInst]);
- EXPECT_TRUE(MulSplit);
- EXPECT_EQ(MulSplit->getOperand(0), AddSplit);
- EXPECT_EQ(MulSplit->getOperand(1), V);
- EXPECT_EQ(MulSplit->getParent(), Split);
-
- EXPECT_EQ(AddSplit->getNextNode(), MulSplit);
- EXPECT_EQ(MulSplit->getNextNode(), Split->getTerminator());
-
- delete F;
-}
-
class CloneFunc : public ::testing::Test {
protected:
void SetUp() override {