diff options
author | Alon Zakai <azakai@google.com> | 2022-05-02 08:42:09 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-02 08:42:09 -0700 |
commit | 7ec32487ff4e653916abad8ccc86b5149f352ed0 (patch) | |
tree | 3727a88c7ce56164db368c21e895beff476d59ef /src/tools/fuzzing/fuzzing.cpp | |
parent | 2268f2a92524ef86e5b82f87ff4fdd20b5aff056 (diff) | |
download | binaryen-7ec32487ff4e653916abad8ccc86b5149f352ed0.tar.gz binaryen-7ec32487ff4e653916abad8ccc86b5149f352ed0.tar.bz2 binaryen-7ec32487ff4e653916abad8ccc86b5149f352ed0.zip |
Handle call.without.effects in RemoveUnusedModuleElements (#4624)
We assume a closed world atm in the GC space, but the call.without.effects
intrinsic sort of breaks that: that intrinsic looks like an import, but we really
need to care about what is sent to it even in a closed world:
(call $call-without-effects
(ref.func $target-keep)
)
That reference cannot be ignored, as logically it is called just as if there
were a call_ref there. This adds support for that, fixing the combination of
#4621 and using call.without.effects.
Also flip the vector of ref.func names to a set. I realized that in a very
large program we might see the same name many times.
Diffstat (limited to 'src/tools/fuzzing/fuzzing.cpp')
0 files changed, 0 insertions, 0 deletions