diff options
author | Alon Zakai <alonzakai@gmail.com> | 2015-11-20 20:55:07 -0800 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2015-11-20 20:55:07 -0800 |
commit | 7389fd34ad5addd48daf775c67e365220b2b06ba (patch) | |
tree | ef0ed188a7ced19db24b90ca4d9915074ad03b86 /src | |
parent | 1f84970eab7c99122e50d475c4328ef1e76b7d53 (diff) | |
download | binaryen-7389fd34ad5addd48daf775c67e365220b2b06ba.tar.gz binaryen-7389fd34ad5addd48daf775c67e365220b2b06ba.tar.bz2 binaryen-7389fd34ad5addd48daf775c67e365220b2b06ba.zip |
handle breaking to labeled blocks
Diffstat (limited to 'src')
-rw-r--r-- | src/asm2wasm.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/asm2wasm.h b/src/asm2wasm.h index 5f18a5811..ff378fee6 100644 --- a/src/asm2wasm.h +++ b/src/asm2wasm.h @@ -1154,9 +1154,11 @@ Function* Asm2WasmBuilder::processFunction(Ref ast) { if (parentLabel.is()) { name = getBreakLabelName(parentLabel); parentLabel = IString(); + breakStack.push_back(name); } auto ret = processStatements(ast[1], 0); if (name.is()) { + breakStack.pop_back(); Block* block = ret->dyn_cast<Block>(); if (block && block->name.isNull()) { block->name = name; |