mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-03-28 06:35:49 +00:00
more BranchInst tests
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98634 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
c613969122
commit
abf657f7e6
@ -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());
|
||||
|
Loading…
x
Reference in New Issue
Block a user