diff options
author | Goktug Gokdogan <goktug@google.com> | 2023-05-04 09:48:29 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-04 09:48:29 -0700 |
commit | e9b8e53812610e43260f6db4a05fd12d96a3f449 (patch) | |
tree | b995c0b6eaa2b318aa380f3448089cf37aee2659 /src/wasm/wasm-binary.cpp | |
parent | 070542f9f30cc262ac741fb3a620037900ac6381 (diff) | |
download | binaryen-e9b8e53812610e43260f6db4a05fd12d96a3f449.tar.gz binaryen-e9b8e53812610e43260f6db4a05fd12d96a3f449.tar.bz2 binaryen-e9b8e53812610e43260f6db4a05fd12d96a3f449.zip |
Fallback to direct inlining if the outline will be inlined. (#5698)
This workarounds the extra work around the edge case where;
- Function is too big to full-inline
- It is a candidate for partial inline
- Outlined version becomes eligible for full-inline.
In such a case, binaryen would introduce a temporary state with
partial inlined functions and later on inline them. J2CL hit this
scenario for String literal which resulted in significant
regressions in compilation time.
This patch updates partial inlining analysis to identify the
edge case and direct to full-inlining when that happens.
Diffstat (limited to 'src/wasm/wasm-binary.cpp')
0 files changed, 0 insertions, 0 deletions