summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/unittests/VMCore/InstructionsTest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm/unittests/VMCore/InstructionsTest.cpp')
-rw-r--r--contrib/llvm/unittests/VMCore/InstructionsTest.cpp128
1 files changed, 0 insertions, 128 deletions
diff --git a/contrib/llvm/unittests/VMCore/InstructionsTest.cpp b/contrib/llvm/unittests/VMCore/InstructionsTest.cpp
deleted file mode 100644
index c1baa74..0000000
--- a/contrib/llvm/unittests/VMCore/InstructionsTest.cpp
+++ /dev/null
@@ -1,128 +0,0 @@
-//===- llvm/unittest/VMCore/InstructionsTest.cpp - Instructions unit tests ===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include "llvm/Instructions.h"
-#include "llvm/BasicBlock.h"
-#include "llvm/DerivedTypes.h"
-#include "llvm/LLVMContext.h"
-#include "llvm/ADT/STLExtras.h"
-#include "gtest/gtest.h"
-
-namespace llvm {
-namespace {
-
-TEST(InstructionsTest, ReturnInst) {
- LLVMContext &C(getGlobalContext());
-
- // test for PR6589
- const ReturnInst* r0 = ReturnInst::Create(C);
- EXPECT_EQ(r0->getNumOperands(), 0U);
- EXPECT_EQ(r0->op_begin(), r0->op_end());
-
- const IntegerType* Int1 = IntegerType::get(C, 1);
- Constant* One = ConstantInt::get(Int1, 1, true);
- const ReturnInst* r1 = ReturnInst::Create(C, One);
- EXPECT_EQ(r1->getNumOperands(), 1U);
- User::const_op_iterator b(r1->op_begin());
- EXPECT_NE(b, r1->op_end());
- EXPECT_EQ(*b, One);
- EXPECT_EQ(r1->getOperand(0), One);
- ++b;
- EXPECT_EQ(b, r1->op_end());
-
- // clean up
- delete r0;
- delete r1;
-}
-
-TEST(InstructionsTest, BranchInst) {
- LLVMContext &C(getGlobalContext());
-
- // Make a BasicBlocks
- BasicBlock* bb0 = BasicBlock::Create(C);
- BasicBlock* bb1 = BasicBlock::Create(C);
-
- // Mandatory BranchInst
- const BranchInst* b0 = BranchInst::Create(bb0);
-
- EXPECT_TRUE(b0->isUnconditional());
- EXPECT_FALSE(b0->isConditional());
- EXPECT_EQ(b0->getNumSuccessors(), 1U);
-
- // check num operands
- EXPECT_EQ(b0->getNumOperands(), 1U);
-
- EXPECT_NE(b0->op_begin(), b0->op_end());
- EXPECT_EQ(next(b0->op_begin()), b0->op_end());
-
- EXPECT_EQ(next(b0->op_begin()), b0->op_end());
-
- const IntegerType* Int1 = IntegerType::get(C, 1);
- Constant* One = ConstantInt::get(Int1, 1, true);
-
- // Conditional BranchInst
- BranchInst* b1 = BranchInst::Create(bb0, bb1, One);
-
- EXPECT_FALSE(b1->isUnconditional());
- EXPECT_TRUE(b1->isConditional());
- EXPECT_EQ(b1->getNumSuccessors(), 2U);
-
- // check num operands
- EXPECT_EQ(b1->getNumOperands(), 3U);
-
- User::const_op_iterator b(b1->op_begin());
-
- // check COND
- EXPECT_NE(b, b1->op_end());
- EXPECT_EQ(*b, One);
- EXPECT_EQ(b1->getOperand(0), One);
- EXPECT_EQ(b1->getCondition(), One);
- ++b;
-
- // check ELSE
- EXPECT_EQ(*b, bb1);
- EXPECT_EQ(b1->getOperand(1), bb1);
- EXPECT_EQ(b1->getSuccessor(1), bb1);
- ++b;
-
- // check THEN
- EXPECT_EQ(*b, bb0);
- EXPECT_EQ(b1->getOperand(2), bb0);
- EXPECT_EQ(b1->getSuccessor(0), bb0);
- ++b;
-
- EXPECT_EQ(b, b1->op_end());
-
- // shrink it
- b1->setUnconditionalDest(bb1);
-
- // check num operands
- EXPECT_EQ(b1->getNumOperands(), 1U);
-
- User::const_op_iterator c(b1->op_begin());
- EXPECT_NE(c, b1->op_end());
-
- // check THEN
- EXPECT_EQ(*c, bb1);
- EXPECT_EQ(b1->getOperand(0), bb1);
- EXPECT_EQ(b1->getSuccessor(0), bb1);
- ++c;
-
- EXPECT_EQ(c, b1->op_end());
-
- // clean up
- delete b0;
- delete b1;
-
- delete bb0;
- delete bb1;
-}
-
-} // end anonymous namespace
-} // end namespace llvm
OpenPOWER on IntegriCloud