diff options
author | Alon Zakai <alonzakai@gmail.com> | 2016-05-25 19:27:24 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2016-05-25 19:27:24 -0700 |
commit | 45618ddc8eee4f288a2d11d1afe763dbdeab8559 (patch) | |
tree | 39ef392e07a56bfd1d465315b24158110523c943 /src | |
parent | 948f6fe7c4d2a9256310c07c54724685f27874ac (diff) | |
parent | 5b6918ec2245a6e3c512dcee45766731b49805cc (diff) | |
download | binaryen-45618ddc8eee4f288a2d11d1afe763dbdeab8559.tar.gz binaryen-45618ddc8eee4f288a2d11d1afe763dbdeab8559.tar.bz2 binaryen-45618ddc8eee4f288a2d11d1afe763dbdeab8559.zip |
Merge pull request #543 from WebAssembly/fix-merge-blocks
Fix merge blocks on named blocks
Diffstat (limited to 'src')
-rw-r--r-- | src/passes/MergeBlocks.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/passes/MergeBlocks.cpp b/src/passes/MergeBlocks.cpp index 5794e1379..7b9723b0b 100644 --- a/src/passes/MergeBlocks.cpp +++ b/src/passes/MergeBlocks.cpp @@ -100,7 +100,7 @@ struct MergeBlocks : public WalkerPass<PostWalker<MergeBlocks, Visitor<MergeBloc if (dependency1 && *dependency1 && EffectAnalyzer(*dependency1).hasSideEffects()) return outer; if (dependency2 && *dependency2 && EffectAnalyzer(*dependency2).hasSideEffects()) return outer; if (auto* block = child->dynCast<Block>()) { - if (block->list.size() >= 2) { + if (!block->name.is() && block->list.size() >= 2) { child = block->list.back(); if (outer == nullptr) { // reuse the block, move it out |