Index: src/compiler/verifier.cc |
diff --git a/src/compiler/verifier.cc b/src/compiler/verifier.cc |
index 1cc8c9f32e7011c67b4d2f452c6fe0e6f1c3f640..9a3a2fd97232c7e1119b4313d7271fb1963df32c 100644 |
--- a/src/compiler/verifier.cc |
+++ b/src/compiler/verifier.cc |
@@ -228,6 +228,15 @@ void Verifier::Visitor::Check(Node* node) { |
// Type is empty. |
CheckNotTyped(node); |
break; |
+ case IrOpcode::kIfException: |
+ case IrOpcode::kIfSuccess: { |
+ // IfException and IfSuccess continuation only on throwing nodes. |
+ Node* input = NodeProperties::GetControlInput(node, 0); |
+ CHECK(!input->op()->HasProperty(Operator::kNoThrow)); |
+ // Type is empty. |
+ CheckNotTyped(node); |
+ break; |
+ } |
case IrOpcode::kSwitch: { |
// Switch uses are Case. |
std::vector<bool> uses; |