summaryrefslogtreecommitdiff
path: root/src/passes/SimplifyLocals.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/passes/SimplifyLocals.cpp')
-rw-r--r--src/passes/SimplifyLocals.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/passes/SimplifyLocals.cpp b/src/passes/SimplifyLocals.cpp
index 28b13980b..eca503ad4 100644
--- a/src/passes/SimplifyLocals.cpp
+++ b/src/passes/SimplifyLocals.cpp
@@ -321,9 +321,9 @@ struct SimplifyLocals
Expression** currp) {
Expression* curr = *currp;
- // Certain expressions cannot be sinked into 'try', and so at the start of
- // 'try' we forget about them.
- if (curr->is<Try>()) {
+ // Certain expressions cannot be sinked into 'try'/'try_table', and so at
+ // the start of 'try'/'try_table' we forget about them.
+ if (curr->is<Try>() || curr->is<TryTable>()) {
std::vector<Index> invalidated;
for (auto& [index, info] : self->sinkables) {
// Expressions that may throw cannot be moved into a try (which might