Index: test/unittests/compiler/common-operator-unittest.cc |
diff --git a/test/unittests/compiler/common-operator-unittest.cc b/test/unittests/compiler/common-operator-unittest.cc |
index d2f816beb7cecfe6bfab7f2e24e14f4cab181e3c..81d60f46de422e1d8ee1a1f856649b34f9a666c5 100644 |
--- a/test/unittests/compiler/common-operator-unittest.cc |
+++ b/test/unittests/compiler/common-operator-unittest.cc |
@@ -52,7 +52,6 @@ const SharedOperator kSharedOperators[] = { |
SHARED(IfTrue, Operator::kKontrol, 0, 0, 1, 0, 0, 1), |
SHARED(IfFalse, Operator::kKontrol, 0, 0, 1, 0, 0, 1), |
SHARED(IfSuccess, Operator::kKontrol, 0, 0, 1, 0, 0, 1), |
- SHARED(IfException, Operator::kKontrol, 0, 0, 1, 1, 0, 1), |
SHARED(Throw, Operator::kKontrol, 1, 1, 1, 0, 0, 1), |
SHARED(Return, Operator::kNoThrow, 1, 1, 1, 0, 0, 1), |
SHARED(Terminate, Operator::kKontrol, 0, 1, 1, 0, 0, 1) |
@@ -217,6 +216,23 @@ TEST_F(CommonOperatorTest, Branch) { |
} |
+TEST_F(CommonOperatorTest, IfException) { |
+ static const bool kBooleans[] = {false, true}; |
+ TRACED_FOREACH(bool, caught, kBooleans) { |
+ const Operator* const op = common()->IfException(caught); |
+ EXPECT_EQ(IrOpcode::kIfException, op->opcode()); |
+ EXPECT_EQ(Operator::kKontrol, op->properties()); |
+ EXPECT_EQ(0, op->ValueInputCount()); |
+ EXPECT_EQ(0, op->EffectInputCount()); |
+ EXPECT_EQ(1, op->ControlInputCount()); |
+ EXPECT_EQ(1, OperatorProperties::GetTotalInputCount(op)); |
+ EXPECT_EQ(1, op->ValueOutputCount()); |
+ EXPECT_EQ(0, op->EffectOutputCount()); |
+ EXPECT_EQ(1, op->ControlOutputCount()); |
+ } |
+} |
+ |
+ |
TEST_F(CommonOperatorTest, Switch) { |
TRACED_FOREACH(size_t, cases, kCases) { |
const Operator* const op = common()->Switch(cases); |