summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2016-01-12 10:17:24 -0800
committerAlon Zakai <alonzakai@gmail.com>2016-01-12 10:24:08 -0800
commitb4c6e2bfb11dbdec9e801f36cecd860d5270eed5 (patch)
tree512b8bb60abe08d48582d6967af50ef84ad46b7d
parentdad2bf5e5ffe3cfc3557d11a8310e4218123ea3d (diff)
downloadbinaryen-b4c6e2bfb11dbdec9e801f36cecd860d5270eed5.tar.gz
binaryen-b4c6e2bfb11dbdec9e801f36cecd860d5270eed5.tar.bz2
binaryen-b4c6e2bfb11dbdec9e801f36cecd860d5270eed5.zip
update s2wasm for new block and loop format in .s files from llvm #97
-rw-r--r--src/s2wasm.h82
-rw-r--r--test/llvm_autogenerated/cfg-stackify.wast282
-rw-r--r--test/llvm_autogenerated/dead-vreg.wast16
-rw-r--r--test/llvm_autogenerated/func.wast4
-rw-r--r--test/llvm_autogenerated/phi.wast8
-rw-r--r--test/llvm_autogenerated/reg-stackify.wast10
-rw-r--r--test/llvm_autogenerated/store-results.wast8
-rw-r--r--test/llvm_autogenerated/switch.wast56
8 files changed, 251 insertions, 215 deletions
diff --git a/src/s2wasm.h b/src/s2wasm.h
index 9cb41b8d6..c192effc2 100644
--- a/src/s2wasm.h
+++ b/src/s2wasm.h
@@ -437,8 +437,15 @@ private:
}
// parse body
func->body = allocator.alloc<Block>();
- std::vector<Block*> bstack;
- bstack.push_back(func->body->dyn_cast<Block>());
+ std::vector<Expression*> bstack;
+ auto addToBlock = [&bstack](Expression* curr) {
+ Expression* last = bstack.back();
+ if (last->is<Loop>()) {
+ last = last->cast<Loop>()->body;
+ }
+ last->cast<Block>()->list.push_back(curr);
+ };
+ bstack.push_back(func->body);
std::vector<Expression*> estack;
auto push = [&](Expression* curr) {
//std::cerr << "push " << curr << '\n';
@@ -491,7 +498,7 @@ private:
};
auto setOutput = [&](Expression* curr, Name assign) {
if (assign.isNull() || assign.str[1] == 'd') { // discard
- bstack.back()->list.push_back(curr);
+ addToBlock(curr);
} else if (assign.str[1] == 'p') { // push
push(curr);
} else { // set to a local
@@ -499,7 +506,7 @@ private:
set->name = assign;
set->value = curr;
set->type = curr->type;
- bstack.back()->list.push_back(set);
+ addToBlock(set);
}
};
auto makeBinary = [&](BinaryOp op, WasmType type) {
@@ -774,10 +781,22 @@ private:
default: abort_on("type.?");
}
};
+ // labels
+ size_t nextLabel = 0;
+ auto getNextLabel = [&nextLabel]() {
+ return cashew::IString(("label$" + std::to_string(nextLabel++)).c_str(), false);
+ };
+ auto getBranchLabel = [&](uint32_t offset) {
+ assert(offset < bstack.size());
+ Expression* target = bstack[bstack.size() - 1 - offset];
+ if (target->is<Block>()) {
+ return target->cast<Block>()->name;
+ } else {
+ return target->cast<Loop>()->in;
+ }
+ };
// fixups
std::vector<Block*> loopBlocks; // we need to clear their names
- std::set<Name> seenLabels; // if we already used a label, we don't need it in a loop (there is a block above it, with that label)
- Name lastLabel; // A loop has an 'in' label which appears before it. There might also be a block in between it and the loop, so we have to remember the last label
// main loop
while (1) {
skipWhitespace();
@@ -792,38 +811,27 @@ private:
handleTyped(f64);
} else if (match("block")) {
auto curr = allocator.alloc<Block>();
- curr->name = getStr();
- bstack.back()->list.push_back(curr);
+ curr->name = getNextLabel();
+ addToBlock(curr);
bstack.push_back(curr);
- seenLabels.insert(curr->name);
+ } else if (match("end_block")) {
+ bstack.pop_back();
} else if (match(".LBB")) {
- s -= 4;
- lastLabel = getStrToColon();
- s++;
- skipWhitespace();
- // pop all blocks/loops that reach this target
- // pop all targets with this label
- while (!bstack.empty()) {
- auto curr = bstack.back();
- if (curr->name == lastLabel) {
- bstack.pop_back();
- continue;
- }
- break;
- }
+ s = strchr(s, '\n');
} else if (match("loop")) {
auto curr = allocator.alloc<Loop>();
- bstack.back()->list.push_back(curr);
- curr->in = lastLabel;
- Name out = getStr();
- if (seenLabels.count(out) == 0) {
- curr->out = out;
- }
+ addToBlock(curr);
+ curr->in = getNextLabel();
+ curr->out = getNextLabel();
auto block = allocator.alloc<Block>();
- block->name = out; // temporary, fake
+ block->name = curr->out; // temporary, fake - this way, on bstack we have the right label at the right offset for a br
curr->body = block;
loopBlocks.push_back(block);
bstack.push_back(block);
+ bstack.push_back(curr);
+ } else if (match("end_loop")) {
+ bstack.pop_back();
+ bstack.pop_back();
} else if (match("br")) {
auto curr = allocator.alloc<Break>();
if (*s == '_') {
@@ -831,8 +839,8 @@ private:
curr->condition = getInput();
skipComma();
}
- curr->name = getStr();
- bstack.back()->list.push_back(curr);
+ curr->name = getBranchLabel(getInt());
+ addToBlock(curr);
} else if (match("call")) {
makeCall(none);
} else if (match("copy_local")) {
@@ -853,18 +861,18 @@ private:
if (*s == '$') {
curr->value = getInput();
}
- bstack.back()->list.push_back(curr);
+ addToBlock(curr);
} else if (match("tableswitch")) {
auto curr = allocator.alloc<Switch>();
curr->value = getInput();
skipComma();
- curr->default_ = getCommaSeparated();
+ curr->default_ = getBranchLabel(getInt());
while (skipComma()) {
- curr->targets.push_back(getCommaSeparated());
+ curr->targets.push_back(getBranchLabel(getInt()));
}
- bstack.back()->list.push_back(curr);
+ addToBlock(curr);
} else if (match("unreachable")) {
- bstack.back()->list.push_back(allocator.alloc<Unreachable>());
+ addToBlock(allocator.alloc<Unreachable>());
} else if (match("memory_size")) {
makeHost(MemorySize);
} else if (match("grow_memory")) {
diff --git a/test/llvm_autogenerated/cfg-stackify.wast b/test/llvm_autogenerated/cfg-stackify.wast
index 3ee288461..f1a2ad63d 100644
--- a/test/llvm_autogenerated/cfg-stackify.wast
+++ b/test/llvm_autogenerated/cfg-stackify.wast
@@ -28,6 +28,7 @@
(export "test11" $test11)
(export "test12" $test12)
(export "test13" $test13)
+ (export "test14" $test14)
(func $test0 (param $$0 i32)
(local $$1 i32)
(block $fake_return_waka123
@@ -35,7 +36,7 @@
(set_local $$1
(i32.const 0)
)
- (loop $.LBB0_3 $.LBB0_1
+ (loop $label$1 $label$0
(block
(set_local $$1
(i32.add
@@ -48,10 +49,10 @@
(get_local $$1)
(get_local $$0)
)
- $.LBB0_3
+ $label$1
)
(call_import $something)
- (br $.LBB0_1)
+ (br $label$0)
)
)
(br $fake_return_waka123)
@@ -65,7 +66,7 @@
(set_local $$1
(i32.const 0)
)
- (loop $.LBB1_3 $.LBB1_1
+ (loop $label$1 $label$0
(block
(set_local $$1
(i32.add
@@ -78,10 +79,10 @@
(get_local $$1)
(get_local $$0)
)
- $.LBB1_3
+ $label$1
)
(call_import $something)
- (br $.LBB1_1)
+ (br $label$0)
)
)
(br $fake_return_waka123)
@@ -91,15 +92,15 @@
(func $test2 (param $$0 i32) (param $$1 i32)
(block $fake_return_waka123
(block
- (block $.LBB2_2
+ (block $label$0
(br_if
(i32.lt_s
(get_local $$1)
(i32.const 1)
)
- $.LBB2_2
+ $label$0
)
- (loop $.LBB2_1
+ (loop $label$2 $label$1
(block
(set_local $$1
(i32.add
@@ -124,7 +125,7 @@
)
(br_if
(get_local $$1)
- $.LBB2_1
+ $label$1
)
)
)
@@ -137,8 +138,8 @@
(local $$3 i32)
(block $fake_return_waka123
(block
- (block $.LBB3_5
- (block $.LBB3_2
+ (block $label$0
+ (block $label$1
(set_local $$3
(i32.store align=4
(get_local $$2)
@@ -147,28 +148,28 @@
)
(br_if
(get_local $$0)
- $.LBB3_2
+ $label$1
)
(i32.store align=4
(get_local $$2)
(i32.const 1)
)
- (br $.LBB3_5)
+ (br $label$0)
)
- (block $.LBB3_4
+ (block $label$2
(i32.store align=4
(get_local $$2)
(i32.const 2)
)
(br_if
(get_local $$1)
- $.LBB3_4
+ $label$2
)
(i32.store align=4
(get_local $$2)
(i32.const 3)
)
- (br $.LBB3_5)
+ (br $label$0)
)
(i32.store align=4
(get_local $$2)
@@ -189,7 +190,7 @@
(local $$2 i32)
(block $fake_return_waka123
(block
- (block $.LBB4_2
+ (block $label$0
(set_local $$2
(i32.store align=4
(get_local $$0)
@@ -198,7 +199,7 @@
)
(br_if
(get_local $$1)
- $.LBB4_2
+ $label$0
)
(i32.store align=4
(get_local $$0)
@@ -219,8 +220,8 @@
(local $$2 i32)
(block $fake_return_waka123
(block
- (block $.LBB5_3
- (block $.LBB5_2
+ (block $label$0
+ (block $label$1
(set_local $$2
(i32.store align=4
(get_local $$0)
@@ -229,13 +230,13 @@
)
(br_if
(get_local $$1)
- $.LBB5_2
+ $label$1
)
(i32.store align=4
(get_local $$0)
(i32.const 1)
)
- (br $.LBB5_3)
+ (br $label$0)
)
(i32.store align=4
(get_local $$0)
@@ -269,13 +270,13 @@
(get_local $$0)
(i32.const 0)
)
- (loop $.LBB7_2 $.LBB7_1
+ (loop $label$1 $label$0
(block
(i32.store align=4
(get_local $$0)
(i32.const 1)
)
- (br $.LBB7_1)
+ (br $label$0)
)
)
)
@@ -289,7 +290,7 @@
(i32.const 0)
)
)
- (loop $.LBB8_2 $.LBB8_1
+ (loop $label$1 $label$0
(block
(i32.store align=4
(get_local $$0)
@@ -300,7 +301,7 @@
(get_local $$1)
(i32.const 0)
)
- $.LBB8_1
+ $label$0
)
)
)
@@ -318,7 +319,7 @@
(local $$3 i32)
(block $fake_return_waka123
(block
- (block $.LBB9_4
+ (block $label$0
(set_local $$3
(i32.store align=4
(get_local $$2)
@@ -327,16 +328,16 @@
)
(br_if
(get_local $$0)
- $.LBB9_4
+ $label$0
)
- (block $.LBB9_3
+ (block $label$1
(i32.store align=4
(get_local $$2)
(i32.const 2)
)
(br_if
(get_local $$1)
- $.LBB9_3
+ $label$1
)
(i32.store align=4
(get_local $$2)
@@ -362,8 +363,8 @@
(local $$3 i32)
(block $fake_return_waka123
(block
- (block $.LBB10_4
- (block $.LBB10_2
+ (block $label$0
+ (block $label$1
(set_local $$3
(i32.store align=4
(get_local $$2)
@@ -372,13 +373,13 @@
)
(br_if
(get_local $$0)
- $.LBB10_2
+ $label$1
)
(i32.store align=4
(get_local $$2)
(i32.const 1)
)
- (br $.LBB10_4)
+ (br $label$0)
)
(i32.store align=4
(get_local $$2)
@@ -386,7 +387,7 @@
)
(br_if
(get_local $$1)
- $.LBB10_4
+ $label$0
)
(i32.store align=4
(get_local $$2)
@@ -404,38 +405,38 @@
)
)
(func $doublediamond_in_a_loop (param $$0 i32) (param $$1 i32) (param $$2 i32) (result i32)
- (loop $.LBB11_7 $.LBB11_1
+ (loop $label$1 $label$0
(block
- (block $.LBB11_6
- (block $.LBB11_3
+ (block $label$2
+ (block $label$3
(i32.store align=4
(get_local $$2)
(i32.const 0)
)
(br_if
(get_local $$0)
- $.LBB11_3
+ $label$3
)
(i32.store align=4
(get_local $$2)
(i32.const 1)
)
- (br $.LBB11_6)
+ (br $label$2)
)
- (block $.LBB11_5
+ (block $label$4
(i32.store align=4
(get_local $$2)
(i32.const 2)
)
(br_if
(get_local $$1)
- $.LBB11_5
+ $label$4
)
(i32.store align=4
(get_local $$2)
(i32.const 3)
)
- (br $.LBB11_6)
+ (br $label$2)
)
(i32.store align=4
(get_local $$2)
@@ -446,37 +447,37 @@
(get_local $$2)
(i32.const 5)
)
- (br $.LBB11_1)
+ (br $label$0)
)
)
)
(func $test3 (param $$0 i32)
(block $fake_return_waka123
(block
- (block $.LBB12_5
+ (block $label$0
(br_if
(i32.const 0)
- $.LBB12_5
+ $label$0
)
- (loop $.LBB12_4 $.LBB12_1
+ (loop $label$2 $label$1
(block
(br_if
(get_local $$0)
- $.LBB12_4
+ $label$2
)
- (loop $.LBB12_3 $.LBB12_2
+ (loop $label$4 $label$3
(block
(br_if
(i32.ne
(get_local $$0)
(get_local $$0)
)
- $.LBB12_2
+ $label$3
)
)
)
(call_import $bar)
- (br $.LBB12_1)
+ (br $label$1)
)
)
(unreachable)
@@ -488,30 +489,30 @@
(func $test4 (param $$0 i32)
(block $fake_return_waka123
(block
- (block $.LBB13_8
- (block $.LBB13_7
- (block $.LBB13_4
+ (block $label$0
+ (block $label$1
+ (block $label$2
(br_if
(i32.gt_s
(get_local $$0)
(i32.const 3)
)
- $.LBB13_4
+ $label$2
)
- (block $.LBB13_3
+ (block $label$3
(br_if
(i32.eq
(get_local $$0)
(i32.const 0)
)
- $.LBB13_3
+ $label$3
)
(br_if
(i32.ne
(get_local $$0)
(i32.const 2)
)
- $.LBB13_7
+ $label$1
)
)
(br $fake_return_waka123)
@@ -521,14 +522,14 @@
(get_local $$0)
(i32.const 4)
)
- $.LBB13_8
+ $label$0
)
(br_if
(i32.ne
(get_local $$0)
(i32.const 622)
)
- $.LBB13_7
+ $label$1
)
(br $fake_return_waka123)
)
@@ -543,8 +544,8 @@
(local $$3 i32)
(block $fake_return_waka123
(block
- (block $.LBB14_4
- (loop $.LBB14_3 $.LBB14_1
+ (block $label$0
+ (loop $label$2 $label$1
(block
(set_local $$2
(i32.const 0)
@@ -566,7 +567,7 @@
)
(i32.const 0)
)
- $.LBB14_4
+ $label$0
)
(br_if
(i32.and
@@ -576,7 +577,7 @@
(get_local $$2)
)
)
- $.LBB14_1
+ $label$1
)
)
)
@@ -600,9 +601,9 @@
(local $$4 i32)
(block $fake_return_waka123
(block
- (block $.LBB15_6
- (block $.LBB15_5
- (loop $.LBB15_4 $.LBB15_1
+ (block $label$0
+ (block $label$1
+ (loop $label$3 $label$2
(block
(set_local $$2
(i32.const 0)
@@ -622,7 +623,7 @@
)
(i32.const 0)
)
- $.LBB15_6
+ $label$0
)
(i32.store align=4
(get_local $$2)
@@ -639,7 +640,7 @@
(get_local $$4)
(i32.const 0)
)
- $.LBB15_5
+ $label$1
)
(i32.store align=4
(get_local $$2)
@@ -647,7 +648,7 @@
)
(br_if
(get_local $$4)
- $.LBB15_1
+ $label$2
)
)
)
@@ -682,9 +683,9 @@
(get_local $$3)
)
)
- (loop $.LBB16_5 $.LBB16_1
+ (loop $label$1 $label$0
(block
- (block $.LBB16_4
+ (block $label$2
(set_local $$3
(i32.store align=4
(get_local $$2)
@@ -696,7 +697,7 @@
(get_local $$0)
(get_local $$3)
)
- $.LBB16_4
+ $label$2
)
(i32.store align=4
(get_local $$2)
@@ -707,7 +708,7 @@
(get_local $$1)
(get_local $$3)
)
- $.LBB16_1
+ $label$0
)
(i32.store align=4
(get_local $$2)
@@ -724,7 +725,7 @@
(get_local $$1)
(get_local $$3)
)
- $.LBB16_1
+ $label$0
)
)
)
@@ -739,31 +740,31 @@
(set_local $$0
(i32.const 0)
)
- (loop $.LBB17_4 $.LBB17_1
+ (loop $label$1 $label$0
(block
- (block $.LBB17_3
+ (block $label$2
(br_if
(i32.eq
(get_local $$0)
(i32.const 0)
)
- $.LBB17_3
+ $label$2
)
(br_if
(i32.eq
(get_local $$0)
(i32.const 0)
)
- $.LBB17_1
+ $label$0
)
)
- (loop $.LBB17_4 $.LBB17_3
+ (loop $label$4 $label$3
(block
(br_if
(get_local $$0)
- $.LBB17_3
+ $label$3
)
- (br $.LBB17_1)
+ (br $label$0)
)
)
)
@@ -783,7 +784,7 @@
(get_local $$1)
)
)
- (loop $.LBB18_5 $.LBB18_1
+ (loop $label$1 $label$0
(block
(set_local $$1
(i32.store align=4
@@ -799,11 +800,11 @@
)
(i32.const 0)
)
- $.LBB18_5
+ $label$1
)
- (loop $.LBB18_5 $.LBB18_2
+ (loop $label$3 $label$2
(block
- (block $.LBB18_4
+ (block $label$4
(i32.store align=4
(get_local $$0)
(i32.const 2)
@@ -816,7 +817,7 @@
)
(i32.const 0)
)
- $.LBB18_4
+ $label$4
)
(i32.store align=4
(get_local $$0)
@@ -827,9 +828,9 @@
(call_import $a)
(get_local $$1)
)
- $.LBB18_2
+ $label$2
)
- (br $.LBB18_1)
+ (br $label$0)
)
(i32.store align=4
(get_local $$0)
@@ -840,9 +841,9 @@
(call_import $a)
(get_local $$1)
)
- $.LBB18_2
+ $label$2
)
- (br $.LBB18_1)
+ (br $label$0)
)
)
)
@@ -866,7 +867,7 @@
(set_local $$0
(i32.const 2)
)
- (loop $.LBB19_7 $.LBB19_1
+ (loop $label$1 $label$0
(block
(set_local $$4
(get_local $$1)
@@ -885,10 +886,10 @@
)
(br_if
(get_local $$4)
- $.LBB19_1
+ $label$0
)
- (block $.LBB19_6
- (loop $.LBB19_5 $.LBB19_2
+ (block $label$2
+ (loop $label$4 $label$3
(block
(set_local $$4
(get_local $$3)
@@ -896,7 +897,7 @@
(set_local $$3
(get_local $$2)
)
- (loop $.LBB19_5 $.LBB19_3
+ (loop $label$6 $label$5
(block
(set_local $$2
(get_local $$4)
@@ -906,14 +907,14 @@
(get_local $$2)
(i32.const 4)
)
- $.LBB19_1
+ $label$0
)
(set_local $$4
(get_local $$3)
)
(tableswitch
(get_local $$2)
- (table (br $.LBB19_3) (br $.LBB19_5) (br $.LBB19_1) (br $.LBB19_2) (br $.LBB19_6)) (br $.LBB19_3)
+ (table (br $label$5) (br $label$6) (br $label$0) (br $label$3) (br $label$2)) (br $label$5)
)
)
)
@@ -924,7 +925,7 @@
(set_local $$1
(i32.const 1)
)
- (br $.LBB19_1)
+ (br $label$0)
)
)
)
@@ -941,22 +942,22 @@
(get_local $$0)
(get_local $$0)
)
- (block $.LBB20_8
- (block $.LBB20_7
- (block $.LBB20_6
- (block $.LBB20_4
+ (block $label$0
+ (block $label$1
+ (block $label$2
+ (block $label$3
(br_if
(get_local $$0)
- $.LBB20_4
+ $label$3
)
- (block $.LBB20_3
+ (block $label$4
(i32.store align=4
(get_local $$0)
(i32.const 1)
)
(br_if
(get_local $$0)
- $.LBB20_3
+ $label$4
)
(i32.store align=4
(get_local $$0)
@@ -964,7 +965,7 @@
)
(br_if
(get_local $$0)
- $.LBB20_6
+ $label$2
)
)
(i32.store align=4
@@ -979,7 +980,7 @@
)
(br_if
(get_local $$0)
- $.LBB20_8
+ $label$0
)
(i32.store align=4
(get_local $$0)
@@ -990,7 +991,7 @@
(get_local $$0)
(i32.const 0)
)
- $.LBB20_7
+ $label$1
)
)
(i32.store align=4
@@ -1017,52 +1018,52 @@
(local $$1 i32)
(block $fake_return_waka123
(block
- (loop $.LBB21_8 $.LBB21_1
+ (loop $label$1 $label$0
(block
(set_local $$1
(i32.load8_u align=1
(get_local $$0)
)
)
- (block $.LBB21_7
- (block $.LBB21_6
- (block $.LBB21_4
+ (block $label$2
+ (block $label$3
+ (block $label$4
(br_if
(i32.gt_s
(get_local $$1)
(i32.const 103)
)
- $.LBB21_4
+ $label$4
)
(br_if
(i32.eq
(get_local $$1)
(i32.const 42)
)
- $.LBB21_7
+ $label$2
)
(br_if
(i32.eq
(get_local $$1)
(i32.const 76)
)
- $.LBB21_7
+ $label$2
)
- (br $.LBB21_6)
+ (br $label$3)
)
(br_if
(i32.eq
(get_local $$1)
(i32.const 108)
)
- $.LBB21_7
+ $label$2
)
(br_if
(i32.eq
(get_local $$1)
(i32.const 104)
)
- $.LBB21_7
+ $label$2
)
)
(br $fake_return_waka123)
@@ -1073,7 +1074,7 @@
(i32.const 1)
)
)
- (br $.LBB21_1)
+ (br $label$0)
)
)
)
@@ -1083,29 +1084,29 @@
(local $$0 i32)
(block $fake_return_waka123
(block
- (block $.LBB22_2
+ (block $label$0
(br_if
(i32.eq
(i32.const 0)
(i32.const 0)
)
- $.LBB22_2
+ $label$0
)
(br $fake_return_waka123)
)
(set_local $$0
(i32.const 0)
)
- (block $.LBB22_4
+ (block $label$1
(br_if
(get_local $$0)
- $.LBB22_4
+ $label$1
)
(set_local $$0
(i32.const 0)
)
)
- (block $.LBB22_5
+ (block $label$2
(br_if
(i32.eq
(i32.and
@@ -1114,12 +1115,39 @@
)
(i32.const 0)
)
- $.LBB22_5
+ $label$2
)
)
(unreachable)
)
)
)
+ (func $test14
+ (local $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (set_local $$0
+ (i32.const 0)
+ )
+ (loop $label$1 $label$0
+ (block
+ (br_if
+ (get_local $$0)
+ $label$0
+ )
+ )
+ )
+ (loop $label$3 $label$2
+ (block
+ (br_if
+ (get_local $$0)
+ $label$2
+ )
+ )
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
)
;; METADATA: { "asmConsts": {},"staticBump": 0 }
diff --git a/test/llvm_autogenerated/dead-vreg.wast b/test/llvm_autogenerated/dead-vreg.wast
index 0ce06c41c..f99ee925a 100644
--- a/test/llvm_autogenerated/dead-vreg.wast
+++ b/test/llvm_autogenerated/dead-vreg.wast
@@ -14,13 +14,13 @@
(set_local $$4
(i32.const 1)
)
- (block $.LBB0_5
+ (block $label$0
(br_if
(i32.lt_s
(get_local $$2)
(get_local $$4)
)
- $.LBB0_5
+ $label$0
)
(set_local $$5
(i32.const 0)
@@ -34,7 +34,7 @@
(set_local $$6
(get_local $$5)
)
- (loop $.LBB0_2
+ (loop $label$2 $label$1
(block
(set_local $$7
(get_local $$5)
@@ -45,15 +45,15 @@
(set_local $$9
(get_local $$1)
)
- (block $.LBB0_4
+ (block $label$3
(br_if
(i32.lt_s
(get_local $$1)
(get_local $$4)
)
- $.LBB0_4
+ $label$3
)
- (loop $.LBB0_3
+ (loop $label$5 $label$4
(block
(set_local $$9
(i32.add
@@ -79,7 +79,7 @@
)
(br_if
(get_local $$9)
- $.LBB0_3
+ $label$4
)
)
)
@@ -101,7 +101,7 @@
(get_local $$6)
(get_local $$2)
)
- $.LBB0_2
+ $label$1
)
)
)
diff --git a/test/llvm_autogenerated/func.wast b/test/llvm_autogenerated/func.wast
index 332c8880d..9523359bf 100644
--- a/test/llvm_autogenerated/func.wast
+++ b/test/llvm_autogenerated/func.wast
@@ -45,7 +45,7 @@
(set_local $$1
(i32.const 1)
)
- (block $.LBB4_2
+ (block $label$0
(br_if
(i32.eq
(i32.and
@@ -54,7 +54,7 @@
)
(i32.const 0)
)
- $.LBB4_2
+ $label$0
)
(br $fake_return_waka123
(i32.const 0)
diff --git a/test/llvm_autogenerated/phi.wast b/test/llvm_autogenerated/phi.wast
index 87b681a04..301f1a670 100644
--- a/test/llvm_autogenerated/phi.wast
+++ b/test/llvm_autogenerated/phi.wast
@@ -5,13 +5,13 @@
(func $test0 (param $$0 i32) (result i32)
(block $fake_return_waka123
(block
- (block $.LBB0_2
+ (block $label$0
(br_if
(i32.gt_s
(get_local $$0)
(i32.const -1)
)
- $.LBB0_2
+ $label$0
)
(set_local $$0
(i32.div_s
@@ -46,7 +46,7 @@
(set_local $$5
(get_local $$3)
)
- (loop $.LBB1_2 $.LBB1_1
+ (loop $label$1 $label$0
(block
(set_local $$1
(get_local $$4)
@@ -68,7 +68,7 @@
(get_local $$5)
(get_local $$0)
)
- $.LBB1_1
+ $label$0
)
)
)
diff --git a/test/llvm_autogenerated/reg-stackify.wast b/test/llvm_autogenerated/reg-stackify.wast
index 60592413c..75dc7291e 100644
--- a/test/llvm_autogenerated/reg-stackify.wast
+++ b/test/llvm_autogenerated/reg-stackify.wast
@@ -79,7 +79,7 @@
(set_local $$4
(i32.const 1)
)
- (block $.LBB4_2
+ (block $label$0
(br_if
(i32.ne
(i32.xor
@@ -106,7 +106,7 @@
)
(get_local $$4)
)
- $.LBB4_2
+ $label$0
)
(br $fake_return_waka123
(i32.const 0)
@@ -127,20 +127,20 @@
(get_local $$2)
)
)
- (block $.LBB5_3
+ (block $label$0
(br_if
(i32.ge_u
(get_local $$3)
(get_local $$1)
)
- $.LBB5_3
+ $label$0
)
(br_if
(i32.lt_u
(get_local $$3)
(get_local $$0)
)
- $.LBB5_3
+ $label$0
)
(i32.store align=4
(get_local $$2)
diff --git a/test/llvm_autogenerated/store-results.wast b/test/llvm_autogenerated/store-results.wast
index 36d9a03e3..34639a9d1 100644
--- a/test/llvm_autogenerated/store-results.wast
+++ b/test/llvm_autogenerated/store-results.wast
@@ -26,7 +26,7 @@
(set_local $$1
(get_local $$0)
)
- (loop $.LBB1_2 $.LBB1_1
+ (loop $label$1 $label$0
(block
(set_local $$1
(i32.add
@@ -43,7 +43,7 @@
(get_local $$1)
(i32.const 256)
)
- $.LBB1_1
+ $label$0
)
)
)
@@ -62,7 +62,7 @@
(set_local $$0
(i32.const 0)
)
- (loop $.LBB2_2 $.LBB2_1
+ (loop $label$1 $label$0
(block
(i32.store offset=4 align=4
(get_local $$0)
@@ -79,7 +79,7 @@
(get_local $$1)
(f32.const 256)
)
- $.LBB2_1
+ $label$0
)
)
)
diff --git a/test/llvm_autogenerated/switch.wast b/test/llvm_autogenerated/switch.wast
index 75e1be4ce..098445ef7 100644
--- a/test/llvm_autogenerated/switch.wast
+++ b/test/llvm_autogenerated/switch.wast
@@ -12,39 +12,39 @@
(func $bar32 (param $$0 i32)
(block $fake_return_waka123
(block
- (block $.LBB0_8
+ (block $label$0
(br_if
(i32.gt_u
(get_local $$0)
(i32.const 23)
)
- $.LBB0_8
+ $label$0
)
- (block $.LBB0_7
- (block $.LBB0_6
- (block $.LBB0_5
- (block $.LBB0_4
- (block $.LBB0_3
- (block $.LBB0_2
+ (block $label$1
+ (block $label$2
+ (block $label$3
+ (block $label$4
+ (block $label$5
+ (block $label$6
(tableswitch
(get_local $$0)
- (table (br $.LBB0_2) (br $.LBB0_2) (br $.LBB0_2) (br $.LBB0_2) (br $.LBB0_2) (br $.LBB0_2) (br $.LBB0_2) (br $.LBB0_3) (br $.LBB0_3) (br $.LBB0_3) (br $.LBB0_3) (br $.LBB0_3) (br $.LBB0_3) (br $.LBB0_3) (br $.LBB0_3) (br $.LBB0_4) (br $.LBB0_4) (br $.LBB0_4) (br $.LBB0_4) (br $.LBB0_4) (br $.LBB0_4) (br $.LBB0_5) (br $.LBB0_6) (br $.LBB0_7)) (br $.LBB0_2)
+ (table (br $label$6) (br $label$6) (br $label$6) (br $label$6) (br $label$6) (br $label$6) (br $label$6) (br $label$5) (br $label$5) (br $label$5) (br $label$5) (br $label$5) (br $label$5) (br $label$5) (br $label$5) (br $label$4) (br $label$4) (br $label$4) (br $label$4) (br $label$4) (br $label$4) (br $label$3) (br $label$2) (br $label$1)) (br $label$6)
)
)
(call_import $foo0)
- (br $.LBB0_8)
+ (br $label$0)
)
(call_import $foo1)
- (br $.LBB0_8)
+ (br $label$0)
)
(call_import $foo2)
- (br $.LBB0_8)
+ (br $label$0)
)
(call_import $foo3)
- (br $.LBB0_8)
+ (br $label$0)
)
(call_import $foo4)
- (br $.LBB0_8)
+ (br $label$0)
)
(call_import $foo5)
)
@@ -55,41 +55,41 @@
(func $bar64 (param $$0 i64)
(block $fake_return_waka123
(block
- (block $.LBB1_8
+ (block $label$0
(br_if
(i64.gt_u
(get_local $$0)
(i64.const 23)
)
- $.LBB1_8
+ $label$0
)
- (block $.LBB1_7
- (block $.LBB1_6
- (block $.LBB1_5
- (block $.LBB1_4
- (block $.LBB1_3
- (block $.LBB1_2
+ (block $label$1
+ (block $label$2
+ (block $label$3
+ (block $label$4
+ (block $label$5
+ (block $label$6
(tableswitch
(i32.wrap/i64
(get_local $$0)
)
- (table (br $.LBB1_2) (br $.LBB1_2) (br $.LBB1_2) (br $.LBB1_2) (br $.LBB1_2) (br $.LBB1_2) (br $.LBB1_2) (br $.LBB1_3) (br $.LBB1_3) (br $.LBB1_3) (br $.LBB1_3) (br $.LBB1_3) (br $.LBB1_3) (br $.LBB1_3) (br $.LBB1_3) (br $.LBB1_4) (br $.LBB1_4) (br $.LBB1_4) (br $.LBB1_4) (br $.LBB1_4) (br $.LBB1_4) (br $.LBB1_5) (br $.LBB1_6) (br $.LBB1_7)) (br $.LBB1_2)
+ (table (br $label$6) (br $label$6) (br $label$6) (br $label$6) (br $label$6) (br $label$6) (br $label$6) (br $label$5) (br $label$5) (br $label$5) (br $label$5) (br $label$5) (br $label$5) (br $label$5) (br $label$5) (br $label$4) (br $label$4) (br $label$4) (br $label$4) (br $label$4) (br $label$4) (br $label$3) (br $label$2) (br $label$1)) (br $label$6)
)
)
(call_import $foo0)
- (br $.LBB1_8)
+ (br $label$0)
)
(call_import $foo1)
- (br $.LBB1_8)
+ (br $label$0)
)
(call_import $foo2)
- (br $.LBB1_8)
+ (br $label$0)
)
(call_import $foo3)
- (br $.LBB1_8)
+ (br $label$0)
)
(call_import $foo4)
- (br $.LBB1_8)
+ (br $label$0)
)
(call_import $foo5)
)