summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xcheck.py72
-rw-r--r--src/wasm-binary.h167
-rw-r--r--src/wasm-s-parser.h6
-rw-r--r--src/wasm.h15
-rw-r--r--test/emcc_O2_hello_world.wast.fromBinary218
-rw-r--r--test/emcc_hello_world.wast.fromBinary574
-rw-r--r--test/hello_world.wast.fromBinary2
-rw-r--r--test/kitchen_sink.wast.fromBinary26
-rw-r--r--test/llvm_autogenerated/i64-load-store-alignment.wast8
-rw-r--r--test/llvm_autogenerated/immediates.wast8
-rw-r--r--test/llvm_autogenerated/load-ext.wast4
-rw-r--r--test/min.wast.fromBinary8
-rw-r--r--test/s2wasm_known_binaryen_shell_test_failures.txt4
-rw-r--r--test/unit.wast.fromBinary68
14 files changed, 615 insertions, 565 deletions
diff --git a/check.py b/check.py
index 2929fc326..89a64113f 100755
--- a/check.py
+++ b/check.py
@@ -167,6 +167,8 @@ def split_wast(wast):
depth += 1
elif wast[j] == ')':
depth -= 1
+ elif wast[j] == ';' and wast[j+1] == ';':
+ j = wast.find('\n', j)
j += 1
return j
i = 0
@@ -174,13 +176,13 @@ def split_wast(wast):
start = wast.find('(', i)
if start < 0: break
i = to_end(start + 1)
- if wast[start:].startswith('(module'):
- ret += [(wast[start:i], [])]
- elif wast[start:].startswith('(assert_invalid'):
+ chunk = wast[start:i]
+ if chunk.startswith('(module'):
+ ret += [(chunk, [])]
+ elif chunk.startswith('(assert_invalid'):
continue
- else:
- if len(ret) > 0: # otherwise, comments or such before the first module
- ret[-1][1].append(wast[start:i])
+ elif chunk.startswith(('(assert', '(invoke')):
+ ret[-1][1].append(chunk)
assert len(ret) > 0
return ret
@@ -314,33 +316,49 @@ for t in spec_tests:
if t.startswith('spec') and t.endswith('.wast'):
print '..', t
wast = os.path.join('test', t)
- proc = subprocess.Popen([os.path.join('bin', 'binaryen-shell'), wast], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
- actual, err = proc.communicate()
- assert proc.returncode == 0, err
- expected = os.path.join('test', 'spec', 'expected-output', os.path.basename(wast) + '.log')
- if os.path.exists(expected):
- expected = open(expected).read()
- # fix it up, our pretty (i32.const 83) must become compared to a homely 83 : i32
- def fix(x):
- x = x.strip()
- if not x: return x
- v, t = x.split(' : ')
- if v.endswith('.'): v = v[:-1] # remove trailing '.'
- return '(' + t + '.const ' + v + ')'
- expected = '\n'.join(map(fix, expected.split('\n')))
- print ' (using expected output)'
- actual = actual.strip()
- expected = expected.strip()
- if actual != expected:
- fail(actual, expected)
+ def run_spec_test(wast):
+ print ' run binaryen-shell on', wast
+ proc = subprocess.Popen([os.path.join('bin', 'binaryen-shell'), wast], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+ actual, err = proc.communicate()
+ assert proc.returncode == 0, err
+ return actual
+
+ def check_expected(actual, expected):
+ if expected and os.path.exists(expected):
+ expected = open(expected).read()
+ # fix it up, our pretty (i32.const 83) must become compared to a homely 83 : i32
+ def fix(x):
+ x = x.strip()
+ if not x: return x
+ v, t = x.split(' : ')
+ if v.endswith('.'): v = v[:-1] # remove trailing '.'
+ return '(' + t + '.const ' + v + ')'
+ expected = '\n'.join(map(fix, expected.split('\n')))
+ print ' (using expected output)'
+ actual = actual.strip()
+ expected = expected.strip()
+ if actual != expected:
+ fail(actual, expected)
+
+ actual = run_spec_test(wast)
+ check_expected(actual, os.path.join('test', 'spec', 'expected-output', os.path.basename(wast) + '.log'))
# check binary format. here we can verify execution of the final result, no need for an output verification
+ split_num = 0
if os.path.basename(wast) not in ['has_feature.wast']: # avoid some tests with things still in spec tests, but likely to be taken out soon
+ actual = ''
for module, asserts in split_wast(wast):
- print ' testing split module'
+ print ' testing split module', split_num
+ split_num += 1
open('split.wast', 'w').write(module + '\n' + '\n'.join(asserts))
- result = binary_format_check('split.wast', verify_final_result=False)
+ run_spec_test('split.wast') # before binary stuff - just check it's still ok split out
+ result_wast = binary_format_check('split.wast', verify_final_result=False)
+ # add the asserts, and verify that the test still passes
+ open(result_wast, 'a').write('\n' + '\n'.join(asserts))
+ actual += run_spec_test(result_wast)
+ # compare all the outputs to the expected output
+ check_expected(actual, os.path.join('test', 'spec', 'expected-output', os.path.basename(wast) + '.log'))
print '\n[ checking wasm2asm testcases... ]\n'
diff --git a/src/wasm-binary.h b/src/wasm-binary.h
index f86a19aa8..a722f88ea 100644
--- a/src/wasm-binary.h
+++ b/src/wasm-binary.h
@@ -366,7 +366,9 @@ class WasmBinaryWriter : public WasmVisitor<WasmBinaryWriter, void> {
void prepare() {
// we need function types for all our functions
for (auto* func : wasm->functions) {
- func->type = ensureFunctionType(getSig(func), wasm, allocator)->name;
+ if (func->type.isNull()) {
+ func->type = ensureFunctionType(getSig(func), wasm, allocator)->name;
+ }
}
}
@@ -390,9 +392,18 @@ public:
void writeMemory() {
if (wasm->memory.max == 0) return;
if (debug) std::cerr << "== writeMemory" << std::endl;
- o << int8_t(BinaryConsts::Memory) << int8_t(log2(wasm->memory.initial))
- << int8_t(log2(wasm->memory.max))
- << int8_t(1); // export memory
+ o << int8_t(BinaryConsts::Memory);
+ if (wasm->memory.initial == 0) { // XXX diverge from v8, 0 means 0, 1 and above are powers of 2 starting at 0
+ o << int8_t(0);
+ } else {
+ o << int8_t(std::min(ceil(log2(wasm->memory.initial)), 31.0) + 1); // up to 31 bits, don't let ceil get us to UINT_MAX which can overflow
+ }
+ if (wasm->memory.max == 0) {
+ o << int8_t(0);
+ } else {
+ o << int8_t(std::min(ceil(log2(wasm->memory.max)), 31.0) + 1);
+ }
+ o << int8_t(1); // export memory
}
void writeSignatures() {
@@ -462,6 +473,10 @@ public:
if (debug) std::cerr << "== writeFunctions" << std::endl;
size_t total = wasm->imports.size() + wasm->functions.size();
o << int8_t(BinaryConsts::Functions) << LEB128(total);
+ std::map<Name, Name> exportedFunctions;
+ for (auto* e : wasm->exports) {
+ exportedFunctions[e->value] = e->name;
+ }
for (size_t i = 0; i < total; i++) {
if (debug) std::cerr << "write one at" << o.size() << std::endl;
Import* import = i < wasm->imports.size() ? wasm->imports[i] : nullptr;
@@ -477,12 +492,14 @@ public:
numLocalsByType.clear();
}
if (debug) std::cerr << "writing" << name << std::endl;
+ bool export_ = exportedFunctions.count(name) > 0;
o << int8_t(BinaryConsts::Named |
(BinaryConsts::Import * !!import) |
(BinaryConsts::Locals * (function && function->locals.size() > 0)) |
- (BinaryConsts::Export * (wasm->exportsMap.count(name) > 0)));
+ (BinaryConsts::Export * export_));
o << getFunctionTypeIndex(type);
emitString(name.str);
+ if (export_) emitString(exportedFunctions[name].str); // XXX addition to v8 binary format
if (function) {
mapLocals(function);
if (function->locals.size() > 0) {
@@ -491,8 +508,6 @@ public:
<< uint16_t(numLocalsByType[f32])
<< uint16_t(numLocalsByType[f64]);
}
- }
- if (function) {
size_t sizePos = o.size();
o << (uint32_t)0; // placeholder, we fill in the size later when we have it // XXX int32, diverge from v8 format, to get more code to compile
size_t start = o.size();
@@ -503,6 +518,10 @@ public:
assert(size <= std::numeric_limits<uint16_t>::max());
if (debug) std::cerr << "body size: " << size << ", writing at " << sizePos << ", next starts at " << o.size() << std::endl;
o.writeAt(sizePos, uint32_t(size)); // XXX int32, diverge from v8 format, to get more code to compile
+ } else {
+ // import
+ emitString(import->module.str); // XXX diverge
+ emitString(import->base.str); // from v8
}
}
}
@@ -621,21 +640,22 @@ public:
breakStack.pop_back();
breakStack.pop_back();
}
- void visitBreak(Break *curr) {
- if (debug) std::cerr << "zz node: Break" << std::endl;
- o << int8_t(curr->condition ? BinaryConsts::BrIf : BinaryConsts::Br);
- bool found = false;
+
+ int getBreakIndex(Name name) { // -1 if not found
for (int i = breakStack.size() - 1; i >= 0; i--) {
- if (breakStack[i] == curr->name) {
- o << int8_t(breakStack.size() - 1 - i);
- found = true;
- break;
+ if (breakStack[i] == name) {
+ return breakStack.size() - 1 - i;
}
}
- if (!found) {
- std::cerr << "bad break: " << curr->name << std::endl;
- abort();
- }
+ std::cerr << "bad break: " << name << std::endl;
+ abort();
+ }
+
+ void visitBreak(Break *curr) {
+ if (debug) std::cerr << "zz node: Break" << std::endl;
+ o << int8_t(curr->condition ? BinaryConsts::BrIf : BinaryConsts::Br);
+ int offset = getBreakIndex(curr->name);
+ o << int8_t(offset);
if (curr->condition) recurse(curr->condition);
if (curr->value) {
recurse(curr->value);
@@ -647,23 +667,22 @@ public:
if (debug) std::cerr << "zz node: Switch" << std::endl;
o << int8_t(BinaryConsts::TableSwitch) << int16_t(curr->cases.size())
<< int16_t(curr->targets.size() + 1);
- std::map<Name, int16_t> mapping; // target name => index in cases
for (size_t i = 0; i < curr->cases.size(); i++) {
- mapping[curr->cases[i].name] = i;
- }
- if (mapping.find(curr->default_) == mapping.end()) {
- mapping[curr->default_] = curr->cases.size();
+ breakStack.push_back(curr->cases[i].name);
}
+ breakStack.push_back(curr->name);
for (auto target : curr->targets) {
- o << mapping[target];
+ o << (int16_t)getBreakIndex(target);
}
- o << mapping[curr->default_];
- breakStack.push_back(curr->name);
+ o << (int16_t)getBreakIndex(curr->default_);
recurse(curr->value);
for (auto& c : curr->cases) {
recurse(c.body);
}
- breakStack.pop_back();
+ breakStack.pop_back(); // name
+ for (size_t i = 0; i < curr->cases.size(); i++) {
+ breakStack.pop_back(); // case
+ }
}
void visitCall(Call *curr) {
if (debug) std::cerr << "zz node: Call" << std::endl;
@@ -766,9 +785,9 @@ public:
if (debug) std::cerr << "zz node: Const" << std::endl;
switch (curr->type) {
case i32: {
- int32_t value = curr->value.i32;
- if (value >= -128 && value <= 127) {
- o << int8_t(BinaryConsts::I8Const) << int8_t(value);
+ uint32_t value = curr->value.i32;
+ if (value <= 255) {
+ o << int8_t(BinaryConsts::I8Const) << uint8_t(value);
break;
}
o << int8_t(BinaryConsts::I32Const) << value;
@@ -805,14 +824,14 @@ public:
case ExtendSInt32: o << int8_t(BinaryConsts::I64SConvertI32); break;
case ExtendUInt32: o << int8_t(BinaryConsts::I64UConvertI32); break;
case WrapInt64: o << int8_t(BinaryConsts::I32ConvertI64); break;
- case TruncUFloat32: o << int8_t(curr->type == i32 ? BinaryConsts::I32UConvertF32 : BinaryConsts::I64UConvertF32); break;
- case TruncSFloat32: o << int8_t(curr->type == i32 ? BinaryConsts::I32SConvertF32 : BinaryConsts::I64SConvertF32); break;
- case TruncUFloat64: o << int8_t(curr->type == i32 ? BinaryConsts::I32UConvertF64 : BinaryConsts::I64UConvertF64); break;
- case TruncSFloat64: o << int8_t(curr->type == i32 ? BinaryConsts::I32SConvertF64 : BinaryConsts::I64SConvertF64); break;
+ case TruncUFloat32: o << int8_t(curr->type == i32 ? BinaryConsts::F32UConvertI32 : BinaryConsts::F32UConvertI64); break;
+ case TruncSFloat32: o << int8_t(curr->type == i32 ? BinaryConsts::F32SConvertI32 : BinaryConsts::F32SConvertI64); break;
+ case TruncUFloat64: o << int8_t(curr->type == i32 ? BinaryConsts::F64UConvertI32 : BinaryConsts::F64UConvertI64); break;
+ case TruncSFloat64: o << int8_t(curr->type == i32 ? BinaryConsts::F64SConvertI32 : BinaryConsts::F64SConvertI64); break;
case ConvertUInt32: o << int8_t(curr->type == f32 ? BinaryConsts::I32UConvertF32 : BinaryConsts::I32UConvertF64); break;
case ConvertSInt32: o << int8_t(curr->type == f32 ? BinaryConsts::I32SConvertF32 : BinaryConsts::I32SConvertF64); break;
case ConvertUInt64: o << int8_t(curr->type == f32 ? BinaryConsts::I64UConvertF32 : BinaryConsts::I64UConvertF64); break;
- case ConvertSInt64: o << int8_t(curr->type == f32 ? BinaryConsts::I64UConvertF32 : BinaryConsts::I64UConvertF64); break;
+ case ConvertSInt64: o << int8_t(curr->type == f32 ? BinaryConsts::I64SConvertF32 : BinaryConsts::I64SConvertF64); break;
case DemoteFloat64: o << int8_t(BinaryConsts::F32ConvertF64); break;
case PromoteFloat32: o << int8_t(BinaryConsts::F64ConvertF32); break;
case ReinterpretFloat: o << int8_t(curr->type == f32 ? BinaryConsts::F32ReinterpretI32 : BinaryConsts::F64ReinterpretI64); break;
@@ -1048,8 +1067,10 @@ public:
void readMemory() {
if (debug) std::cerr << "== readMemory" << std::endl;
- wasm.memory.initial = std::pow<size_t>(2, getInt8());
- wasm.memory.max = std::pow<size_t>(2, getInt8());
+ size_t initial = getInt8();
+ wasm.memory.initial = initial == 0 ? 0 : std::pow<size_t>(2, initial - 1);
+ size_t max = getInt8();
+ wasm.memory.max = max == 0 ? 0 : std::pow<size_t>(2, max - 1);
verifyInt8(1); // export memory
}
@@ -1091,13 +1112,20 @@ public:
bool locals = data & BinaryConsts::Locals;
bool export_ = data & BinaryConsts::Export;
Name name = getString();
+ if (export_) { // XXX addition to v8 binary format
+ Name exportName = getString();
+ auto e = allocator.alloc<Export>();
+ e->name = exportName;
+ e->value = name;
+ wasm.addExport(e);
+ }
if (debug) std::cerr << "reading" << name << std::endl;
mappedFunctions.push_back(name);
if (import) {
auto imp = allocator.alloc<Import>();
imp->name = name;
- imp->module = ENV;
- imp->base = name;
+ imp->module = getString(); // XXX diverge
+ imp->base = getString(); // from v8
imp->type = type;
wasm.addImport(imp);
} else {
@@ -1134,12 +1162,6 @@ public:
func->body = nullptr; // will be filled later. but we do have the name and the type already.
wasm.addFunction(func);
}
- if (export_) {
- auto e = allocator.alloc<Export>();
- e->name = name;
- e->value = name;
- wasm.addExport(e);
- }
}
}
@@ -1187,14 +1209,15 @@ public:
if (debug) std::cerr << "== readDataSegments" << std::endl;
auto num = getLEB128();
for (size_t i = 0; i < num; i++) {
- auto curr = allocator.alloc<Memory::Segment>();
- curr->offset = getInt32();
+ Memory::Segment curr;
+ curr.offset = getInt32();
auto start = getInt32();
auto size = getInt32();
auto buffer = malloc(size);
memcpy(buffer, &input[start], size);
- curr->data = (const char*)buffer;
- curr->size = size;
+ curr.data = (const char*)buffer;
+ curr.size = size;
+ wasm.memory.segments.push_back(curr);
verifyInt8(1); // load at program start
}
}
@@ -1305,10 +1328,15 @@ public:
breakStack.pop_back();
breakStack.pop_back();
}
+
+ Name getBreakName(int offset) {
+ return breakStack[breakStack.size() - 1 - offset];
+ }
+
void visitBreak(Break *curr, uint8_t code) {
if (debug) std::cerr << "zz node: Break" << std::endl;
auto offset = getInt8();
- curr->name = breakStack[breakStack.size() - 1 - offset];
+ curr->name = getBreakName(offset);
if (code == BinaryConsts::BrIf) readExpression(curr->condition);
readExpression(curr->value);
}
@@ -1316,27 +1344,26 @@ public:
if (debug) std::cerr << "zz node: Switch" << std::endl;
auto numCases = getInt16();
auto numTargets = getInt16();
- std::map<size_t, Name> caseLabels;
- auto getCaseLabel = [&](size_t index) {
- if (caseLabels.find(index) == caseLabels.end()) {
- caseLabels[index] = getNextLabel();
- }
- return caseLabels[index];
- };
- for (auto i = 0; i < numTargets - 1; i++) {
- curr->targets.push_back(getCaseLabel(getInt16()));
+ for (auto i = 0; i < numCases; i++) {
+ Switch::Case c;
+ c.name = getNextLabel();
+ curr->cases.push_back(c);
+ breakStack.push_back(c.name);
}
- curr->default_ = getCaseLabel(getInt16());
curr->name = getNextLabel();
breakStack.push_back(curr->name);
+ for (auto i = 0; i < numTargets - 1; i++) {
+ curr->targets.push_back(getBreakName(getInt16()));
+ }
+ curr->default_ = getBreakName(getInt16());
readExpression(curr->value);
for (auto i = 0; i < numCases; i++) {
- Switch::Case c;
- c.name = getCaseLabel(i);
- readExpression(c.body);
- curr->cases.push_back(c);
+ readExpression(curr->cases[i].body);
+ }
+ breakStack.pop_back(); // name
+ for (size_t i = 0; i < curr->cases.size(); i++) {
+ breakStack.pop_back(); // case
}
- breakStack.pop_back();
}
void visitCall(Call *curr, Name target) {
if (debug) std::cerr << "zz node: Call" << std::endl;
@@ -1487,12 +1514,12 @@ public:
case BinaryConsts::I32ConvertI64: curr->op = WrapInt64; curr->type = i32; break;
case BinaryConsts::F32UConvertI32: curr->op = TruncUFloat32; curr->type = i32; break;
- case BinaryConsts::F64UConvertI32: curr->op = TruncUFloat32; curr->type = i64; break;
+ case BinaryConsts::F64UConvertI32: curr->op = TruncUFloat64; curr->type = i32; break;
case BinaryConsts::F32SConvertI32: curr->op = TruncSFloat32; curr->type = i32; break;
- case BinaryConsts::F64SConvertI32: curr->op = TruncSFloat32; curr->type = i64; break;
- case BinaryConsts::F32UConvertI64: curr->op = TruncUFloat64; curr->type = i32; break;
+ case BinaryConsts::F64SConvertI32: curr->op = TruncSFloat64; curr->type = i32; break;
+ case BinaryConsts::F32UConvertI64: curr->op = TruncUFloat32; curr->type = i64; break;
case BinaryConsts::F64UConvertI64: curr->op = TruncUFloat64; curr->type = i64; break;
- case BinaryConsts::F32SConvertI64: curr->op = TruncSFloat64; curr->type = i32; break;
+ case BinaryConsts::F32SConvertI64: curr->op = TruncSFloat32; curr->type = i64; break;
case BinaryConsts::F64SConvertI64: curr->op = TruncSFloat64; curr->type = i64; break;
case BinaryConsts::F32Trunc: curr->op = Trunc; curr->type = f32; break;
diff --git a/src/wasm-s-parser.h b/src/wasm-s-parser.h
index 65c06ab6f..34cd168cd 100644
--- a/src/wasm-s-parser.h
+++ b/src/wasm-s-parser.h
@@ -265,9 +265,9 @@ private:
functionTypes[name] = stringToWasmType(curr[1]->str());
return;
} else if (id == TYPE) {
- Name name = curr[1]->str();
- if (wasm.functionTypesMap.find(name) == wasm.functionTypesMap.end()) onError();
- FunctionType* type = wasm.functionTypesMap[name];
+ Name typeName = curr[1]->str();
+ if (wasm.functionTypesMap.find(typeName) == wasm.functionTypesMap.end()) onError();
+ FunctionType* type = wasm.functionTypesMap[typeName];
functionTypes[name] = type->result;
return;
}
diff --git a/src/wasm.h b/src/wasm.h
index 97e0bfc12..528e9c0b0 100644
--- a/src/wasm.h
+++ b/src/wasm.h
@@ -193,7 +193,7 @@ struct Literal {
if (isnan(f)) {
const char *sign = std::signbit(f) ? "-" : "";
o << sign << "nan";
- if (uint32_t payload = ~0xffc00000u & bit_cast<uint32_t>(f)) {
+ if (uint32_t payload = ~0xff800000u & bit_cast<uint32_t>(f)) {
o << ":0x" << std::hex << payload << std::dec;
}
return;
@@ -209,7 +209,7 @@ struct Literal {
if (isnan(d)) {
const char *sign = std::signbit(d) ? "-" : "";
o << sign << "nan";
- if (uint64_t payload = ~0xfff8000000000000ull & bit_cast<uint64_t>(d)) {
+ if (uint64_t payload = ~0xfff0000000000000ull & bit_cast<uint64_t>(d)) {
o << ":0x" << std::hex << payload << std::dec;
}
return;
@@ -676,11 +676,13 @@ public:
std::ostream& doPrint(std::ostream &o, unsigned indent) {
o << '(';
prepareColor(o) << printWasmType(type) << ".load";
- if (bytes < 4) {
+ if (bytes < 4 || (type == i64 && bytes < 8)) {
if (bytes == 1) {
o << '8';
} else if (bytes == 2) {
o << "16";
+ } else if (bytes == 4) {
+ o << "32";
} else {
abort();
}
@@ -954,6 +956,9 @@ public:
std::ostream& print(std::ostream &o, unsigned indent) {
printOpening(o, "func ", true) << name;
+ if (type.is()) {
+ o << " (type " << type << ')';
+ }
if (params.size() > 0) {
for (auto& param : params) {
o << ' ';
@@ -1001,8 +1006,8 @@ public:
class Export {
public:
- Name name;
- Name value;
+ Name name; // exported name
+ Name value; // internal name
std::ostream& print(std::ostream &o, unsigned indent) {
printOpening(o, "export ");
diff --git a/test/emcc_O2_hello_world.wast.fromBinary b/test/emcc_O2_hello_world.wast.fromBinary
index 0039fa2d1..d69d6e577 100644
--- a/test/emcc_O2_hello_world.wast.fromBinary
+++ b/test/emcc_O2_hello_world.wast.fromBinary
@@ -42,7 +42,7 @@
(export "_main" $_main)
(export "stackSave" $stackSave)
(table $b0 $___stdio_close $b1 $b1 $___stdout_write $___stdio_seek $b1 $___stdio_write $b1 $b1 $b2 $b2 $b2 $b2 $_cleanup_418 $b2 $b2 $b2)
- (func $_malloc (param $var$0 i32) (result i32)
+ (func $_malloc (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -160,7 +160,7 @@
(get_local $var$0)
(i32.const 11)
)
- (i32.const 248)
+ (i32.const -8)
)
)
)
@@ -291,7 +291,7 @@
(i32.const 1)
(get_local $var$5)
)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -389,7 +389,7 @@
(get_local $var$6)
)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$6
@@ -580,7 +580,7 @@
(i32.const 1)
(get_local $var$16)
)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -789,7 +789,7 @@
(get_local $var$3)
)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$3
@@ -899,7 +899,7 @@
(i32.const 4)
)
)
- (i32.const 248)
+ (i32.const -8)
)
(get_local $var$1)
)
@@ -966,7 +966,7 @@
(i32.const 4)
)
)
- (i32.const 248)
+ (i32.const -8)
)
(get_local $var$1)
)
@@ -1326,7 +1326,7 @@
(i32.const 1)
(get_local $var$11)
)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -1735,7 +1735,7 @@
(get_local $var$0)
(i32.const 0)
)
- (i32.const 191)
+ (i32.const -65)
)
(block $label$52
(set_local $var$6
@@ -1747,7 +1747,7 @@
(set_local $var$4
(i32.and
(get_local $var$6)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$14
@@ -1950,7 +1950,7 @@
(i32.const 4)
)
)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$8
@@ -2159,7 +2159,7 @@
(get_local $var$13)
)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$13
@@ -2314,7 +2314,7 @@
(i32.const 4)
)
)
- (i32.const 248)
+ (i32.const -8)
)
(get_local $var$4)
)
@@ -2756,7 +2756,7 @@
(i32.const 1)
(get_local $var$6)
)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -3327,7 +3327,7 @@
(i32.const 4)
)
)
- (i32.const 248)
+ (i32.const -8)
)
(get_local $var$42)
)
@@ -3586,7 +3586,7 @@
)
)
(set_local $var$30
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -3812,7 +3812,7 @@
(i32.and
(i32.add
(get_local $var$52)
- (i32.const 255)
+ (i32.const -1)
)
(get_local $var$52)
)
@@ -3829,11 +3829,11 @@
)
(i32.store align=4
(i32.const 660)
- (i32.const 255)
+ (i32.const -1)
)
(i32.store align=4
(i32.const 664)
- (i32.const 255)
+ (i32.const -1)
)
(i32.store align=4
(i32.const 668)
@@ -3850,7 +3850,7 @@
(call_import $_time
(i32.const 0)
)
- (i32.const 240)
+ (i32.const -16)
)
(i32.const 1431655768)
)
@@ -4117,7 +4117,7 @@
(if
(i32.ne
(get_local $var$44)
- (i32.const 255)
+ (i32.const -1)
)
(block $label$141
(set_local $var$57
@@ -4167,7 +4167,7 @@
)
(i32.ne
(get_local $var$51)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.const 0)
@@ -4184,7 +4184,7 @@
(set_local $var$44
(i32.add
(get_local $var$49)
- (i32.const 255)
+ (i32.const -1)
)
)
(if_else
@@ -4362,7 +4362,7 @@
)
(i32.ne
(get_local $var$59)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -4404,7 +4404,7 @@
(call_import $_sbrk
(get_local $var$4)
)
- (i32.const 255)
+ (i32.const -1)
)
(block $label$154
(call_import $_sbrk
@@ -4430,7 +4430,7 @@
(if
(i32.ne
(get_local $var$59)
- (i32.const 255)
+ (i32.const -1)
)
(block $label$156
(set_local $var$57
@@ -4509,11 +4509,11 @@
(i32.and
(i32.ne
(get_local $var$62)
- (i32.const 255)
+ (i32.const -1)
)
(i32.ne
(get_local $var$42)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -5071,7 +5071,7 @@
(set_local $var$56
(i32.and
(get_local $var$61)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$55
@@ -5427,7 +5427,7 @@
(i32.const 1)
(get_local $var$54)
)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -5636,7 +5636,7 @@
(i32.const 1)
(get_local $var$55)
)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -5741,7 +5741,7 @@
(i32.load align=4
(get_local $var$55)
)
- (i32.const 254)
+ (i32.const -2)
)
)
(i32.store align=4
@@ -6137,7 +6137,7 @@
(i32.const 4)
)
)
- (i32.const 248)
+ (i32.const -8)
)
(get_local $var$78)
)
@@ -6447,7 +6447,7 @@
(set_local $var$43
(i32.add
(get_local $var$85)
- (i32.const 209)
+ (i32.const -47)
)
)
(set_local $var$52
@@ -6541,7 +6541,7 @@
(i32.sub
(i32.add
(get_local $var$58)
- (i32.const 216)
+ (i32.const -40)
)
(get_local $var$60)
)
@@ -6693,7 +6693,7 @@
(i32.load align=4
(get_local $var$49)
)
- (i32.const 254)
+ (i32.const -2)
)
)
(i32.store align=4
@@ -7066,7 +7066,7 @@
(i32.const 4)
)
)
- (i32.const 248)
+ (i32.const -8)
)
(get_local $var$62)
)
@@ -7316,7 +7316,7 @@
)
(i32.store align=4
(i32.const 208)
- (i32.const 255)
+ (i32.const -1)
)
(set_local $var$4
(i32.const 0)
@@ -7399,7 +7399,7 @@
(i32.sub
(i32.add
(get_local $var$58)
- (i32.const 216)
+ (i32.const -40)
)
(get_local $var$61)
)
@@ -7526,7 +7526,7 @@
(get_local $var$12)
)
)
- (func $_free (param $var$0 i32)
+ (func $_free (type $2) (param $var$0 i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -7574,7 +7574,7 @@
(set_local $var$1
(i32.add
(get_local $var$0)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$2
@@ -7599,7 +7599,7 @@
(i32.load align=4
(i32.add
(get_local $var$0)
- (i32.const 252)
+ (i32.const -4)
)
)
)
@@ -7619,7 +7619,7 @@
(set_local $var$4
(i32.and
(get_local $var$3)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$5
@@ -7723,7 +7723,7 @@
(get_local $var$9)
(i32.and
(get_local $var$10)
- (i32.const 254)
+ (i32.const -2)
)
)
(i32.store align=4
@@ -7839,7 +7839,7 @@
(i32.const 1)
(get_local $var$10)
)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -8202,7 +8202,7 @@
(i32.const 1)
(get_local $var$9)
)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -8568,7 +8568,7 @@
(i32.add
(i32.and
(get_local $var$1)
- (i32.const 248)
+ (i32.const -8)
)
(get_local $var$12)
)
@@ -8878,7 +8878,7 @@
(i32.const 1)
(get_local $var$21)
)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -9134,7 +9134,7 @@
(i32.const 1)
(get_local $var$2)
)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -9243,7 +9243,7 @@
(get_local $var$4)
(i32.and
(get_local $var$1)
- (i32.const 254)
+ (i32.const -2)
)
)
(i32.store align=4
@@ -9590,7 +9590,7 @@
(i32.const 4)
)
)
- (i32.const 248)
+ (i32.const -8)
)
(get_local $var$28)
)
@@ -9831,7 +9831,7 @@
(i32.load align=4
(i32.const 208)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store align=4
@@ -9873,12 +9873,12 @@
)
(i32.store align=4
(i32.const 208)
- (i32.const 255)
+ (i32.const -1)
)
(br $label$0)
)
)
- (func $___stdio_write (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $___stdio_write (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -10219,7 +10219,7 @@
(set_local $var$21
(i32.add
(get_local $var$6)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -10356,7 +10356,7 @@
(get_local $var$23)
)
)
- (func $___fwritex (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $___fwritex (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -10483,7 +10483,7 @@
(i32.const 75)
)
)
- (i32.const 255)
+ (i32.const -1)
)
(block $label$7
(set_local $var$3
@@ -10515,7 +10515,7 @@
(set_local $var$13
(i32.add
(get_local $var$3)
- (i32.const 255)
+ (i32.const -1)
)
)
(if_else
@@ -10638,7 +10638,7 @@
(get_local $var$7)
)
)
- (func $_fflush (param $var$0 i32) (result i32)
+ (func $_fflush (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -10659,7 +10659,7 @@
(i32.const 76)
)
)
- (i32.const 255)
+ (i32.const -1)
)
(block $label$3
(set_local $var$1
@@ -10750,7 +10750,7 @@
(i32.const 76)
)
)
- (i32.const 255)
+ (i32.const -1)
)
(set_local $var$6
(call $___lockfile
@@ -10840,7 +10840,7 @@
(get_local $var$1)
)
)
- (func $_strlen (param $var$0 i32) (result i32)
+ (func $_strlen (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -11045,7 +11045,7 @@
)
)
)
- (func $___overflow (param $var$0 i32) (param $var$1 i32) (result i32)
+ (func $___overflow (type $4) (param $var$0 i32) (param $var$1 i32) (result i32)
(local $var$2 i32)
(local $var$3 i32)
(local $var$4 i32)
@@ -11117,7 +11117,7 @@
)
)
(set_local $var$9
- (i32.const 255)
+ (i32.const -1)
)
)
(block $label$2
@@ -11223,7 +11223,7 @@
)
)
(set_local $var$9
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -11236,7 +11236,7 @@
(get_local $var$9)
)
)
- (func $___fflush_unlocked (param $var$0 i32) (result i32)
+ (func $___fflush_unlocked (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -11301,7 +11301,7 @@
(i32.const 0)
)
(set_local $var$3
- (i32.const 255)
+ (i32.const -1)
)
(block $label$2
(set_local $var$4
@@ -11389,7 +11389,7 @@
(get_local $var$3)
)
)
- (func $_memcpy (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $_memcpy (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(block $label$0
(if
@@ -11551,10 +11551,10 @@
(get_local $var$3)
)
)
- (func $runPostSets
+ (func $runPostSets (type $5)
(nop)
)
- (func $_memset (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $_memset (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -11610,7 +11610,7 @@
(get_local $var$3)
(i32.xor
(i32.const 3)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -11711,7 +11711,7 @@
)
)
)
- (func $_puts (param $var$0 i32) (result i32)
+ (func $_puts (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -11731,7 +11731,7 @@
(i32.const 76)
)
)
- (i32.const 255)
+ (i32.const -1)
)
(set_local $var$2
(call $___lockfile
@@ -11843,7 +11843,7 @@
)
)
)
- (func $___stdio_seek (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $___stdio_seek (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -11922,10 +11922,10 @@
(block $label$1
(i32.store align=4
(get_local $var$5)
- (i32.const 255)
+ (i32.const -1)
)
(set_local $var$6
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$6
@@ -11941,7 +11941,7 @@
(get_local $var$6)
)
)
- (func $___towrite (param $var$0 i32) (result i32)
+ (func $___towrite (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -12045,14 +12045,14 @@
)
)
(set_local $var$3
- (i32.const 255)
+ (i32.const -1)
)
)
)
(get_local $var$3)
)
)
- (func $_fwrite (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
+ (func $_fwrite (type $7) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
(local $var$4 i32)
(local $var$5 i32)
(local $var$6 i32)
@@ -12073,7 +12073,7 @@
(i32.const 76)
)
)
- (i32.const 255)
+ (i32.const -1)
)
(block $label$1
(set_local $var$5
@@ -12138,7 +12138,7 @@
(get_local $var$8)
)
)
- (func $___stdout_write (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $___stdout_write (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(block $label$0
@@ -12223,7 +12223,7 @@
(get_local $var$0)
(i32.const 75)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$4
@@ -12240,7 +12240,7 @@
(get_local $var$4)
)
)
- (func $copyTempDouble (param $var$0 i32)
+ (func $copyTempDouble (type $2) (param $var$0 i32)
(block $label$0
(i32.store8 align=1
(i32.load align=4
@@ -12350,7 +12350,7 @@
)
)
)
- (func $___stdio_close (param $var$0 i32) (result i32)
+ (func $___stdio_close (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(block $label$0
@@ -12395,7 +12395,7 @@
(get_local $var$0)
)
)
- (func $copyTempFloat (param $var$0 i32)
+ (func $copyTempFloat (type $2) (param $var$0 i32)
(block $label$0
(i32.store8 align=1
(i32.load align=4
@@ -12449,7 +12449,7 @@
)
)
)
- (func $___syscall_ret (param $var$0 i32) (result i32)
+ (func $___syscall_ret (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(block $label$0
(if_else
@@ -12469,7 +12469,7 @@
)
)
(set_local $var$1
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$1
@@ -12479,7 +12479,7 @@
(get_local $var$1)
)
)
- (func $dynCall_iiii (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
+ (func $dynCall_iiii (type $7) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
(call_indirect $0
(i32.add
(i32.and
@@ -12493,7 +12493,7 @@
(get_local $var$3)
)
)
- (func $stackAlloc (param $var$0 i32) (result i32)
+ (func $stackAlloc (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(block $label$0
(set_local $var$1
@@ -12519,13 +12519,13 @@
)
(i32.const 15)
)
- (i32.const 240)
+ (i32.const -16)
)
)
(get_local $var$1)
)
)
- (func $___errno_location (result i32)
+ (func $___errno_location (type $3) (result i32)
(local $var$0 i32)
(block $label$0
(if_else
@@ -12550,7 +12550,7 @@
(get_local $var$0)
)
)
- (func $setThrew (param $var$0 i32) (param $var$1 i32)
+ (func $setThrew (type $6) (param $var$0 i32) (param $var$1 i32)
(if
(i32.eq
(i32.load align=4
@@ -12570,7 +12570,7 @@
)
)
)
- (func $_fputs (param $var$0 i32) (param $var$1 i32) (result i32)
+ (func $_fputs (type $4) (param $var$0 i32) (param $var$1 i32) (result i32)
(i32.add
(call $_fwrite
(get_local $var$0)
@@ -12580,10 +12580,10 @@
(i32.const 1)
(get_local $var$1)
)
- (i32.const 255)
+ (i32.const -1)
)
)
- (func $dynCall_ii (param $var$0 i32) (param $var$1 i32) (result i32)
+ (func $dynCall_ii (type $4) (param $var$0 i32) (param $var$1 i32) (result i32)
(call_indirect $1
(i32.add
(i32.and
@@ -12595,7 +12595,7 @@
(get_local $var$1)
)
)
- (func $_cleanup_418 (param $var$0 i32)
+ (func $_cleanup_418 (type $2) (param $var$0 i32)
(block $label$0
(if
(i32.eq
@@ -12614,7 +12614,7 @@
(br $label$0)
)
)
- (func $establishStackSpace (param $var$0 i32) (param $var$1 i32)
+ (func $establishStackSpace (type $6) (param $var$0 i32) (param $var$1 i32)
(block $label$0
(i32.store align=4
(i32.const 8)
@@ -12626,7 +12626,7 @@
)
)
)
- (func $dynCall_vi (param $var$0 i32) (param $var$1 i32)
+ (func $dynCall_vi (type $6) (param $var$0 i32) (param $var$1 i32)
(call_indirect $2
(i32.add
(i32.and
@@ -12638,7 +12638,7 @@
(get_local $var$1)
)
)
- (func $b1 (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $b1 (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(block $label$0
(call_import $abort
(i32.const 1)
@@ -12646,19 +12646,19 @@
(i32.const 0)
)
)
- (func $stackRestore (param $var$0 i32)
+ (func $stackRestore (type $2) (param $var$0 i32)
(i32.store align=4
(i32.const 8)
(get_local $var$0)
)
)
- (func $setTempRet0 (param $var$0 i32)
+ (func $setTempRet0 (type $2) (param $var$0 i32)
(i32.store align=4
(i32.const 160)
(get_local $var$0)
)
)
- (func $b0 (param $var$0 i32) (result i32)
+ (func $b0 (type $1) (param $var$0 i32) (result i32)
(block $label$0
(call_import $abort
(i32.const 0)
@@ -12666,20 +12666,20 @@
(i32.const 0)
)
)
- (func $___unlockfile (param $var$0 i32)
+ (func $___unlockfile (type $2) (param $var$0 i32)
(block $label$0
(br $label$0)
)
)
- (func $___lockfile (param $var$0 i32) (result i32)
+ (func $___lockfile (type $1) (param $var$0 i32) (result i32)
(i32.const 0)
)
- (func $getTempRet0 (result i32)
+ (func $getTempRet0 (type $3) (result i32)
(i32.load align=4
(i32.const 160)
)
)
- (func $_main (result i32)
+ (func $_main (type $3) (result i32)
(block $label$0
(call $_puts
(i32.const 672)
@@ -12687,12 +12687,12 @@
(i32.const 0)
)
)
- (func $stackSave (result i32)
+ (func $stackSave (type $3) (result i32)
(i32.load align=4
(i32.const 8)
)
)
- (func $b2 (param $var$0 i32)
+ (func $b2 (type $2) (param $var$0 i32)
(call_import $abort
(i32.const 2)
)
diff --git a/test/emcc_hello_world.wast.fromBinary b/test/emcc_hello_world.wast.fromBinary
index 36012a7ac..ff26b930f 100644
--- a/test/emcc_hello_world.wast.fromBinary
+++ b/test/emcc_hello_world.wast.fromBinary
@@ -31,7 +31,7 @@
(import $_pthread_cleanup_push "env" "_pthread_cleanup_push" (param i32 i32))
(import $_sysconf "env" "_sysconf" (param i32) (result i32))
(import $___syscall146 "env" "___syscall146" (param i32 i32) (result i32))
- (import $f64-to-int "env" "f64-to-int" (param f64) (result i32))
+ (import $f64-to-int "asm2wasm" "f64-to-int" (param f64) (result i32))
(export "stackAlloc" $stackAlloc)
(export "stackSave" $stackSave)
(export "stackRestore" $stackRestore)
@@ -55,7 +55,7 @@
(export "dynCall_iiii" $dynCall_iiii)
(export "dynCall_vi" $dynCall_vi)
(table $b0 $___stdio_close $b1 $b1 $___stdout_write $___stdio_seek $___stdio_write $b1 $b1 $b1 $b2 $b2 $b2 $b2 $b2 $_cleanup $b2 $b2)
- (func $stackAlloc (param $var$0 i32) (result i32)
+ (func $stackAlloc (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(block $label$0
(set_local $var$1
@@ -81,7 +81,7 @@
)
(i32.const 15)
)
- (i32.const 240)
+ (i32.const -16)
)
)
(if
@@ -98,18 +98,18 @@
(get_local $var$1)
)
)
- (func $stackSave (result i32)
+ (func $stackSave (type $4) (result i32)
(i32.load align=4
(i32.const 8)
)
)
- (func $stackRestore (param $var$0 i32)
+ (func $stackRestore (type $2) (param $var$0 i32)
(i32.store align=4
(i32.const 8)
(get_local $var$0)
)
)
- (func $establishStackSpace (param $var$0 i32) (param $var$1 i32)
+ (func $establishStackSpace (type $6) (param $var$0 i32) (param $var$1 i32)
(block $label$0
(i32.store align=4
(i32.const 8)
@@ -121,7 +121,7 @@
)
)
)
- (func $setThrew (param $var$0 i32) (param $var$1 i32)
+ (func $setThrew (type $6) (param $var$0 i32) (param $var$1 i32)
(if
(i32.eq
(i32.load align=4
@@ -141,7 +141,7 @@
)
)
)
- (func $copyTempFloat (param $var$0 i32)
+ (func $copyTempFloat (type $2) (param $var$0 i32)
(block $label$0
(i32.store8 align=1
(i32.load align=4
@@ -195,7 +195,7 @@
)
)
)
- (func $copyTempDouble (param $var$0 i32)
+ (func $copyTempDouble (type $2) (param $var$0 i32)
(block $label$0
(i32.store8 align=1
(i32.load align=4
@@ -305,18 +305,18 @@
)
)
)
- (func $setTempRet0 (param $var$0 i32)
+ (func $setTempRet0 (type $2) (param $var$0 i32)
(i32.store align=4
(i32.const 168)
(get_local $var$0)
)
)
- (func $getTempRet0 (result i32)
+ (func $getTempRet0 (type $4) (result i32)
(i32.load align=4
(i32.const 168)
)
)
- (func $_main (result i32)
+ (func $_main (type $4) (result i32)
(local $var$0 i32)
(local $var$1 i32)
(local $var$2 i32)
@@ -364,7 +364,7 @@
(i32.const 0)
)
)
- (func $_frexp (param $var$0 f64) (param $var$1 i32) (result f64)
+ (func $_frexp (type $8) (param $var$0 f64) (param $var$1 i32) (result f64)
(local $var$2 i32)
(local $var$3 i32)
(local $var$4 i32)
@@ -436,7 +436,7 @@
(get_local $var$9)
(i32.const 0)
)
- (table (case $label$1) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$2) (case $label$3)) (case $label$2)
+ (table (case $label$1) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$3) (case $label$2)) (case $label$3)
(case $label$1
(block $label$5
(set_local $var$13
@@ -468,7 +468,7 @@
(set_local $var$11
(i32.add
(get_local $var$6)
- (i32.const 192)
+ (i32.const -64)
)
)
(set_local $var$10
@@ -497,7 +497,7 @@
(br $label$4)
)
)
- (case $label$3
+ (case $label$2
(block $label$8
(set_local $var$19
(get_local $var$0)
@@ -505,7 +505,7 @@
(br $label$4)
)
)
- (case $label$2
+ (case $label$3
(block $label$9
(set_local $var$12
(i32.add
@@ -560,7 +560,7 @@
(get_local $var$19)
)
)
- (func $_frexpl (param $var$0 f64) (param $var$1 i32) (result f64)
+ (func $_frexpl (type $8) (param $var$0 f64) (param $var$1 i32) (result f64)
(local $var$2 i32)
(local $var$3 i32)
(local $var$4 f64)
@@ -579,7 +579,7 @@
(get_local $var$4)
)
)
- (func $_strerror (param $var$0 i32) (result i32)
+ (func $_strerror (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -767,7 +767,7 @@
(set_local $var$6
(i32.add
(get_local $var$9)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$17
@@ -803,7 +803,7 @@
(get_local $var$13)
)
)
- (func $___errno_location (result i32)
+ (func $___errno_location (type $4) (result i32)
(local $var$0 i32)
(local $var$1 i32)
(local $var$2 i32)
@@ -857,7 +857,7 @@
(get_local $var$4)
)
)
- (func $___stdio_close (param $var$0 i32) (result i32)
+ (func $___stdio_close (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -927,7 +927,7 @@
(get_local $var$3)
)
)
- (func $___stdout_write (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $___stdout_write (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -1070,7 +1070,7 @@
)
(i32.store8 align=1
(get_local $var$9)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -1090,7 +1090,7 @@
(get_local $var$7)
)
)
- (func $___stdio_seek (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $___stdio_seek (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -1218,10 +1218,10 @@
(block $label$1
(i32.store align=4
(get_local $var$10)
- (i32.const 255)
+ (i32.const -1)
)
(set_local $var$5
- (i32.const 255)
+ (i32.const -1)
)
)
(block $label$2
@@ -1242,7 +1242,7 @@
(get_local $var$5)
)
)
- (func $_fflush (param $var$0 i32) (result i32)
+ (func $_fflush (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -1371,7 +1371,7 @@
(set_local $var$14
(i32.gt_s
(get_local $var$4)
- (i32.const 255)
+ (i32.const -1)
)
)
(if_else
@@ -1522,7 +1522,7 @@
(set_local $var$13
(i32.gt_s
(get_local $var$1)
- (i32.const 255)
+ (i32.const -1)
)
)
(if
@@ -1578,7 +1578,7 @@
(get_local $var$29)
)
)
- (func $_printf (param $var$0 i32) (param $var$1 i32) (result i32)
+ (func $_printf (type $5) (param $var$0 i32) (param $var$1 i32) (result i32)
(local $var$2 i32)
(local $var$3 i32)
(local $var$4 i32)
@@ -1636,7 +1636,7 @@
(get_local $var$4)
)
)
- (func $___lockfile (param $var$0 i32) (result i32)
+ (func $___lockfile (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(block $label$0
@@ -1648,7 +1648,7 @@
(i32.const 0)
)
)
- (func $___unlockfile (param $var$0 i32)
+ (func $___unlockfile (type $2) (param $var$0 i32)
(local $var$1 i32)
(local $var$2 i32)
(block $label$0
@@ -1660,7 +1660,7 @@
(br $label$0)
)
)
- (func $___stdio_write (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $___stdio_write (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -2071,7 +2071,7 @@
(set_local $var$36
(i32.add
(get_local $var$49)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$48
@@ -2332,7 +2332,7 @@
(get_local $var$55)
)
)
- (func $_vfprintf (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $_vfprintf (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -2484,7 +2484,7 @@
(if_else
(get_local $var$23)
(set_local $var$35
- (i32.const 255)
+ (i32.const -1)
)
(block $label$4
(set_local $var$28
@@ -2501,7 +2501,7 @@
(set_local $var$24
(i32.gt_s
(get_local $var$4)
- (i32.const 255)
+ (i32.const -1)
)
)
(if_else
@@ -2560,7 +2560,7 @@
(set_local $var$14
(i32.and
(get_local $var$5)
- (i32.const 223)
+ (i32.const -33)
)
)
(i32.store align=4
@@ -2702,7 +2702,7 @@
(set_local $var$3
(if_else
(get_local $var$38)
- (i32.const 255)
+ (i32.const -1)
(get_local $var$20)
)
)
@@ -2768,7 +2768,7 @@
(if_else
(get_local $var$39)
(get_local $var$33)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$32
@@ -2808,7 +2808,7 @@
(get_local $var$35)
)
)
- (func $___fwritex (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $___fwritex (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -3014,7 +3014,7 @@
)
(i32.const 24)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(block $label$7
@@ -3053,7 +3053,7 @@
(set_local $var$34
(i32.add
(get_local $var$27)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$19
@@ -3221,7 +3221,7 @@
(get_local $var$32)
)
)
- (func $___towrite (param $var$0 i32) (result i32)
+ (func $___towrite (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -3411,14 +3411,14 @@
(get_local $var$14)
)
(set_local $var$16
- (i32.const 255)
+ (i32.const -1)
)
)
)
(get_local $var$16)
)
)
- (func $_wcrtomb (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $_wcrtomb (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -3854,7 +3854,7 @@
(i32.const 84)
)
(set_local $var$42
- (i32.const 255)
+ (i32.const -1)
)
(br $label$1)
)
@@ -3865,7 +3865,7 @@
(get_local $var$42)
)
)
- (func $_wctomb (param $var$0 i32) (param $var$1 i32) (result i32)
+ (func $_wctomb (type $5) (param $var$0 i32) (param $var$1 i32) (result i32)
(local $var$2 i32)
(local $var$3 i32)
(local $var$4 i32)
@@ -3904,7 +3904,7 @@
(get_local $var$3)
)
)
- (func $_memchr (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $_memchr (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -4067,7 +4067,7 @@
(set_local $var$22
(i32.add
(get_local $var$31)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$6
@@ -4310,7 +4310,7 @@
(set_local $var$46
(i32.add
(get_local $var$33)
- (i32.const 252)
+ (i32.const -4)
)
)
(set_local $var$16
@@ -4448,7 +4448,7 @@
(set_local $var$23
(i32.add
(get_local $var$35)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$52
@@ -4501,7 +4501,7 @@
(get_local $var$20)
)
)
- (func $___syscall_ret (param $var$0 i32) (result i32)
+ (func $___syscall_ret (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -4540,7 +4540,7 @@
(get_local $var$4)
)
(set_local $var$3
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$3
@@ -4550,7 +4550,7 @@
(get_local $var$3)
)
)
- (func $___fflush_unlocked (param $var$0 i32) (result i32)
+ (func $___fflush_unlocked (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -4654,7 +4654,7 @@
(if_else
(get_local $var$17)
(set_local $var$11
- (i32.const 255)
+ (i32.const -1)
)
(set_local $var$22
(i32.const 3)
@@ -4779,7 +4779,7 @@
(get_local $var$11)
)
)
- (func $_cleanup (param $var$0 i32)
+ (func $_cleanup (type $2) (param $var$0 i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -4817,7 +4817,7 @@
(br $label$0)
)
)
- (func $_printf_core (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (param $var$4 i32) (result i32)
+ (func $_printf_core (type $9) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (param $var$4 i32) (result i32)
(local $var$5 i32)
(local $var$6 i32)
(local $var$7 i32)
@@ -6006,7 +6006,7 @@
)
(set_local $var$886
(i32.sub
- (i32.const 254)
+ (i32.const -2)
(get_local $var$866)
)
)
@@ -6054,7 +6054,7 @@
(set_local $var$431
(i32.gt_s
(get_local $var$549)
- (i32.const 255)
+ (i32.const -1)
)
)
(block $label$4
@@ -6084,7 +6084,7 @@
(i32.const 75)
)
(set_local $var$550
- (i32.const 255)
+ (i32.const -1)
)
(br $label$4)
)
@@ -6160,8 +6160,8 @@
)
(i32.const 0)
)
- (table (case $label$13) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$14) (case $label$15)) (case $label$14)
- (case $label$15
+ (table (case $label$14) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$15) (case $label$13)) (case $label$15)
+ (case $label$13
(block $label$17
(set_local $var$687
(get_local $var$684)
@@ -6176,7 +6176,7 @@
(br $label$16)
)
)
- (case $label$13
+ (case $label$14
(block $label$18
(set_local $var$686
(get_local $var$684)
@@ -6188,7 +6188,7 @@
(br $label$16)
)
)
- (case $label$14
+ (case $label$15
(nop)
)
)
@@ -6413,7 +6413,7 @@
(set_local $var$723
(i32.add
(get_local $var$586)
- (i32.const 208)
+ (i32.const -48)
)
)
(set_local $var$716
@@ -6475,7 +6475,7 @@
(if_else
(get_local $var$474)
(get_local $var$723)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$15
@@ -6501,7 +6501,7 @@
(get_local $var$234)
)
(set_local $var$397
- (i32.const 255)
+ (i32.const -1)
)
(set_local $var$746
(get_local $var$743)
@@ -6523,7 +6523,7 @@
(set_local $var$267
(i32.and
(get_local $var$588)
- (i32.const 224)
+ (i32.const -32)
)
)
(set_local $var$509
@@ -6553,7 +6553,7 @@
(set_local $var$927
(i32.add
(get_local $var$589)
- (i32.const 224)
+ (i32.const -32)
)
)
(set_local $var$837
@@ -6601,7 +6601,7 @@
(set_local $var$929
(i32.add
(get_local $var$590)
- (i32.const 224)
+ (i32.const -32)
)
)
(set_local $var$839
@@ -6639,7 +6639,7 @@
(set_local $var$34
(i32.and
(get_local $var$587)
- (i32.const 224)
+ (i32.const -32)
)
)
(set_local $var$508
@@ -6733,7 +6733,7 @@
(set_local $var$730
(i32.add
(get_local $var$593)
- (i32.const 208)
+ (i32.const -48)
)
)
(set_local $var$722
@@ -6804,7 +6804,7 @@
(set_local $var$934
(i32.add
(get_local $var$594)
- (i32.const 208)
+ (i32.const -48)
)
)
(set_local $var$657
@@ -6888,7 +6888,7 @@
)
(block $label$44
(set_local $var$821
- (i32.const 255)
+ (i32.const -1)
)
(br $label$1)
)
@@ -6961,7 +6961,7 @@
(set_local $var$632
(i32.xor
(get_local $var$633)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$199
@@ -7062,7 +7062,7 @@
(set_local $var$725
(i32.add
(get_local $var$565)
- (i32.const 208)
+ (i32.const -48)
)
)
(set_local $var$717
@@ -7123,7 +7123,7 @@
(set_local $var$727
(i32.add
(get_local $var$568)
- (i32.const 208)
+ (i32.const -48)
)
)
(set_local $var$719
@@ -7171,7 +7171,7 @@
(get_local $var$434)
(block $label$55
(set_local $var$821
- (i32.const 255)
+ (i32.const -1)
)
(br $label$1)
)
@@ -7271,7 +7271,7 @@
(set_local $var$726
(i32.add
(get_local $var$566)
- (i32.const 208)
+ (i32.const -48)
)
)
(set_local $var$718
@@ -7343,7 +7343,7 @@
(set_local $var$728
(i32.add
(get_local $var$569)
- (i32.const 208)
+ (i32.const -48)
)
)
(set_local $var$720
@@ -7406,7 +7406,7 @@
(set_local $var$729
(i32.add
(get_local $var$575)
- (i32.const 208)
+ (i32.const -48)
)
)
(set_local $var$721
@@ -7477,7 +7477,7 @@
(set_local $var$910
(i32.add
(get_local $var$577)
- (i32.const 208)
+ (i32.const -48)
)
)
(set_local $var$656
@@ -7544,7 +7544,7 @@
)
(block $label$70
(set_local $var$821
- (i32.const 255)
+ (i32.const -1)
)
(br $label$1)
)
@@ -7599,7 +7599,7 @@
(set_local $var$628
(i32.xor
(get_local $var$629)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$230
@@ -7648,7 +7648,7 @@
(get_local $var$680)
)
(set_local $var$790
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -7678,7 +7678,7 @@
(set_local $var$912
(i32.add
(get_local $var$578)
- (i32.const 191)
+ (i32.const -65)
)
)
(set_local $var$441
@@ -7694,7 +7694,7 @@
(get_local $var$441)
(block $label$77
(set_local $var$821
- (i32.const 255)
+ (i32.const -1)
)
(br $label$1)
)
@@ -7731,7 +7731,7 @@
(set_local $var$913
(i32.add
(get_local $var$579)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$442
@@ -7791,7 +7791,7 @@
(get_local $var$964)
(block $label$80
(set_local $var$821
- (i32.const 255)
+ (i32.const -1)
)
(br $label$1)
)
@@ -7811,7 +7811,7 @@
(set_local $var$445
(i32.gt_s
(get_local $var$397)
- (i32.const 255)
+ (i32.const -1)
)
)
(block $label$81
@@ -7821,7 +7821,7 @@
(get_local $var$445)
(block $label$82
(set_local $var$821
- (i32.const 255)
+ (i32.const -1)
)
(br $label$1)
)
@@ -8002,7 +8002,7 @@
(set_local $var$376
(i32.and
(get_local $var$581)
- (i32.const 223)
+ (i32.const -33)
)
)
(set_local $var$937
@@ -8043,15 +8043,15 @@
(get_local $var$937)
(i32.const 65)
)
- (table (case $label$89) (case $label$90) (case $label$91) (case $label$90) (case $label$92) (case $label$93) (case $label$94) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$95) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$96) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$90) (case $label$97) (case $label$90) (case $label$98) (case $label$99) (case $label$100) (case $label$101) (case $label$102) (case $label$90) (case $label$103) (case $label$90) (case $label$90) (case $label$90) (case $label$104) (case $label$105) (case $label$106) (case $label$107) (case $label$90) (case $label$90) (case $label$108) (case $label$90) (case $label$109) (case $label$90) (case $label$90) (case $label$110)) (case $label$90)
- (case $label$105
+ (table (case $label$102) (case $label$110) (case $label$100) (case $label$110) (case $label$105) (case $label$104) (case $label$103) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$101) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$91) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$110) (case $label$106) (case $label$110) (case $label$97) (case $label$95) (case $label$109) (case $label$108) (case $label$107) (case $label$110) (case $label$94) (case $label$110) (case $label$110) (case $label$110) (case $label$98) (case $label$89) (case $label$93) (case $label$90) (case $label$110) (case $label$110) (case $label$99) (case $label$110) (case $label$96) (case $label$110) (case $label$110) (case $label$92)) (case $label$110)
+ (case $label$89
(block $label$112
(tableswitch $label$121
(i32.sub
(get_local $var$844)
(i32.const 0)
)
- (table (case $label$113) (case $label$114) (case $label$115) (case $label$116) (case $label$117) (case $label$118) (case $label$119) (case $label$120)) (case $label$118)
+ (table (case $label$113) (case $label$114) (case $label$115) (case $label$116) (case $label$117) (case $label$120) (case $label$118) (case $label$119)) (case $label$120)
(case $label$113
(block $label$122
(set_local $var$258
@@ -8233,7 +8233,7 @@
(br $label$121)
)
)
- (case $label$119
+ (case $label$118
(block $label$127
(set_local $var$270
(i32.load align=4
@@ -8260,7 +8260,7 @@
(br $label$121)
)
)
- (case $label$120
+ (case $label$119
(block $label$128
(set_local $var$271
(i32.lt_s
@@ -8321,7 +8321,7 @@
(br $label$121)
)
)
- (case $label$118
+ (case $label$120
(block $label$129
(set_local $var$549
(get_local $var$550)
@@ -8342,7 +8342,7 @@
(br $label$111)
)
)
- (case $label$107
+ (case $label$90
(block $label$130
(set_local $var$455
(i32.gt_u
@@ -8381,10 +8381,10 @@
(br $label$111)
)
)
- (case $label$96
+ (case $label$91
(nop)
)
- (case $label$110
+ (case $label$92
(block $label$131
(set_local $var$639
(get_local $var$638)
@@ -8401,7 +8401,7 @@
(br $label$111)
)
)
- (case $label$106
+ (case $label$93
(block $label$132
(set_local $var$41
(get_local $var$392)
@@ -8484,7 +8484,7 @@
(set_local $var$671
(i32.add
(get_local $var$828)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store8 align=1
@@ -8632,10 +8632,10 @@
(br $label$111)
)
)
- (case $label$103
+ (case $label$94
(nop)
)
- (case $label$99
+ (case $label$95
(block $label$141
(set_local $var$62
(get_local $var$392)
@@ -8796,7 +8796,7 @@
(br $label$111)
)
)
- (case $label$109
+ (case $label$96
(block $label$145
(set_local $var$251
(get_local $var$392)
@@ -8841,7 +8841,7 @@
(br $label$111)
)
)
- (case $label$98
+ (case $label$97
(block $label$146
(set_local $var$91
(get_local $var$392)
@@ -8899,7 +8899,7 @@
(br $label$111)
)
)
- (case $label$104
+ (case $label$98
(block $label$147
(set_local $var$424
(call $___errno_location)
@@ -8923,7 +8923,7 @@
(br $label$111)
)
)
- (case $label$108
+ (case $label$99
(block $label$148
(set_local $var$99
(i32.load align=4
@@ -8952,7 +8952,7 @@
(br $label$111)
)
)
- (case $label$91
+ (case $label$100
(block $label$149
(set_local $var$101
(get_local $var$392)
@@ -8992,7 +8992,7 @@
(get_local $var$1007)
)
(set_local $var$795
- (i32.const 255)
+ (i32.const -1)
)
(set_local $var$1034
(i32.const 86)
@@ -9000,7 +9000,7 @@
(br $label$111)
)
)
- (case $label$95
+ (case $label$101
(block $label$150
(set_local $var$477
(i32.eq
@@ -9037,28 +9037,28 @@
(br $label$111)
)
)
- (case $label$89
+ (case $label$102
(nop)
)
- (case $label$94
+ (case $label$103
(nop)
)
- (case $label$93
+ (case $label$104
(nop)
)
- (case $label$92
+ (case $label$105
(nop)
)
- (case $label$97
+ (case $label$106
(nop)
)
- (case $label$102
+ (case $label$107
(nop)
)
- (case $label$101
+ (case $label$108
(nop)
)
- (case $label$100
+ (case $label$109
(block $label$153
(set_local $var$1038
(f64.load align=8
@@ -9270,7 +9270,7 @@
(set_local $var$605
(i32.add
(get_local $var$127)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store align=4
@@ -9370,7 +9370,7 @@
(set_local $var$608
(i32.add
(get_local $var$816)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$1051
@@ -9568,7 +9568,7 @@
(set_local $var$674
(i32.add
(get_local $var$620)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store8 align=1
@@ -9590,7 +9590,7 @@
(set_local $var$675
(i32.add
(get_local $var$620)
- (i32.const 254)
+ (i32.const -2)
)
)
(i32.store8 align=1
@@ -10036,7 +10036,7 @@
(set_local $var$915
(i32.add
(get_local $var$143)
- (i32.const 228)
+ (i32.const -28)
)
)
(i32.store align=4
@@ -10193,7 +10193,7 @@
(set_local $var$595
(i32.add
(get_local $var$1023)
- (i32.const 252)
+ (i32.const -4)
)
)
(set_local $var$453
@@ -10286,7 +10286,7 @@
(set_local $var$596
(i32.add
(get_local $var$597)
- (i32.const 252)
+ (i32.const -4)
)
)
(set_local $var$454
@@ -10339,7 +10339,7 @@
(set_local $var$691
(i32.add
(get_local $var$292)
- (i32.const 252)
+ (i32.const -4)
)
)
(i32.store align=4
@@ -10384,7 +10384,7 @@
(set_local $var$409
(i32.add
(get_local $var$1025)
- (i32.const 252)
+ (i32.const -4)
)
)
(set_local $var$157
@@ -10497,7 +10497,7 @@
(get_local $var$335)
(i32.const 9)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$336
@@ -10567,7 +10567,7 @@
(set_local $var$918
(i32.add
(get_local $var$838)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$842
@@ -11048,7 +11048,7 @@
(set_local $var$763
(i32.add
(get_local $var$167)
- (i32.const 247)
+ (i32.const -9)
)
)
(set_local $var$472
@@ -11078,7 +11078,7 @@
(get_local $var$340)
(i32.const 9)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$921
@@ -11102,7 +11102,7 @@
(get_local $var$340)
(i32.const 9)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$733
@@ -11188,7 +11188,7 @@
(i32.const 0)
)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$983
@@ -11242,7 +11242,7 @@
(i32.const 0)
)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$388
@@ -11270,7 +11270,7 @@
(get_local $var$648)
(i32.const 2)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$480
@@ -11457,7 +11457,7 @@
(set_local $var$701
(i32.add
(get_local $var$600)
- (i32.const 252)
+ (i32.const -4)
)
)
(i32.store align=4
@@ -11482,7 +11482,7 @@
(set_local $var$702
(i32.add
(get_local $var$298)
- (i32.const 252)
+ (i32.const -4)
)
)
(i32.store align=4
@@ -11755,7 +11755,7 @@
(set_local $var$413
(i32.add
(get_local $var$1031)
- (i32.const 252)
+ (i32.const -4)
)
)
(set_local $var$172
@@ -11818,7 +11818,7 @@
(set_local $var$502
(i32.gt_s
(get_local $var$617)
- (i32.const 251)
+ (i32.const -5)
)
)
(set_local $var$778
@@ -11833,13 +11833,13 @@
(set_local $var$606
(i32.add
(get_local $var$937)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$345
(i32.add
(get_local $var$10)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$924
@@ -11859,13 +11859,13 @@
(set_local $var$925
(i32.add
(get_local $var$937)
- (i32.const 254)
+ (i32.const -2)
)
)
(set_local $var$607
(i32.add
(get_local $var$10)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$799
@@ -11913,7 +11913,7 @@
(set_local $var$416
(i32.add
(get_local $var$1032)
- (i32.const 252)
+ (i32.const -4)
)
)
(set_local $var$174
@@ -11945,7 +11945,7 @@
)
(i32.const 10)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$506
@@ -11997,7 +11997,7 @@
(i32.const 0)
)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$507
@@ -12068,7 +12068,7 @@
(set_local $var$768
(i32.add
(get_local $var$175)
- (i32.const 247)
+ (i32.const -9)
)
)
(if_else
@@ -12303,7 +12303,7 @@
(set_local $var$704
(i32.add
(get_local $var$622)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store8 align=1
@@ -12372,7 +12372,7 @@
(set_local $var$705
(i32.add
(get_local $var$621)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store8 align=1
@@ -12388,7 +12388,7 @@
(set_local $var$706
(i32.add
(get_local $var$621)
- (i32.const 254)
+ (i32.const -2)
)
)
(i32.store8 align=1
@@ -12587,7 +12587,7 @@
(set_local $var$707
(i32.add
(get_local $var$830)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store8 align=1
@@ -12808,7 +12808,7 @@
(set_local $var$711
(i32.add
(get_local $var$833)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store8 align=1
@@ -12896,7 +12896,7 @@
(set_local $var$931
(i32.add
(get_local $var$802)
- (i32.const 247)
+ (i32.const -9)
)
)
(set_local $var$529
@@ -12979,7 +12979,7 @@
(set_local $var$536
(i32.gt_s
(get_local $var$800)
- (i32.const 255)
+ (i32.const -1)
)
)
(if_else
@@ -13162,7 +13162,7 @@
(set_local $var$713
(i32.add
(get_local $var$835)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store8 align=1
@@ -13275,7 +13275,7 @@
(set_local $var$537
(i32.gt_s
(get_local $var$933)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$203
@@ -13565,7 +13565,7 @@
(br $label$111)
)
)
- (case $label$90
+ (case $label$110
(block $label$345
(set_local $var$293
(get_local $var$685)
@@ -13720,7 +13720,7 @@
(set_local $var$669
(i32.add
(get_local $var$827)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store8 align=1
@@ -14163,7 +14163,7 @@
(get_local $var$483)
(block $label$367
(set_local $var$821
- (i32.const 255)
+ (i32.const -1)
)
(br $label$1)
)
@@ -14394,7 +14394,7 @@
(set_local $var$464
(i32.gt_s
(get_local $var$792)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$385
@@ -14849,7 +14849,7 @@
)
(block $label$394
(set_local $var$821
- (i32.const 255)
+ (i32.const -1)
)
(br $label$381)
)
@@ -14897,7 +14897,7 @@
(get_local $var$821)
)
)
- (func $_pop_arg_336 (param $var$0 i32) (param $var$1 i32) (param $var$2 i32)
+ (func $_pop_arg_336 (type $10) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -15162,7 +15162,7 @@
(set_local $var$139
(i32.xor
(get_local $var$140)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$46
@@ -15246,7 +15246,7 @@
(set_local $var$144
(i32.xor
(get_local $var$145)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$15
@@ -15364,7 +15364,7 @@
(set_local $var$149
(i32.xor
(get_local $var$150)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$29
@@ -15467,7 +15467,7 @@
(set_local $var$154
(i32.xor
(get_local $var$155)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$41
@@ -15590,7 +15590,7 @@
(set_local $var$159
(i32.xor
(get_local $var$160)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$59
@@ -15723,7 +15723,7 @@
(set_local $var$164
(i32.xor
(get_local $var$165)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$74
@@ -15832,7 +15832,7 @@
(set_local $var$169
(i32.xor
(get_local $var$170)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$86
@@ -15965,7 +15965,7 @@
(set_local $var$174
(i32.xor
(get_local $var$175)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$102
@@ -16074,7 +16074,7 @@
(set_local $var$179
(i32.xor
(get_local $var$180)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$7
@@ -16158,7 +16158,7 @@
(set_local $var$184
(i32.xor
(get_local $var$185)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$13
@@ -16202,7 +16202,7 @@
(br $label$0)
)
)
- (func $_fmt_u (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $_fmt_u (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -16261,7 +16261,7 @@
(get_local $var$0)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$18
@@ -16324,7 +16324,7 @@
(set_local $var$27
(i32.add
(get_local $var$32)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store8 align=1
@@ -16359,7 +16359,7 @@
(get_local $var$21)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$10
@@ -16454,7 +16454,7 @@
)
(i32.const 10)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$24
@@ -16472,7 +16472,7 @@
(set_local $var$29
(i32.add
(get_local $var$34)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store8 align=1
@@ -16488,7 +16488,7 @@
)
(i32.const 10)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$14
@@ -16525,7 +16525,7 @@
(get_local $var$33)
)
)
- (func $_pad (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (param $var$4 i32)
+ (func $_pad (type $11) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (param $var$4 i32)
(local $var$5 i32)
(local $var$6 i32)
(local $var$7 i32)
@@ -16785,7 +16785,7 @@
(br $label$0)
)
)
- (func $_malloc (param $var$0 i32) (result i32)
+ (func $_malloc (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -18012,7 +18012,7 @@
(set_local $var$366
(i32.and
(get_local $var$326)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$761
@@ -18131,7 +18131,7 @@
(set_local $var$864
(i32.xor
(get_local $var$970)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$385
@@ -18336,7 +18336,7 @@
(set_local $var$1146
(i32.add
(get_local $var$424)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$1052
@@ -18515,7 +18515,7 @@
(set_local $var$867
(i32.xor
(get_local $var$1006)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$442
@@ -18871,7 +18871,7 @@
(set_local $var$1126
(i32.add
(get_local $var$367)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$1014
@@ -19022,7 +19022,7 @@
(set_local $var$392
(i32.and
(get_local $var$138)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$1127
@@ -19113,7 +19113,7 @@
(set_local $var$408
(i32.and
(get_local $var$141)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$1134
@@ -19562,7 +19562,7 @@
(set_local $var$859
(i32.xor
(get_local $var$962)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$155
@@ -20136,13 +20136,13 @@
(get_local $var$0)
(i32.const 0)
)
- (i32.const 191)
+ (i32.const -65)
)
)
(if_else
(get_local $var$613)
(set_local $var$857
- (i32.const 255)
+ (i32.const -1)
)
(block $label$57
(set_local $var$319
@@ -20154,7 +20154,7 @@
(set_local $var$386
(i32.and
(get_local $var$319)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$171
@@ -20452,7 +20452,7 @@
(set_local $var$410
(i32.and
(get_local $var$173)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$1138
@@ -20723,7 +20723,7 @@
(set_local $var$1155
(i32.add
(get_local $var$436)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$1068
@@ -20925,7 +20925,7 @@
(set_local $var$375
(i32.and
(get_local $var$178)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$1115
@@ -21485,7 +21485,7 @@
(set_local $var$860
(i32.xor
(get_local $var$975)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$196
@@ -22356,7 +22356,7 @@
(set_local $var$419
(i32.and
(get_local $var$211)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$703
@@ -22923,7 +22923,7 @@
(set_local $var$1104
(i32.add
(get_local $var$550)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$373
@@ -22951,11 +22951,11 @@
)
(i32.store align=4
(i32.const 660)
- (i32.const 255)
+ (i32.const -1)
)
(i32.store align=4
(i32.const 664)
- (i32.const 255)
+ (i32.const -1)
)
(i32.store align=4
(i32.const 668)
@@ -22973,7 +22973,7 @@
(set_local $var$1187
(i32.and
(get_local $var$556)
- (i32.const 240)
+ (i32.const -16)
)
)
(set_local $var$439
@@ -23329,7 +23329,7 @@
(set_local $var$750
(i32.eq
(get_local $var$558)
- (i32.const 255)
+ (i32.const -1)
)
)
(if
@@ -23383,7 +23383,7 @@
(set_local $var$701
(i32.eq
(get_local $var$555)
- (i32.const 255)
+ (i32.const -1)
)
)
(if
@@ -23403,7 +23403,7 @@
(set_local $var$1144
(i32.add
(get_local $var$27)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$423
@@ -23613,7 +23613,7 @@
(set_local $var$753
(i32.ne
(get_local $var$549)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$754
@@ -23702,7 +23702,7 @@
(set_local $var$585
(i32.eq
(get_local $var$551)
- (i32.const 255)
+ (i32.const -1)
)
)
(if_else
@@ -23740,7 +23740,7 @@
(set_local $var$591
(i32.eq
(get_local $var$549)
- (i32.const 255)
+ (i32.const -1)
)
)
(if
@@ -23819,13 +23819,13 @@
(set_local $var$606
(i32.ne
(get_local $var$552)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$608
(i32.ne
(get_local $var$553)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$882
@@ -24024,7 +24024,7 @@
)
(i32.store align=4
(i32.const 208)
- (i32.const 255)
+ (i32.const -1)
)
(set_local $var$848
(i32.const 0)
@@ -24091,7 +24091,7 @@
(set_local $var$1123
(i32.add
(get_local $var$1179)
- (i32.const 216)
+ (i32.const -40)
)
)
(set_local $var$266
@@ -24900,7 +24900,7 @@
(set_local $var$418
(i32.and
(get_local $var$69)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$1016
@@ -25031,7 +25031,7 @@
(set_local $var$862
(i32.xor
(get_local $var$1001)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$75
@@ -25493,7 +25493,7 @@
(set_local $var$865
(i32.xor
(get_local $var$972)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$89
@@ -25791,7 +25791,7 @@
(set_local $var$391
(i32.and
(get_local $var$97)
- (i32.const 254)
+ (i32.const -2)
)
)
(i32.store align=4
@@ -26337,7 +26337,7 @@
(set_local $var$409
(i32.and
(get_local $var$104)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$687
@@ -26697,7 +26697,7 @@
(set_local $var$287
(i32.add
(get_local $var$273)
- (i32.const 209)
+ (i32.const -47)
)
)
(set_local $var$297
@@ -26786,7 +26786,7 @@
(set_local $var$1121
(i32.add
(get_local $var$1179)
- (i32.const 216)
+ (i32.const -40)
)
)
(set_local $var$265
@@ -27033,7 +27033,7 @@
(set_local $var$411
(i32.and
(get_local $var$121)
- (i32.const 254)
+ (i32.const -2)
)
)
(i32.store align=4
@@ -27558,7 +27558,7 @@
(set_local $var$380
(i32.and
(get_local $var$130)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$595
@@ -27922,7 +27922,7 @@
(get_local $var$949)
)
)
- (func $_free (param $var$0 i32)
+ (func $_free (type $2) (param $var$0 i32)
(local $var$1 i32)
(local $var$2 i32)
(local $var$3 i32)
@@ -28295,7 +28295,7 @@
(set_local $var$96
(i32.add
(get_local $var$0)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$5
@@ -28322,7 +28322,7 @@
(set_local $var$274
(i32.add
(get_local $var$0)
- (i32.const 252)
+ (i32.const -4)
)
)
(set_local $var$6
@@ -28349,7 +28349,7 @@
(set_local $var$123
(i32.and
(get_local $var$6)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$102
@@ -28482,7 +28482,7 @@
(set_local $var$115
(i32.and
(get_local $var$25)
- (i32.const 254)
+ (i32.const -2)
)
)
(i32.store align=4
@@ -28645,7 +28645,7 @@
(set_local $var$287
(i32.xor
(get_local $var$319)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$72
@@ -29117,7 +29117,7 @@
(set_local $var$288
(i32.xor
(get_local $var$315)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$18
@@ -29617,7 +29617,7 @@
(set_local $var$118
(i32.and
(get_local $var$26)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$106
@@ -29759,7 +29759,7 @@
(set_local $var$289
(i32.xor
(get_local $var$317)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$37
@@ -30228,7 +30228,7 @@
(set_local $var$290
(i32.xor
(get_local $var$318)
- (i32.const 255)
+ (i32.const -1)
)
)
(set_local $var$55
@@ -30546,7 +30546,7 @@
(set_local $var$122
(i32.and
(get_local $var$26)
- (i32.const 254)
+ (i32.const -2)
)
)
(i32.store align=4
@@ -31088,7 +31088,7 @@
(set_local $var$130
(i32.and
(get_local $var$70)
- (i32.const 248)
+ (i32.const -8)
)
)
(set_local $var$246
@@ -31352,7 +31352,7 @@
(set_local $var$258
(i32.add
(get_local $var$77)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store align=4
@@ -31403,15 +31403,15 @@
)
(i32.store align=4
(i32.const 208)
- (i32.const 255)
+ (i32.const -1)
)
(br $label$0)
)
)
- (func $runPostSets
+ (func $runPostSets (type $3)
(nop)
)
- (func $_i64Subtract (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
+ (func $_i64Subtract (type $12) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
(local $var$4 i32)
(local $var$5 i32)
(block $label$0
@@ -31463,7 +31463,7 @@
)
)
)
- (func $_i64Add (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
+ (func $_i64Add (type $12) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
(local $var$4 i32)
(local $var$5 i32)
(block $label$0
@@ -31506,7 +31506,7 @@
)
)
)
- (func $_memset (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $_memset (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(local $var$4 i32)
(local $var$5 i32)
@@ -31562,7 +31562,7 @@
(get_local $var$3)
(i32.xor
(i32.const 3)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -31663,7 +31663,7 @@
)
)
)
- (func $_bitshift64Lshr (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $_bitshift64Lshr (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(block $label$0
(if
@@ -31721,7 +31721,7 @@
)
)
)
- (func $_bitshift64Shl (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $_bitshift64Shl (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(block $label$0
(if
@@ -31785,7 +31785,7 @@
(i32.const 0)
)
)
- (func $_memcpy (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $_memcpy (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(block $label$0
(if
@@ -31947,7 +31947,7 @@
(get_local $var$3)
)
)
- (func $_bitshift64Ashr (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $_bitshift64Ashr (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(local $var$3 i32)
(block $label$0
(if
@@ -31999,7 +31999,7 @@
(get_local $var$1)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
)
@@ -32012,7 +32012,7 @@
)
)
)
- (func $_llvm_cttz_i32 (param $var$0 i32) (result i32)
+ (func $_llvm_cttz_i32 (type $1) (param $var$0 i32) (result i32)
(local $var$1 i32)
(block $label$0
(set_local $var$1
@@ -32109,7 +32109,7 @@
)
)
)
- (func $___muldsi3 (param $var$0 i32) (param $var$1 i32) (result i32)
+ (func $___muldsi3 (type $5) (param $var$0 i32) (param $var$1 i32) (result i32)
(local $var$2 i32)
(local $var$3 i32)
(local $var$4 i32)
@@ -32211,7 +32211,7 @@
)
)
)
- (func $___divdi3 (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
+ (func $___divdi3 (type $12) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
(local $var$4 i32)
(local $var$5 i32)
(local $var$6 i32)
@@ -32236,7 +32236,7 @@
(get_local $var$1)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 1)
@@ -32251,7 +32251,7 @@
(get_local $var$1)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 31)
@@ -32262,7 +32262,7 @@
(get_local $var$1)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 1)
@@ -32281,7 +32281,7 @@
(get_local $var$3)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 1)
@@ -32296,7 +32296,7 @@
(get_local $var$3)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 31)
@@ -32307,7 +32307,7 @@
(get_local $var$3)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 1)
@@ -32389,7 +32389,7 @@
(get_local $var$14)
)
)
- (func $___remdi3 (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
+ (func $___remdi3 (type $12) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
(local $var$4 i32)
(local $var$5 i32)
(local $var$6 i32)
@@ -32431,7 +32431,7 @@
(get_local $var$1)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 1)
@@ -32446,7 +32446,7 @@
(get_local $var$1)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 31)
@@ -32457,7 +32457,7 @@
(get_local $var$1)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 1)
@@ -32476,7 +32476,7 @@
(get_local $var$3)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 1)
@@ -32491,7 +32491,7 @@
(get_local $var$3)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 31)
@@ -32502,7 +32502,7 @@
(get_local $var$3)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 1)
@@ -32590,7 +32590,7 @@
)
)
)
- (func $___muldi3 (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
+ (func $___muldi3 (type $12) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
(local $var$4 i32)
(local $var$5 i32)
(local $var$6 i32)
@@ -32644,13 +32644,13 @@
(i32.const 0)
(i32.and
(get_local $var$6)
- (i32.const 255)
+ (i32.const -1)
)
)
)
)
)
- (func $___udivdi3 (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
+ (func $___udivdi3 (type $12) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
(local $var$4 i32)
(block $label$0
(set_local $var$4
@@ -32665,7 +32665,7 @@
(get_local $var$4)
)
)
- (func $___uremdi3 (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
+ (func $___uremdi3 (type $12) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
(local $var$4 i32)
(local $var$5 i32)
(block $label$0
@@ -32713,7 +32713,7 @@
)
)
)
- (func $___udivmoddi4 (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (param $var$4 i32) (result i32)
+ (func $___udivmoddi4 (type $9) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (param $var$4 i32) (result i32)
(local $var$5 i32)
(local $var$6 i32)
(local $var$7 i32)
@@ -32896,7 +32896,7 @@
(get_local $var$4)
(i32.and
(get_local $var$0)
- (i32.const 255)
+ (i32.const -1)
)
)
(i32.store align=4
@@ -33091,7 +33091,7 @@
(i32.const 0)
(i32.and
(get_local $var$0)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -33240,7 +33240,7 @@
(i32.const 0)
(i32.and
(get_local $var$0)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -33397,7 +33397,7 @@
(i32.const 0)
(i32.and
(get_local $var$0)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -33630,7 +33630,7 @@
(i32.const 0)
(i32.and
(get_local $var$0)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -33725,7 +33725,7 @@
(i32.const 0)
(i32.and
(get_local $var$2)
- (i32.const 255)
+ (i32.const -1)
)
)
)
@@ -33742,8 +33742,8 @@
(call $_i64Add
(get_local $var$37)
(get_local $var$38)
- (i32.const 255)
- (i32.const 255)
+ (i32.const -1)
+ (i32.const -1)
)
)
(set_local $var$40
@@ -33842,7 +33842,7 @@
(get_local $var$51)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 1)
@@ -33871,7 +33871,7 @@
(get_local $var$51)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 31)
@@ -33882,7 +33882,7 @@
(get_local $var$51)
(i32.const 0)
)
- (i32.const 255)
+ (i32.const -1)
(i32.const 0)
)
(i32.const 1)
@@ -34036,7 +34036,7 @@
(i32.const 31)
)
)
- (i32.const 254)
+ (i32.const -2)
)
(get_local $var$58)
)
@@ -34050,7 +34050,7 @@
)
)
)
- (func $dynCall_ii (param $var$0 i32) (param $var$1 i32) (result i32)
+ (func $dynCall_ii (type $5) (param $var$0 i32) (param $var$1 i32) (result i32)
(call_indirect $1
(i32.add
(i32.and
@@ -34062,7 +34062,7 @@
(get_local $var$1)
)
)
- (func $dynCall_iiii (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
+ (func $dynCall_iiii (type $12) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (result i32)
(call_indirect $0
(i32.add
(i32.and
@@ -34076,7 +34076,7 @@
(get_local $var$3)
)
)
- (func $dynCall_vi (param $var$0 i32) (param $var$1 i32)
+ (func $dynCall_vi (type $6) (param $var$0 i32) (param $var$1 i32)
(call_indirect $2
(i32.add
(i32.and
@@ -34088,7 +34088,7 @@
(get_local $var$1)
)
)
- (func $b0 (param $var$0 i32) (result i32)
+ (func $b0 (type $1) (param $var$0 i32) (result i32)
(block $label$0
(call_import $nullFunc_ii
(i32.const 0)
@@ -34096,7 +34096,7 @@
(i32.const 0)
)
)
- (func $b1 (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $b1 (type $0) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(block $label$0
(call_import $nullFunc_iiii
(i32.const 1)
@@ -34104,7 +34104,7 @@
(i32.const 0)
)
)
- (func $b2 (param $var$0 i32)
+ (func $b2 (type $2) (param $var$0 i32)
(call_import $nullFunc_vi
(i32.const 2)
)
diff --git a/test/hello_world.wast.fromBinary b/test/hello_world.wast.fromBinary
index 7f2e65239..74331f60c 100644
--- a/test/hello_world.wast.fromBinary
+++ b/test/hello_world.wast.fromBinary
@@ -2,7 +2,7 @@
(memory 16777216 16777216)
(type $0 (func (param i32 i32) (result i32)))
(export "add" $add)
- (func $add (param $var$0 i32) (param $var$1 i32) (result i32)
+ (func $add (type $0) (param $var$0 i32) (param $var$1 i32) (result i32)
(i32.add
(get_local $var$0)
(get_local $var$1)
diff --git a/test/kitchen_sink.wast.fromBinary b/test/kitchen_sink.wast.fromBinary
index 1000fc759..473161af7 100644
--- a/test/kitchen_sink.wast.fromBinary
+++ b/test/kitchen_sink.wast.fromBinary
@@ -1,7 +1,9 @@
(module
- (memory 4096 4096)
+ (memory 4096 4096
+ (segment 1026 "\14\00")
+ )
(type $0 (func (result i32)))
- (func $kitchensink (result i32)
+ (func $kitchensink (type $0) (result i32)
(block $label$0
(i32.add
(i32.const 10)
@@ -351,31 +353,31 @@
(f64.const 10)
(f64.const 10)
)
- (f32.convert_s/i32
+ (i32.trunc_s/f32
(f32.const 10)
)
- (f64.convert_s/i32
+ (i32.trunc_s/f64
(f64.const 10)
)
- (f32.convert_u/i32
+ (i32.trunc_u/f32
(f32.const 10)
)
- (f64.convert_u/i32
+ (i32.trunc_u/f64
(f64.const 10)
)
(i32.wrap/i64
(i64.const 100)
)
- (f32.convert_s/i64
+ (i64.trunc_s/f32
(f32.const 10)
)
- (f64.convert_s/i64
+ (i64.trunc_s/f64
(f64.const 10)
)
- (f32.convert_u/i64
+ (i64.trunc_u/f32
(f32.const 10)
)
- (f64.convert_u/i64
+ (i64.trunc_u/f64
(f64.const 10)
)
(i64.extend_s/i32
@@ -390,7 +392,7 @@
(f32.convert_u/i32
(i32.const 10)
)
- (f32.convert_u/i64
+ (f32.convert_s/i64
(i64.const 100)
)
(f32.convert_u/i64
@@ -408,7 +410,7 @@
(f64.convert_u/i32
(i32.const 10)
)
- (f64.convert_u/i64
+ (f64.convert_s/i64
(i64.const 100)
)
(f64.convert_u/i64
diff --git a/test/llvm_autogenerated/i64-load-store-alignment.wast b/test/llvm_autogenerated/i64-load-store-alignment.wast
index 7f6903240..bd86f0512 100644
--- a/test/llvm_autogenerated/i64-load-store-alignment.wast
+++ b/test/llvm_autogenerated/i64-load-store-alignment.wast
@@ -155,7 +155,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (i64.load align=1
+ (i64.load32_u align=1
(get_local $$0)
)
)
@@ -166,7 +166,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (i64.load align=2
+ (i64.load32_u align=2
(get_local $$0)
)
)
@@ -177,7 +177,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (i64.load align=4
+ (i64.load32_u align=4
(get_local $$0)
)
)
@@ -188,7 +188,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (i64.load align=8
+ (i64.load32_u align=8
(get_local $$0)
)
)
diff --git a/test/llvm_autogenerated/immediates.wast b/test/llvm_autogenerated/immediates.wast
index 2a74f80e7..f4c6ad255 100644
--- a/test/llvm_autogenerated/immediates.wast
+++ b/test/llvm_autogenerated/immediates.wast
@@ -136,7 +136,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (f32.const nan)
+ (f32.const nan:0x400000)
)
)
)
@@ -145,7 +145,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (f32.const -nan)
+ (f32.const -nan:0x400000)
)
)
)
@@ -208,7 +208,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (f64.const nan)
+ (f64.const nan:0x8000000000000)
)
)
)
@@ -217,7 +217,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (f64.const -nan)
+ (f64.const -nan:0x8000000000000)
)
)
)
diff --git a/test/llvm_autogenerated/load-ext.wast b/test/llvm_autogenerated/load-ext.wast
index 7c54d6cec..100ac2001 100644
--- a/test/llvm_autogenerated/load-ext.wast
+++ b/test/llvm_autogenerated/load-ext.wast
@@ -102,7 +102,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (i64.load align=4
+ (i64.load32_s align=4
(get_local $$0)
)
)
@@ -113,7 +113,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (i64.load align=4
+ (i64.load32_u align=4
(get_local $$0)
)
)
diff --git a/test/min.wast.fromBinary b/test/min.wast.fromBinary
index 65e4d234e..22aba76b3 100644
--- a/test/min.wast.fromBinary
+++ b/test/min.wast.fromBinary
@@ -5,14 +5,14 @@
(type $2 (func (param i32) (result i32)))
(type $3 (func (param i32 i32 i32) (result i32)))
(export "floats" $floats)
- (func $floats (param $var$0 f32) (result f32)
+ (func $floats (type $0) (param $var$0 f32) (result f32)
(local $var$1 f32)
(f32.add
(get_local $var$1)
(get_local $var$0)
)
)
- (func $neg (param $var$0 i32) (param $var$1 i32)
+ (func $neg (type $1) (param $var$0 i32) (param $var$1 i32)
(local $var$2 f32)
(set_local $var$2
(f32.neg
@@ -28,7 +28,7 @@
)
)
)
- (func $littleswitch (param $var$0 i32) (result i32)
+ (func $littleswitch (type $2) (param $var$0 i32) (result i32)
(block $label$0
(tableswitch $label$3
(i32.sub
@@ -50,7 +50,7 @@
(i32.const 0)
)
)
- (func $f1 (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
+ (func $f1 (type $3) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32)
(block $label$0
(get_local $var$2)
)
diff --git a/test/s2wasm_known_binaryen_shell_test_failures.txt b/test/s2wasm_known_binaryen_shell_test_failures.txt
index abc1aff2b..6bcafafc5 100644
--- a/test/s2wasm_known_binaryen_shell_test_failures.txt
+++ b/test/s2wasm_known_binaryen_shell_test_failures.txt
@@ -40,7 +40,6 @@
20050502-2.c.s.wast
20050826-1.c.s.wast
20051113-1.c.s.wast
-20060110-1.c.s.wast
20060420-1.c.s.wast
20060905-1.c.s.wast
20060930-2.c.s.wast
@@ -77,7 +76,6 @@
931110-1.c.s.wast
941014-2.c.s.wast
950710-1.c.s.wast
-950915-1.c.s.wast
960215-1.c.s.wast
960327-1.c.s.wast
960405-1.c.s.wast
@@ -125,7 +123,6 @@ pr23047.c.s.wast
pr27073.c.s.wast
pr27260.c.s.wast
pr27285.c.s.wast
-pr28403.c.s.wast
pr28651.c.s.wast
pr29006.c.s.wast
pr32244-1.c.s.wast
@@ -188,7 +185,6 @@ pr57124.c.s.wast
pr57131.c.s.wast
pr57344-3.c.s.wast
pr57344-4.c.s.wast
-pr57860.c.s.wast
pr57877.c.s.wast
pr58365.c.s.wast
pr58419.c.s.wast
diff --git a/test/unit.wast.fromBinary b/test/unit.wast.fromBinary
index de479dea7..7c5e00b94 100644
--- a/test/unit.wast.fromBinary
+++ b/test/unit.wast.fromBinary
@@ -1,5 +1,7 @@
(module
- (memory 4096 4096)
+ (memory 4096 4096
+ (segment 1026 "\14\00")
+ )
(type $0 (func (param f32)))
(type $1 (func))
(type $2 (func (param f64) (result i32)))
@@ -8,11 +10,11 @@
(type $5 (func (result i32)))
(type $6 (func (param i32) (result i32)))
(import $_emscripten_asm_const_vi "env" "_emscripten_asm_const_vi")
- (import $f64-to-int "env" "f64-to-int" (param f64) (result i32))
- (import $f64-rem "env" "f64-rem" (param f64 f64) (result f64))
+ (import $f64-to-int "asm2wasm" "f64-to-int" (param f64) (result i32))
+ (import $f64-rem "asm2wasm" "f64-rem" (param f64 f64) (result f64))
(export "big_negative" $big_negative)
(table $z $big_negative $z $z $w $w $importedDoubles $w $z $cneg)
- (func $big_negative
+ (func $big_negative (type $1)
(local $var$0 f64)
(block $label$0
(set_local $var$0
@@ -32,7 +34,7 @@
)
)
)
- (func $importedDoubles (result f64)
+ (func $importedDoubles (type $4) (result f64)
(local $var$0 f64)
(block $label$0
(set_local $var$0
@@ -84,7 +86,7 @@
(f64.const 1.2)
)
)
- (func $doubleCompares (param $var$0 f64) (param $var$1 f64) (result f64)
+ (func $doubleCompares (type $3) (param $var$0 f64) (param $var$1 f64) (result f64)
(local $var$2 i32)
(local $var$3 f64)
(local $var$4 f64)
@@ -128,14 +130,14 @@
(get_local $var$1)
)
)
- (func $intOps (result i32)
+ (func $intOps (type $5) (result i32)
(local $var$0 i32)
(i32.eq
(get_local $var$0)
(i32.const 0)
)
)
- (func $conversions
+ (func $conversions (type $1)
(local $var$0 i32)
(local $var$1 f64)
(block $label$0
@@ -159,7 +161,7 @@
)
)
)
- (func $seq
+ (func $seq (type $1)
(local $var$0 f64)
(set_local $var$0
(f64.sub
@@ -174,7 +176,7 @@
)
)
)
- (func $switcher (param $var$0 i32) (result i32)
+ (func $switcher (type $6) (param $var$0 i32) (result i32)
(block $label$0
(tableswitch $label$4
(i32.sub
@@ -201,18 +203,18 @@
(get_local $var$0)
(i32.const 5)
)
- (table (case $label$5) (case $label$6) (case $label$6) (case $label$6) (case $label$6) (case $label$6) (case $label$6) (case $label$7)) (case $label$6)
- (case $label$7
+ (table (case $label$6) (case $label$7) (case $label$7) (case $label$7) (case $label$7) (case $label$7) (case $label$7) (case $label$5)) (case $label$7)
+ (case $label$5
(br $label$0
(i32.const 121)
)
)
- (case $label$5
+ (case $label$6
(br $label$0
(i32.const 51)
)
)
- (case $label$6
+ (case $label$7
(nop)
)
)
@@ -221,11 +223,11 @@
(get_local $var$0)
(i32.const 2)
)
- (table (case $label$9) (case $label$10) (case $label$10) (case $label$11) (case $label$10) (case $label$10) (case $label$10) (case $label$10) (case $label$12) (case $label$10) (case $label$13)) (case $label$10)
- (case $label$13
+ (table (case $label$12) (case $label$13) (case $label$13) (case $label$11) (case $label$13) (case $label$13) (case $label$13) (case $label$13) (case $label$10) (case $label$13) (case $label$9)) (case $label$13)
+ (case $label$9
(br $label$14)
)
- (case $label$12
+ (case $label$10
(br $label$14)
)
(case $label$11
@@ -239,7 +241,7 @@
(br $label$14)
)
)
- (case $label$9
+ (case $label$12
(block $label$19
(loop $label$20 $label$21
(block $label$22
@@ -250,40 +252,40 @@
(br $label$14)
)
)
- (case $label$10
+ (case $label$13
(nop)
)
)
(i32.const 0)
)
)
- (func $blocker
+ (func $blocker (type $1)
(block $label$0
(br $label$0)
)
)
- (func $frem (result f64)
+ (func $frem (type $4) (result f64)
(call_import $f64-rem
(f64.const 5.5)
(f64.const 1.2)
)
)
- (func $big_uint_div_u (result i32)
+ (func $big_uint_div_u (type $5) (result i32)
(local $var$0 i32)
(block $label$0
(set_local $var$0
(i32.and
(i32.div_u
- (i32.const 255)
+ (i32.const -1)
(i32.const 2)
)
- (i32.const 255)
+ (i32.const -1)
)
)
(get_local $var$0)
)
)
- (func $fr (param $var$0 f32)
+ (func $fr (type $0) (param $var$0 f32)
(local $var$1 f32)
(local $var$2 f64)
(block $label$0
@@ -297,10 +299,10 @@
(f32.const 0)
)
)
- (func $negZero (result f64)
+ (func $negZero (type $4) (result f64)
(f64.const -0)
)
- (func $abs
+ (func $abs (type $1)
(local $var$0 i32)
(local $var$1 i32)
(local $var$2 f32)
@@ -336,7 +338,7 @@
)
)
)
- (func $neg
+ (func $neg (type $1)
(local $var$0 f32)
(block $label$0
(set_local $var$0
@@ -356,7 +358,7 @@
)
)
)
- (func $cneg (param $var$0 f32)
+ (func $cneg (type $0) (param $var$0 f32)
(call_indirect $0
(i32.add
(i32.and
@@ -368,7 +370,7 @@
(get_local $var$0)
)
)
- (func $___syscall_ret
+ (func $___syscall_ret (type $1)
(local $var$0 i32)
(i32.gt_u
(i32.shr_u
@@ -378,13 +380,13 @@
(i32.const -4096)
)
)
- (func $z
+ (func $z (type $1)
(nop)
)
- (func $w
+ (func $w (type $1)
(nop)
)
- (func $block_and_after (result i32)
+ (func $block_and_after (type $5) (result i32)
(block $label$0
(block $label$1
(i32.const 1)