summaryrefslogtreecommitdiff
path: root/src/passes/pass.cpp
diff options
context:
space:
mode:
authorAlon Zakai <azakai@google.com>2024-04-11 16:41:22 -0700
committerGitHub <noreply@github.com>2024-04-11 16:41:22 -0700
commit111902d98ac2eb1e903af8ec2f2eab8e9bc66cdf (patch)
tree212b92d622972b0df40c1651305eccdd841a42f8 /src/passes/pass.cpp
parent81f72e8e77e9c67f1ebf178f26edce3b6ebbd9d5 (diff)
downloadbinaryen-111902d98ac2eb1e903af8ec2f2eab8e9bc66cdf.tar.gz
binaryen-111902d98ac2eb1e903af8ec2f2eab8e9bc66cdf.tar.bz2
binaryen-111902d98ac2eb1e903af8ec2f2eab8e9bc66cdf.zip
Fix isGenerative on calls and test via improving OptimizeInstructions::areConsecutiveInputsEqual() (#6481)
"Generative" is what we call something like a struct.new that may be syntactically identical to another struct.new, but each time a new value is generated. The same is true for calls, which can do anything, including return a different value for syntactically identical calls. This was not a bug because the main user of isGenerative, areConsecutiveInputsEqual(), was too weak to notice, that is, it gave up sooner, for other reasons. This PR improves that function to do a much better check, which makes the fix necessary to prevent regressions. This is not terribly important for itself, but will help a later PR that will add code that depends more heavily on areConsecutiveInputsEqual().
Diffstat (limited to 'src/passes/pass.cpp')
0 files changed, 0 insertions, 0 deletions