diff options
author | Alon Zakai <azakai@google.com> | 2023-08-31 14:04:06 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-31 14:04:06 -0700 |
commit | 0d3c2eeb634913643f2cade4b5d738962b2308c2 (patch) | |
tree | beccb8c6ac99b892b25d38c5d48e93f658b1999a /test/example/c-api-unused-mem.cpp | |
parent | 90d8185ba2be34fa6b6a8f8ce0cbb87e0a9ed0da (diff) | |
download | binaryen-0d3c2eeb634913643f2cade4b5d738962b2308c2.tar.gz binaryen-0d3c2eeb634913643f2cade4b5d738962b2308c2.tar.bz2 binaryen-0d3c2eeb634913643f2cade4b5d738962b2308c2.zip |
DebugInfo: Fix loss of debug info in replaceCurrent() (#5914)
The logic there assumed that we are removing the current node and replacing it
with the given one, so it copied debug info to the new one and deleted it for the
old. But the old one might now be a child of the new one, if we reordered, so we
were dropping debug info, in particular in MergeBlocks which reorders like
this:
(call
(block ..
=>
(block
(call
(it moves blocks outwards so it can merge them).
Diffstat (limited to 'test/example/c-api-unused-mem.cpp')
0 files changed, 0 insertions, 0 deletions