summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlon Zakai <azakai@google.com>2022-08-23 13:02:52 -0700
committerGitHub <noreply@github.com>2022-08-23 13:02:52 -0700
commit594ff7b9609656edb83187cb4600b23b3f2fde37 (patch)
treec035a76773822331241df3c991d2accc5006f756 /src
parent0ee15961e43e0282b014e4328458e065b6976ba7 (diff)
downloadbinaryen-594ff7b9609656edb83187cb4600b23b3f2fde37.tar.gz
binaryen-594ff7b9609656edb83187cb4600b23b3f2fde37.tar.bz2
binaryen-594ff7b9609656edb83187cb4600b23b3f2fde37.zip
Only look at the relevant parameter in param-utils:removeParameter (#4937)
Followup to #4910.
Diffstat (limited to 'src')
-rw-r--r--src/passes/param-utils.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/passes/param-utils.cpp b/src/passes/param-utils.cpp
index 3b0721173..e94ea95b1 100644
--- a/src/passes/param-utils.cpp
+++ b/src/passes/param-utils.cpp
@@ -79,11 +79,8 @@ bool removeParameter(const std::vector<Function*>& funcs,
bool hasUnremovable =
EffectAnalyzer(runner->options, *module, operands[index])
.hasUnremovableSideEffects();
- bool wouldChangeType =
- call->type == Type::unreachable && !call->isReturn &&
- std::any_of(operands.begin(), operands.end(), [](Expression* operand) {
- return operand->type == Type::unreachable;
- });
+ bool wouldChangeType = call->type == Type::unreachable && !call->isReturn &&
+ operands[index]->type == Type::unreachable;
return hasUnremovable || wouldChangeType;
};
bool callParamsAreValid =