summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGabor Greif <ggreif@gmail.com>2010-03-16 15:53:58 +0000
committerGabor Greif <ggreif@gmail.com>2010-03-16 15:53:58 +0000
commite52f398e3ec8565b8e0b9542c418e84c0c9599eb (patch)
treeb071a41d0a0e00a281dbae8c75075f5cf1a04779
parent0b5310b9f2e6464096f115a154cac67688138d1e (diff)
downloadbcm5719-llvm-e52f398e3ec8565b8e0b9542c418e84c0c9599eb.tar.gz
bcm5719-llvm-e52f398e3ec8565b8e0b9542c418e84c0c9599eb.zip
more BranchInst tests
llvm-svn: 98634
-rw-r--r--llvm/unittests/VMCore/InstructionsTest.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/unittests/VMCore/InstructionsTest.cpp b/llvm/unittests/VMCore/InstructionsTest.cpp
index 800511e254b..054193f31ee 100644
--- a/llvm/unittests/VMCore/InstructionsTest.cpp
+++ b/llvm/unittests/VMCore/InstructionsTest.cpp
@@ -50,10 +50,17 @@ TEST(InstructionsTest, BranchInst) {
// 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(b0->op_begin() + 1, b0->op_end());
+
+ EXPECT_EQ(b0->op_begin() + 1, b0->op_end());
const IntegerType* Int1 = IntegerType::get(C, 1);
Constant* One = ConstantInt::get(Int1, 1, true);
@@ -61,6 +68,10 @@ TEST(InstructionsTest, BranchInst) {
// 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);
@@ -70,16 +81,19 @@ TEST(InstructionsTest, BranchInst) {
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());
@@ -96,6 +110,7 @@ TEST(InstructionsTest, BranchInst) {
// 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());
OpenPOWER on IntegriCloud