diff options
author | Alon Zakai <azakai@google.com> | 2024-07-12 16:15:53 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-12 16:15:53 -0700 |
commit | d2a48afe09dd5b22079c748a97ebaebaf69a19a7 (patch) | |
tree | 4396b8e939bc85b4adced74aa6f6c20bce03e488 /src/tools/optimization-options.h | |
parent | 20c10df0cc5e5ffb9b8a0ca8cf4895d3416c6771 (diff) | |
download | binaryen-d2a48afe09dd5b22079c748a97ebaebaf69a19a7.tar.gz binaryen-d2a48afe09dd5b22079c748a97ebaebaf69a19a7.tar.bz2 binaryen-d2a48afe09dd5b22079c748a97ebaebaf69a19a7.zip |
Monomorphize dropped functions (#6734)
We now consider a drop to be part of the call context: If we see
(drop
(call $foo)
)
(func $foo (result i32)
(i32.const 42)
)
Then we'd monomorphize to this:
(call $foo_1) ;; call the specialized function instead
(func $foo_1 ;; the specialized function returns nothing
(drop ;; the drop was moved into here
(i32.const 42)
)
)
With the drop now in the called function, we may be able to optimize out unused work.
Refactor a bit of code out of DAE that we can reuse here, into a new return-utils.h.
Diffstat (limited to 'src/tools/optimization-options.h')
0 files changed, 0 insertions, 0 deletions