diff options
Diffstat (limited to 'src/ir')
-rw-r--r-- | src/ir/ReFinalize.cpp | 8 | ||||
-rw-r--r-- | src/ir/abstract.h | 2 | ||||
-rw-r--r-- | src/ir/branch-utils.h | 2 | ||||
-rw-r--r-- | src/ir/cost.h | 3 | ||||
-rw-r--r-- | src/ir/effects.h | 5 |
5 files changed, 0 insertions, 20 deletions
diff --git a/src/ir/ReFinalize.cpp b/src/ir/ReFinalize.cpp index 32b38325d..014ee184e 100644 --- a/src/ir/ReFinalize.cpp +++ b/src/ir/ReFinalize.cpp @@ -136,14 +136,6 @@ void ReFinalize::visitRefEq(RefEq* curr) { curr->finalize(); } void ReFinalize::visitTry(Try* curr) { curr->finalize(); } void ReFinalize::visitThrow(Throw* curr) { curr->finalize(); } void ReFinalize::visitRethrow(Rethrow* curr) { curr->finalize(); } -void ReFinalize::visitBrOnExn(BrOnExn* curr) { - curr->finalize(); - if (curr->exnref->type == Type::unreachable) { - replaceUntaken(curr->exnref, nullptr); - } else { - updateBreakValueType(curr->name, curr->sent); - } -} void ReFinalize::visitNop(Nop* curr) { curr->finalize(); } void ReFinalize::visitUnreachable(Unreachable* curr) { curr->finalize(); } void ReFinalize::visitPop(Pop* curr) { curr->finalize(); } diff --git a/src/ir/abstract.h b/src/ir/abstract.h index d4a93b011..4c8d556cb 100644 --- a/src/ir/abstract.h +++ b/src/ir/abstract.h @@ -115,7 +115,6 @@ inline UnaryOp getUnary(Type type, Op op) { case Type::v128: case Type::funcref: case Type::externref: - case Type::exnref: case Type::anyref: case Type::eqref: case Type::dataref: @@ -289,7 +288,6 @@ inline BinaryOp getBinary(Type type, Op op) { case Type::v128: case Type::funcref: case Type::externref: - case Type::exnref: case Type::anyref: case Type::eqref: case Type::dataref: diff --git a/src/ir/branch-utils.h b/src/ir/branch-utils.h index 2e7ef470d..5e2cc5184 100644 --- a/src/ir/branch-utils.h +++ b/src/ir/branch-utils.h @@ -80,8 +80,6 @@ void operateOnScopeNameUsesAndSentTypes(Expression* expr, T func) { func(name, br->value ? br->value->type : Type::none); } else if (auto* sw = expr->dynCast<Switch>()) { func(name, sw->value ? sw->value->type : Type::none); - } else if (auto* br = expr->dynCast<BrOnExn>()) { - func(name, br->sent); } else if (auto* br = expr->dynCast<BrOnCast>()) { func(name, br->getCastType()); } else { diff --git a/src/ir/cost.h b/src/ir/cost.h index 7f8e39e1b..46213880b 100644 --- a/src/ir/cost.h +++ b/src/ir/cost.h @@ -562,9 +562,6 @@ struct CostAnalyzer : public OverriddenVisitor<CostAnalyzer, Index> { return ret; } Index visitRethrow(Rethrow* curr) { return 100; } - Index visitBrOnExn(BrOnExn* curr) { - return 1 + visit(curr->exnref) + curr->sent.size(); - } Index visitTupleMake(TupleMake* curr) { Index ret = 0; for (auto* child : curr->operands) { diff --git a/src/ir/effects.h b/src/ir/effects.h index 22fab593d..e9e8d0f6c 100644 --- a/src/ir/effects.h +++ b/src/ir/effects.h @@ -538,11 +538,6 @@ private: // traps when the arg is null parent.implicitTrap = true; } - void visitBrOnExn(BrOnExn* curr) { - parent.breakTargets.insert(curr->name); - // traps when the arg is null - parent.implicitTrap = true; - } void visitNop(Nop* curr) {} void visitUnreachable(Unreachable* curr) { parent.trap = true; } void visitPop(Pop* curr) { |