summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Gohman <sunfish@mozilla.com>2016-01-06 16:20:12 -0800
committerDan Gohman <sunfish@mozilla.com>2016-01-06 16:20:12 -0800
commit8ae085fb1f79d6a72d234c5d33704f6106fe6f4b (patch)
tree68120e60fc185e157af9656288782f42efada509
parent176a955c63f7891f00c1f29e33079dc3d77539da (diff)
parent10d9c8223360714918808aeafa24308039c1518b (diff)
downloadbinaryen-8ae085fb1f79d6a72d234c5d33704f6106fe6f4b.tar.gz
binaryen-8ae085fb1f79d6a72d234c5d33704f6106fe6f4b.tar.bz2
binaryen-8ae085fb1f79d6a72d234c5d33704f6106fe6f4b.zip
Merge pull request #74 from WebAssembly/llvm_autogenerated
Replace the experimental/prototype-wasmate/test tests.
-rwxr-xr-xcheck.py71
-rw-r--r--src/wasm.h4
-rw-r--r--test/dot_s/import.wast33
-rw-r--r--test/dot_s/offset.wast204
-rw-r--r--test/dot_s/returned.wast35
-rw-r--r--test/dot_s/vtable.wast108
-rw-r--r--test/llvm_autogenerated/call.wast (renamed from test/dot_s/call.wast)0
-rw-r--r--test/llvm_autogenerated/cfg-stackify.wast (renamed from test/dot_s/cfg-stackify.wast)348
-rw-r--r--test/llvm_autogenerated/comparisons_f32.wast (renamed from test/dot_s/comparisons_f32.wast)0
-rw-r--r--test/llvm_autogenerated/comparisons_f64.wast (renamed from test/dot_s/comparisons_f64.wast)0
-rw-r--r--test/llvm_autogenerated/comparisons_i32.wast (renamed from test/dot_s/comparisons_i32.wast)0
-rw-r--r--test/llvm_autogenerated/comparisons_i64.wast (renamed from test/dot_s/comparisons_i64.wast)0
-rw-r--r--test/llvm_autogenerated/conv.wast (renamed from test/dot_s/conv.wast)0
-rw-r--r--test/llvm_autogenerated/copysign-casts.wast (renamed from test/dot_s/copysign-casts.wast)0
-rw-r--r--test/llvm_autogenerated/cpus.wast (renamed from test/dot_s/cpus.wast)0
-rw-r--r--test/llvm_autogenerated/dead-vreg.wast (renamed from test/dot_s/dead-vreg.wast)6
-rw-r--r--test/llvm_autogenerated/f32.wast (renamed from test/dot_s/f32.wast)0
-rw-r--r--test/llvm_autogenerated/f64.wast (renamed from test/dot_s/f64.wast)0
-rw-r--r--test/llvm_autogenerated/fast-isel.wast (renamed from test/dot_s/fast-isel.wast)0
-rw-r--r--test/llvm_autogenerated/frem.wast (renamed from test/dot_s/frem.wast)0
-rw-r--r--test/llvm_autogenerated/func.wast (renamed from test/dot_s/func.wast)0
-rw-r--r--test/llvm_autogenerated/global.wast (renamed from test/dot_s/global.wast)0
-rw-r--r--test/llvm_autogenerated/globl.wast (renamed from test/dot_s/globl.wast)0
-rw-r--r--test/llvm_autogenerated/i32.wast (renamed from test/dot_s/i32.wast)0
-rw-r--r--test/llvm_autogenerated/i64.wast (renamed from test/dot_s/i64.wast)0
-rw-r--r--test/llvm_autogenerated/ident.wast (renamed from test/dot_s/ident.wast)0
-rw-r--r--test/llvm_autogenerated/immediates.wast (renamed from test/dot_s/immediates.wast)8
-rw-r--r--test/llvm_autogenerated/inline-asm.s103
-rw-r--r--test/llvm_autogenerated/legalize.wast (renamed from test/dot_s/legalize.wast)1626
-rwxr-xr-xtest/llvm_autogenerated/llvm-to-s.py8
-rw-r--r--test/llvm_autogenerated/load-ext.wast (renamed from test/dot_s/load-ext.wast)0
-rw-r--r--test/llvm_autogenerated/load-store-i1.wast (renamed from test/dot_s/load-store-i1.wast)0
-rw-r--r--test/llvm_autogenerated/load.wast (renamed from test/dot_s/load.wast)0
-rw-r--r--test/llvm_autogenerated/memory-addr32.wast (renamed from test/dot_s/memory-addr32.wast)0
-rw-r--r--test/llvm_autogenerated/memory-addr64.wast (renamed from test/dot_s/memory-addr64.wast)0
-rw-r--r--test/llvm_autogenerated/offset-folding.wast (renamed from test/dot_s/offset-folding.wast)12
-rw-r--r--test/llvm_autogenerated/offset.wast473
-rw-r--r--test/llvm_autogenerated/phi.wast (renamed from test/dot_s/phi.wast)12
-rw-r--r--test/llvm_autogenerated/reg-stackify.wast (renamed from test/dot_s/reg-stackify.wast)40
-rw-r--r--test/llvm_autogenerated/return-int32.wast (renamed from test/dot_s/return-int32.wast)0
-rw-r--r--test/llvm_autogenerated/return-void.wast (renamed from test/dot_s/return-void.wast)0
-rw-r--r--test/llvm_autogenerated/returned.s42
-rw-r--r--test/llvm_autogenerated/select.wast (renamed from test/dot_s/select.wast)0
-rw-r--r--test/llvm_autogenerated/signext-zeroext.wast (renamed from test/dot_s/signext-zeroext.wast)0
-rw-r--r--test/llvm_autogenerated/store-results.wast (renamed from test/dot_s/store-results.wast)8
-rw-r--r--test/llvm_autogenerated/store-trunc.wast (renamed from test/dot_s/store-trunc.wast)0
-rw-r--r--test/llvm_autogenerated/store.wast (renamed from test/dot_s/store.wast)0
-rw-r--r--test/llvm_autogenerated/switch.wast (renamed from test/dot_s/switch.wast)14
-rw-r--r--test/llvm_autogenerated/unreachable.wast (renamed from test/dot_s/unreachable.wast)0
-rw-r--r--test/llvm_autogenerated/unused-argument.wast (renamed from test/dot_s/unused-argument.wast)0
-rw-r--r--test/llvm_autogenerated/userstack.wast (renamed from test/dot_s/userstack.wast)0
-rw-r--r--test/llvm_autogenerated/varargs.wast (renamed from test/dot_s/varargs.wast)0
-rw-r--r--test/llvm_autogenerated/vtable.s206
53 files changed, 1552 insertions, 1809 deletions
diff --git a/check.py b/check.py
index 0ccad611e..64a6914ff 100755
--- a/check.py
+++ b/check.py
@@ -191,26 +191,6 @@ for t in spec_tests:
if actual != expected:
fail(actual, expected)
-print '\n[ checking binaryen-shell experimental testcases... ]\n'
-
-if len(requested) == 0:
- BLACKLIST = ['call.wast', # bad indirect_call, no type
- 'cfg-stackify.wast', # call an import $ which no return value, but in a context with a return value
- 'inline-asm.wast', # there is a (foo ..) s-expression block, perhaps inline asm? not a valid s-expression
- 'switch.wast', # bad tableswitch, no (table ..) inside it
- ]
- experimental_tests = [os.path.join('experimental', 'prototype-wasmate', 'test', 'expected-output', t) for t in sorted(os.listdir(os.path.join('test', 'experimental', 'prototype-wasmate', 'test', 'expected-output'))) if t not in BLACKLIST]
-else:
- experimental_tests = requested[:]
-
-for t in experimental_tests:
- if t.startswith('experimental') 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
-
print '\n[ checking wasm2asm testcases... ]\n'
for wasm in tests + [os.path.join('spec', name) for name in ['address.wast']]:#spec_tests:
@@ -248,32 +228,33 @@ for wasm in tests + [os.path.join('spec', name) for name in ['address.wast']]:#s
print '\n[ checking .s testcases... ]\n'
-for s in sorted(os.listdir(os.path.join('test', 'dot_s'))) + sorted(os.listdir(os.path.join('test', 'experimental', 'prototype-wasmate', 'test'))):
- if not s.endswith('.s'): continue
- if s in ['inline-asm.s', # what is this?
- 'offset-folding.s' # unresolved symbol x
- ]: continue
- print '..', s
- wasm = s.replace('.s', '.wast')
- full = os.path.join('test', 'dot_s', s)
- if not os.path.exists(full):
- full = os.path.join('test', 'experimental', 'prototype-wasmate', 'test', s)
- actual, err = subprocess.Popen([os.path.join('bin', 's2wasm'), full], stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()
- assert err == '', 'bad err:' + err
-
- # verify output
- expected_file = os.path.join('test', 'dot_s', wasm)
- if not os.path.exists(expected_file):
- print actual
- raise Exception('output ' + expected_file + ' does not exist')
- expected = open(expected_file).read()
- if actual != expected:
- fail(actual, expected)
+for dot_s_dir in ['dot_s', 'llvm_autogenerated']:
+ for s in sorted(os.listdir(os.path.join('test', dot_s_dir))):
+ if not s.endswith('.s'): continue
+ print '..', s
+ wasm = s.replace('.s', '.wast')
+ full = os.path.join('test', dot_s_dir, s)
+ actual, err = subprocess.Popen([os.path.join('bin', 's2wasm'), full], stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()
+ assert err == '', 'bad err:' + err
- # verify with options
- proc = subprocess.Popen([os.path.join('bin', 's2wasm'), full, '--global-base=1024'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
- out, err = proc.communicate()
- assert proc.returncode == 0, err
+ # verify output
+ expected_file = os.path.join('test', dot_s_dir, wasm)
+ if not os.path.exists(expected_file):
+ print actual
+ raise Exception('output ' + expected_file + ' does not exist')
+ expected = open(expected_file).read()
+ if actual != expected:
+ fail(actual, expected)
+
+ # verify with options
+ proc = subprocess.Popen([os.path.join('bin', 's2wasm'), full, '--global-base=1024'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+ out, err = proc.communicate()
+ assert proc.returncode == 0, err
+
+ # run binaryen-shell on the .wast to verify that it parses
+ proc = subprocess.Popen([os.path.join('bin', 'binaryen-shell'), expected_file], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+ actual, err = proc.communicate()
+ assert proc.returncode == 0, err
print '\n[ checking torture testcases... ]\n'
diff --git a/src/wasm.h b/src/wasm.h
index e3724c612..5fd4ad53b 100644
--- a/src/wasm.h
+++ b/src/wasm.h
@@ -193,7 +193,7 @@ struct Literal {
uint32_t ll;
} u;
u.ff = f;
- o << "nan:" << std::hex << u.ll << std::dec;
+ o << "nan:0x" << std::hex << u.ll << std::dec;
return;
}
printDouble(o, f);
@@ -210,7 +210,7 @@ struct Literal {
uint64_t ll;
} u;
u.dd = d;
- o << "nan:" << std::hex << u.ll << std::dec;
+ o << "nan:0x" << std::hex << u.ll << std::dec;
return;
}
if (!std::isfinite(d)) {
diff --git a/test/dot_s/import.wast b/test/dot_s/import.wast
deleted file mode 100644
index ce68592f1..000000000
--- a/test/dot_s/import.wast
+++ /dev/null
@@ -1,33 +0,0 @@
-(module
- (memory 0 4294967295)
- (import $printi "env" "printi")
- (import $printf "env" "printf")
- (import $printv "env" "printv")
- (import $split_arg "env" "split_arg")
- (import $expanded_arg "env" "expanded_arg")
- (import $lowered_result "env" "lowered_result")
- (export "f" $f)
- (func $f (param $$0 i32) (param $$1 f32) (param $$2 i64) (param $$3 i64) (param $$4 i32)
- (block $fake_return_waka123
- (block
- (call_import $printi
- (get_local $$0)
- )
- (call_import $printf
- (get_local $$1)
- )
- (call_import $printv)
- (call_import $split_arg
- (get_local $$3)
- (get_local $$2)
- )
- (call_import $expanded_arg
- (get_local $$4)
- )
- (call_import $lowered_result)
- (br $fake_return_waka123)
- )
- )
- )
-)
-; METADATA: { "asmConsts": {} } \ No newline at end of file
diff --git a/test/dot_s/offset.wast b/test/dot_s/offset.wast
deleted file mode 100644
index 76bb89ceb..000000000
--- a/test/dot_s/offset.wast
+++ /dev/null
@@ -1,204 +0,0 @@
-(module
- (memory 8 4294967295 (segment 4 "\00\00\00\00"))
- (export "load_i32_with_folded_offset" $load_i32_with_folded_offset)
- (export "load_i32_with_unfolded_offset" $load_i32_with_unfolded_offset)
- (export "load_i64_with_folded_offset" $load_i64_with_folded_offset)
- (export "load_i64_with_unfolded_offset" $load_i64_with_unfolded_offset)
- (export "store_i32_with_folded_offset" $store_i32_with_folded_offset)
- (export "store_i32_with_unfolded_offset" $store_i32_with_unfolded_offset)
- (export "store_i64_with_folded_offset" $store_i64_with_folded_offset)
- (export "store_i64_with_unfolded_offset" $store_i64_with_unfolded_offset)
- (export "load_i32_from_numeric_address" $load_i32_from_numeric_address)
- (export "load_i32_from_global_address" $load_i32_from_global_address)
- (export "store_i32_to_numeric_address" $store_i32_to_numeric_address)
- (export "store_i32_to_global_address" $store_i32_to_global_address)
- (export "load_i8_s_with_folded_offset" $load_i8_s_with_folded_offset)
- (export "load_i8_u_with_folded_offset" $load_i8_u_with_folded_offset)
- (export "store_i8_with_folded_offset" $store_i8_with_folded_offset)
- (func $load_i32_with_folded_offset (param $$0 i32) (result i32)
- (block $fake_return_waka123
- (block
- (br $fake_return_waka123
- (i32.load offset=24 align=4
- (get_local $$0)
- )
- )
- )
- )
- )
- (func $load_i32_with_unfolded_offset (param $$0 i32) (result i32)
- (block $fake_return_waka123
- (block
- (br $fake_return_waka123
- (i32.load align=4
- (i32.add
- (get_local $$0)
- (i32.const 24)
- )
- )
- )
- )
- )
- )
- (func $load_i64_with_folded_offset (param $$0 i32) (result i64)
- (block $fake_return_waka123
- (block
- (br $fake_return_waka123
- (i64.load offset=24 align=8
- (get_local $$0)
- )
- )
- )
- )
- )
- (func $load_i64_with_unfolded_offset (param $$0 i32) (result i64)
- (block $fake_return_waka123
- (block
- (br $fake_return_waka123
- (i64.load align=8
- (i32.add
- (get_local $$0)
- (i32.const 24)
- )
- )
- )
- )
- )
- )
- (func $store_i32_with_folded_offset (param $$0 i32)
- (block $fake_return_waka123
- (block
- (i32.store offset=24 align=4
- (get_local $$0)
- (i32.const 0)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $store_i32_with_unfolded_offset (param $$0 i32)
- (block $fake_return_waka123
- (block
- (i32.store align=4
- (i32.add
- (get_local $$0)
- (i32.const 24)
- )
- (i32.const 0)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $store_i64_with_folded_offset (param $$0 i32)
- (block $fake_return_waka123
- (block
- (i64.store offset=24 align=8
- (get_local $$0)
- (i64.const 0)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $store_i64_with_unfolded_offset (param $$0 i32)
- (block $fake_return_waka123
- (block
- (i64.store align=8
- (i32.add
- (get_local $$0)
- (i32.const 24)
- )
- (i64.const 0)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $load_i32_from_numeric_address (result i32)
- (block $fake_return_waka123
- (block
- (br $fake_return_waka123
- (i32.load offset=42 align=4
- (i32.const 0)
- )
- )
- )
- )
- )
- (func $load_i32_from_global_address (result i32)
- (block $fake_return_waka123
- (block
- (br $fake_return_waka123
- (i32.load offset=4 align=4
- (i32.const 0)
- )
- )
- )
- )
- )
- (func $store_i32_to_numeric_address
- (local $$0 i32)
- (block $fake_return_waka123
- (block
- (set_local $$0
- (i32.const 0)
- )
- (i32.store offset=42 align=4
- (get_local $$0)
- (get_local $$0)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $store_i32_to_global_address
- (local $$0 i32)
- (block $fake_return_waka123
- (block
- (set_local $$0
- (i32.const 0)
- )
- (i32.store offset=4 align=4
- (get_local $$0)
- (get_local $$0)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $load_i8_s_with_folded_offset (param $$0 i32) (result i32)
- (block $fake_return_waka123
- (block
- (br $fake_return_waka123
- (i32.load8_s offset=24 align=1
- (get_local $$0)
- )
- )
- )
- )
- )
- (func $load_i8_u_with_folded_offset (param $$0 i32) (result i32)
- (block $fake_return_waka123
- (block
- (br $fake_return_waka123
- (i32.load8_u offset=24 align=1
- (get_local $$0)
- )
- )
- )
- )
- )
- (func $store_i8_with_folded_offset (param $$0 i32)
- (block $fake_return_waka123
- (block
- (i32.store offset=24 align=8
- (get_local $$0)
- (i32.const 0)
- )
- (br $fake_return_waka123)
- )
- )
- )
-)
-;; METADATA: { "asmConsts": {},"staticBump": 7 }
diff --git a/test/dot_s/returned.wast b/test/dot_s/returned.wast
deleted file mode 100644
index 8293de6b2..000000000
--- a/test/dot_s/returned.wast
+++ /dev/null
@@ -1,35 +0,0 @@
-(module
- (memory 0 4294967295)
- (import $_Znwm "env" "_Znwm" (param i32) (result i32))
- (import $_ZN5AppleC1Ev "env" "_ZN5AppleC1Ev" (param i32) (result i32))
- (import $memcpy "env" "memcpy" (param i32 i32 i32) (result i32))
- (export "_Z3foov" $_Z3foov)
- (export "_Z3barPvS_l" $_Z3barPvS_l)
- (func $_Z3foov (result i32)
- (block $fake_return_waka123
- (block
- (br $fake_return_waka123
- (call_import $_ZN5AppleC1Ev
- (call_import $_Znwm
- (i32.const 1)
- )
- )
- )
- )
- )
- )
- (func $_Z3barPvS_l (param $$0 i32) (param $$1 i32) (param $$2 i32) (result i32)
- (block $fake_return_waka123
- (block
- (br $fake_return_waka123
- (call_import $memcpy
- (get_local $$0)
- (get_local $$1)
- (get_local $$2)
- )
- )
- )
- )
- )
-)
-;; METADATA: { "asmConsts": {},"staticBump": 0 }
diff --git a/test/dot_s/vtable.wast b/test/dot_s/vtable.wast
deleted file mode 100644
index e1d3e4066..000000000
--- a/test/dot_s/vtable.wast
+++ /dev/null
@@ -1,108 +0,0 @@
-(module
- (memory 208 4294967295 (segment 16 "1A\00") (segment 32 "1B\00") (segment 48 "1C\00") (segment 64 "1D\00") (segment 68 "\00\00\00\00\98\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00") (segment 88 "\00\00\00\00\a0\00\00\00\00\00\00\00\03\00\00\00\04\00\00\00") (segment 108 "\00\00\00\00\b0\00\00\00\00\00\00\00\05\00\00\00\06\00\00\00") (segment 128 "\00\00\00\00\c0\00\00\00\00\00\00\00\07\00\00\00\08\00\00\00") (segment 152 "\00\00\00\00\10\00\00\00") (segment 160 "\00\00\00\00 \00\00\00\98\00\00\00") (segment 176 "\00\00\00\000\00\00\00\98\00\00\00") (segment 192 "\00\00\00\00@\00\00\00\a0\00\00\00") (segment 204 "\00\00\00\00"))
- (import $_ZdlPv "env" "_ZdlPv" (param i32))
- (export "_ZN1A3fooEv" $_ZN1A3fooEv)
- (export "_ZN1B3fooEv" $_ZN1B3fooEv)
- (export "_ZN1C3fooEv" $_ZN1C3fooEv)
- (export "_ZN1D3fooEv" $_ZN1D3fooEv)
- (export "_ZN1AD0Ev" $_ZN1AD0Ev)
- (export "_ZN1BD0Ev" $_ZN1BD0Ev)
- (export "_ZN1CD0Ev" $_ZN1CD0Ev)
- (export "_ZN1AD2Ev" $_ZN1AD2Ev)
- (export "_ZN1DD0Ev" $_ZN1DD0Ev)
- (table $_ZN1AD2Ev $_ZN1AD0Ev $_ZN1A3fooEv $_ZN1BD0Ev $_ZN1B3fooEv $_ZN1CD0Ev $_ZN1C3fooEv $_ZN1DD0Ev $_ZN1D3fooEv)
- (func $_ZN1A3fooEv (param $$0 i32)
- (block $fake_return_waka123
- (block
- (i32.store offset=204 align=4
- (i32.const 0)
- (i32.const 2)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $_ZN1B3fooEv (param $$0 i32)
- (block $fake_return_waka123
- (block
- (i32.store offset=204 align=4
- (i32.const 0)
- (i32.const 4)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $_ZN1C3fooEv (param $$0 i32)
- (block $fake_return_waka123
- (block
- (i32.store offset=204 align=4
- (i32.const 0)
- (i32.const 6)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $_ZN1D3fooEv (param $$0 i32)
- (block $fake_return_waka123
- (block
- (i32.store offset=204 align=4
- (i32.const 0)
- (i32.const 8)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $_ZN1AD0Ev (param $$0 i32)
- (block $fake_return_waka123
- (block
- (call_import $_ZdlPv
- (get_local $$0)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $_ZN1BD0Ev (param $$0 i32)
- (block $fake_return_waka123
- (block
- (call_import $_ZdlPv
- (get_local $$0)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $_ZN1CD0Ev (param $$0 i32)
- (block $fake_return_waka123
- (block
- (call_import $_ZdlPv
- (get_local $$0)
- )
- (br $fake_return_waka123)
- )
- )
- )
- (func $_ZN1AD2Ev (param $$0 i32) (result i32)
- (block $fake_return_waka123
- (block
- (br $fake_return_waka123
- (get_local $$0)
- )
- )
- )
- )
- (func $_ZN1DD0Ev (param $$0 i32)
- (block $fake_return_waka123
- (block
- (call_import $_ZdlPv
- (get_local $$0)
- )
- (br $fake_return_waka123)
- )
- )
- )
-)
-;; METADATA: { "asmConsts": {},"staticBump": 207 }
diff --git a/test/dot_s/call.wast b/test/llvm_autogenerated/call.wast
index 86a81ca96..86a81ca96 100644
--- a/test/dot_s/call.wast
+++ b/test/llvm_autogenerated/call.wast
diff --git a/test/dot_s/cfg-stackify.wast b/test/llvm_autogenerated/cfg-stackify.wast
index fdf438e8d..3800f3386 100644
--- a/test/dot_s/cfg-stackify.wast
+++ b/test/llvm_autogenerated/cfg-stackify.wast
@@ -99,6 +99,12 @@
)
(loop $BB2_1
(block
+ (set_local $$1
+ (i32.add
+ (get_local $$1)
+ (i32.const -1)
+ )
+ )
(f64.store align=8
(get_local $$0)
(f64.mul
@@ -108,12 +114,6 @@
(f64.const 3.2)
)
)
- (set_local $$1
- (i32.add
- (get_local $$1)
- (i32.const -1)
- )
- )
(set_local $$0
(i32.add
(get_local $$0)
@@ -135,38 +135,32 @@
(local $$3 i32)
(block $fake_return_waka123
(block
- (set_local $$3
- (i32.store align=4
- (get_local $$2)
- (i32.const 0)
- )
- )
(block $BB3_5
- (block $BB3_4
- (br_if
- (i32.eq
- (get_local $$0)
+ (block $BB3_2
+ (set_local $$3
+ (i32.store align=4
+ (get_local $$2)
(i32.const 0)
)
- $BB3_4
)
+ (br_if
+ (get_local $$0)
+ $BB3_2
+ )
+ (i32.store align=4
+ (get_local $$2)
+ (i32.const 1)
+ )
+ (br $BB3_5)
+ )
+ (block $BB3_4
(i32.store align=4
(get_local $$2)
(i32.const 2)
)
- (block $BB3_3
- (br_if
- (i32.eq
- (get_local $$1)
- (i32.const 0)
- )
- $BB3_3
- )
- (i32.store align=4
- (get_local $$2)
- (i32.const 4)
- )
- (br $BB3_5)
+ (br_if
+ (get_local $$1)
+ $BB3_4
)
(i32.store align=4
(get_local $$2)
@@ -176,7 +170,7 @@
)
(i32.store align=4
(get_local $$2)
- (i32.const 1)
+ (i32.const 4)
)
)
(i32.store align=4
@@ -193,13 +187,13 @@
(local $$2 i32)
(block $fake_return_waka123
(block
- (set_local $$2
- (i32.store align=4
- (get_local $$0)
- (i32.const 0)
- )
- )
(block $BB4_2
+ (set_local $$2
+ (i32.store align=4
+ (get_local $$0)
+ (i32.const 0)
+ )
+ )
(br_if
(get_local $$1)
$BB4_2
@@ -223,30 +217,27 @@
(local $$2 i32)
(block $fake_return_waka123
(block
- (set_local $$2
- (i32.store align=4
- (get_local $$0)
- (i32.const 0)
- )
- )
(block $BB5_3
(block $BB5_2
- (br_if
- (i32.eq
- (get_local $$1)
+ (set_local $$2
+ (i32.store align=4
+ (get_local $$0)
(i32.const 0)
)
+ )
+ (br_if
+ (get_local $$1)
$BB5_2
)
(i32.store align=4
(get_local $$0)
- (i32.const 2)
+ (i32.const 1)
)
(br $BB5_3)
)
(i32.store align=4
(get_local $$0)
- (i32.const 1)
+ (i32.const 2)
)
)
(i32.store align=4
@@ -325,22 +316,22 @@
(local $$3 i32)
(block $fake_return_waka123
(block
- (set_local $$3
- (i32.store align=4
- (get_local $$2)
- (i32.const 0)
- )
- )
(block $BB9_4
+ (set_local $$3
+ (i32.store align=4
+ (get_local $$2)
+ (i32.const 0)
+ )
+ )
(br_if
(get_local $$0)
$BB9_4
)
- (i32.store align=4
- (get_local $$2)
- (i32.const 2)
- )
(block $BB9_3
+ (i32.store align=4
+ (get_local $$2)
+ (i32.const 2)
+ )
(br_if
(get_local $$1)
$BB9_3
@@ -369,38 +360,35 @@
(local $$3 i32)
(block $fake_return_waka123
(block
- (set_local $$3
- (i32.store align=4
- (get_local $$2)
- (i32.const 0)
- )
- )
(block $BB10_4
- (block $BB10_3
- (br_if
- (i32.eq
- (get_local $$0)
+ (block $BB10_2
+ (set_local $$3
+ (i32.store align=4
+ (get_local $$2)
(i32.const 0)
)
- $BB10_3
- )
- (i32.store align=4
- (get_local $$2)
- (i32.const 2)
)
(br_if
- (get_local $$1)
- $BB10_4
+ (get_local $$0)
+ $BB10_2
)
(i32.store align=4
(get_local $$2)
- (i32.const 3)
+ (i32.const 1)
)
(br $BB10_4)
)
(i32.store align=4
(get_local $$2)
- (i32.const 1)
+ (i32.const 2)
+ )
+ (br_if
+ (get_local $$1)
+ $BB10_4
+ )
+ (i32.store align=4
+ (get_local $$2)
+ (i32.const 3)
)
)
(i32.store align=4
@@ -416,36 +404,30 @@
(func $doublediamond_in_a_loop (param $$0 i32) (param $$1 i32) (param $$2 i32) (result i32)
(loop $BB11_7 $BB11_1
(block
- (i32.store align=4
- (get_local $$2)
- (i32.const 0)
- )
(block $BB11_6
- (block $BB11_5
+ (block $BB11_3
+ (i32.store align=4
+ (get_local $$2)
+ (i32.const 0)
+ )
(br_if
- (i32.eq
- (get_local $$0)
- (i32.const 0)
- )
- $BB11_5
+ (get_local $$0)
+ $BB11_3
)
(i32.store align=4
(get_local $$2)
+ (i32.const 1)
+ )
+ (br $BB11_6)
+ )
+ (block $BB11_5
+ (i32.store align=4
+ (get_local $$2)
(i32.const 2)
)
- (block $BB11_4
- (br_if
- (i32.eq
- (get_local $$1)
- (i32.const 0)
- )
- $BB11_4
- )
- (i32.store align=4
- (get_local $$2)
- (i32.const 4)
- )
- (br $BB11_6)
+ (br_if
+ (get_local $$1)
+ $BB11_5
)
(i32.store align=4
(get_local $$2)
@@ -455,7 +437,7 @@
)
(i32.store align=4
(get_local $$2)
- (i32.const 1)
+ (i32.const 4)
)
)
(i32.store align=4
@@ -469,38 +451,35 @@
(func $test3 (param $$0 i32)
(block $fake_return_waka123
(block
- (block $BB12_2
+ (block $BB12_5
(br_if
- (i32.eq
- (i32.const 0)
- (i32.const 0)
- )
- $BB12_2
+ (i32.const 0)
+ $BB12_5
)
- (br $fake_return_waka123)
- )
- (loop $BB12_5 $BB12_2
- (block
- (br_if
- (get_local $$0)
- $BB12_5
- )
- (loop $BB12_4 $BB12_3
- (block
- (br_if
- (i32.ne
- (get_local $$0)
- (get_local $$0)
+ (loop $BB12_4 $BB12_1
+ (block
+ (br_if
+ (get_local $$0)
+ $BB12_4
+ )
+ (loop $BB12_3 $BB12_2
+ (block
+ (br_if
+ (i32.ne
+ (get_local $$0)
+ (get_local $$0)
+ )
+ $BB12_2
)
- $BB12_3
)
)
+ (call_import $bar)
+ (br $BB12_1)
)
- (call_import $bar)
- (br $BB12_2)
)
+ (unreachable)
)
- (unreachable)
+ (br $fake_return_waka123)
)
)
)
@@ -703,26 +682,23 @@
)
(loop $BB16_5 $BB16_1
(block
- (set_local $$3
- (i32.store align=4
- (get_local $$2)
- (i32.const 1)
- )
- )
(block $BB16_4
+ (set_local $$3
+ (i32.store align=4
+ (get_local $$2)
+ (i32.const 1)
+ )
+ )
(br_if
- (i32.eq
- (i32.and
- (get_local $$0)
- (get_local $$3)
- )
- (i32.const 0)
+ (i32.and
+ (get_local $$0)
+ (get_local $$3)
)
$BB16_4
)
(i32.store align=4
(get_local $$2)
- (i32.const 3)
+ (i32.const 2)
)
(br_if
(i32.and
@@ -733,13 +709,13 @@
)
(i32.store align=4
(get_local $$2)
- (i32.const 5)
+ (i32.const 4)
)
(unreachable)
)
(i32.store align=4
(get_local $$2)
- (i32.const 2)
+ (i32.const 3)
)
(br_if
(i32.and
@@ -752,7 +728,7 @@
)
(i32.store align=4
(get_local $$2)
- (i32.const 4)
+ (i32.const 5)
)
(unreachable)
)
@@ -825,11 +801,11 @@
)
(loop $BB18_5 $BB18_2
(block
- (i32.store align=4
- (get_local $$0)
- (i32.const 2)
- )
(block $BB18_4
+ (i32.store align=4
+ (get_local $$0)
+ (i32.const 2)
+ )
(br_if
(i32.eq
(i32.and
@@ -964,70 +940,72 @@
(get_local $$0)
)
(block $BB20_8
- (block $BB20_4
- (br_if
- (get_local $$0)
- $BB20_4
- )
- (i32.store align=4
- (get_local $$0)
- (i32.const 1)
- )
- (block $BB20_3
- (br_if
- (get_local $$0)
- $BB20_3
+ (block $BB20_7
+ (block $BB20_6
+ (block $BB20_4
+ (br_if
+ (get_local $$0)
+ $BB20_4
+ )
+ (block $BB20_3
+ (i32.store align=4
+ (get_local $$0)
+ (i32.const 1)
+ )
+ (br_if
+ (get_local $$0)
+ $BB20_3
+ )
+ (i32.store align=4
+ (get_local $$0)
+ (i32.const 2)
+ )
+ (br_if
+ (get_local $$0)
+ $BB20_6
+ )
+ )
+ (i32.store align=4
+ (get_local $$0)
+ (i32.const 3)
+ )
+ (br $fake_return_waka123)
)
(i32.store align=4
(get_local $$0)
- (i32.const 2)
+ (i32.const 4)
)
(br_if
(get_local $$0)
$BB20_8
)
- )
- (i32.store align=4
- (get_local $$0)
- (i32.const 3)
- )
- (br $fake_return_waka123)
- )
- (i32.store align=4
- (get_local $$0)
- (i32.const 4)
- )
- (block $BB20_6
- (br_if
- (i32.eq
+ (i32.store align=4
(get_local $$0)
- (i32.const 0)
+ (i32.const 5)
+ )
+ (br_if
+ (i32.eq
+ (get_local $$0)
+ (i32.const 0)
+ )
+ $BB20_7
)
- $BB20_6
)
(i32.store align=4
(get_local $$0)
- (i32.const 8)
+ (i32.const 7)
)
(br $fake_return_waka123)
)
(i32.store align=4
(get_local $$0)
- (i32.const 5)
- )
- (br_if
- (get_local $$0)
- $BB20_8
- )
- (i32.store align=4
- (get_local $$0)
(i32.const 6)
)
(br $fake_return_waka123)
)
(i32.store align=4
(get_local $$0)
- (i32.const 7)
+ (i32.const 8)
)
(br $fake_return_waka123)
)
diff --git a/test/dot_s/comparisons_f32.wast b/test/llvm_autogenerated/comparisons_f32.wast
index 6a050b39f..6a050b39f 100644
--- a/test/dot_s/comparisons_f32.wast
+++ b/test/llvm_autogenerated/comparisons_f32.wast
diff --git a/test/dot_s/comparisons_f64.wast b/test/llvm_autogenerated/comparisons_f64.wast
index 29fb60481..29fb60481 100644
--- a/test/dot_s/comparisons_f64.wast
+++ b/test/llvm_autogenerated/comparisons_f64.wast
diff --git a/test/dot_s/comparisons_i32.wast b/test/llvm_autogenerated/comparisons_i32.wast
index 65fc3bad2..65fc3bad2 100644
--- a/test/dot_s/comparisons_i32.wast
+++ b/test/llvm_autogenerated/comparisons_i32.wast
diff --git a/test/dot_s/comparisons_i64.wast b/test/llvm_autogenerated/comparisons_i64.wast
index 63166a543..63166a543 100644
--- a/test/dot_s/comparisons_i64.wast
+++ b/test/llvm_autogenerated/comparisons_i64.wast
diff --git a/test/dot_s/conv.wast b/test/llvm_autogenerated/conv.wast
index f0a6097dc..f0a6097dc 100644
--- a/test/dot_s/conv.wast
+++ b/test/llvm_autogenerated/conv.wast
diff --git a/test/dot_s/copysign-casts.wast b/test/llvm_autogenerated/copysign-casts.wast
index 0bee77732..0bee77732 100644
--- a/test/dot_s/copysign-casts.wast
+++ b/test/llvm_autogenerated/copysign-casts.wast
diff --git a/test/dot_s/cpus.wast b/test/llvm_autogenerated/cpus.wast
index 736a887bd..736a887bd 100644
--- a/test/dot_s/cpus.wast
+++ b/test/llvm_autogenerated/cpus.wast
diff --git a/test/dot_s/dead-vreg.wast b/test/llvm_autogenerated/dead-vreg.wast
index ad270b31a..ee4fa0d06 100644
--- a/test/dot_s/dead-vreg.wast
+++ b/test/llvm_autogenerated/dead-vreg.wast
@@ -22,15 +22,15 @@
)
$BB0_5
)
+ (set_local $$5
+ (i32.const 0)
+ )
(set_local $$3
(i32.shl
(get_local $$1)
(i32.const 2)
)
)
- (set_local $$5
- (i32.const 0)
- )
(set_local $$6
(get_local $$5)
)
diff --git a/test/dot_s/f32.wast b/test/llvm_autogenerated/f32.wast
index e5b735328..e5b735328 100644
--- a/test/dot_s/f32.wast
+++ b/test/llvm_autogenerated/f32.wast
diff --git a/test/dot_s/f64.wast b/test/llvm_autogenerated/f64.wast
index 5dd5552c4..5dd5552c4 100644
--- a/test/dot_s/f64.wast
+++ b/test/llvm_autogenerated/f64.wast
diff --git a/test/dot_s/fast-isel.wast b/test/llvm_autogenerated/fast-isel.wast
index a172ea5e2..a172ea5e2 100644
--- a/test/dot_s/fast-isel.wast
+++ b/test/llvm_autogenerated/fast-isel.wast
diff --git a/test/dot_s/frem.wast b/test/llvm_autogenerated/frem.wast
index cd4369504..cd4369504 100644
--- a/test/dot_s/frem.wast
+++ b/test/llvm_autogenerated/frem.wast
diff --git a/test/dot_s/func.wast b/test/llvm_autogenerated/func.wast
index 0506697be..0506697be 100644
--- a/test/dot_s/func.wast
+++ b/test/llvm_autogenerated/func.wast
diff --git a/test/dot_s/global.wast b/test/llvm_autogenerated/global.wast
index 09cf1a1a2..09cf1a1a2 100644
--- a/test/dot_s/global.wast
+++ b/test/llvm_autogenerated/global.wast
diff --git a/test/dot_s/globl.wast b/test/llvm_autogenerated/globl.wast
index b36657b8f..b36657b8f 100644
--- a/test/dot_s/globl.wast
+++ b/test/llvm_autogenerated/globl.wast
diff --git a/test/dot_s/i32.wast b/test/llvm_autogenerated/i32.wast
index 7466c5b6c..7466c5b6c 100644
--- a/test/dot_s/i32.wast
+++ b/test/llvm_autogenerated/i32.wast
diff --git a/test/dot_s/i64.wast b/test/llvm_autogenerated/i64.wast
index d193b2cb5..d193b2cb5 100644
--- a/test/dot_s/i64.wast
+++ b/test/llvm_autogenerated/i64.wast
diff --git a/test/dot_s/ident.wast b/test/llvm_autogenerated/ident.wast
index 955ce11ea..955ce11ea 100644
--- a/test/dot_s/ident.wast
+++ b/test/llvm_autogenerated/ident.wast
diff --git a/test/dot_s/immediates.wast b/test/llvm_autogenerated/immediates.wast
index 74f819e3a..61d6427ba 100644
--- a/test/dot_s/immediates.wast
+++ b/test/llvm_autogenerated/immediates.wast
@@ -136,7 +136,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (f32.const nan:7fc00000)
+ (f32.const nan:0x7fc00000)
)
)
)
@@ -145,7 +145,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (f32.const nan:ffc00000)
+ (f32.const nan:0xffc00000)
)
)
)
@@ -208,7 +208,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (f64.const nan:7ff8000000000000)
+ (f64.const nan:0x7ff8000000000000)
)
)
)
@@ -217,7 +217,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (f64.const nan:fff8000000000000)
+ (f64.const nan:0xfff8000000000000)
)
)
)
diff --git a/test/llvm_autogenerated/inline-asm.s b/test/llvm_autogenerated/inline-asm.s
deleted file mode 100644
index 10a43371c..000000000
--- a/test/llvm_autogenerated/inline-asm.s
+++ /dev/null
@@ -1,103 +0,0 @@
- .text
- .file "/s/llvm/llvm/test/CodeGen/WebAssembly/inline-asm.ll"
- .globl foo
- .type foo,@function
-foo:
- .param i32
- .result i32
- #APP
- # $0 = aaa($0)
- #NO_APP
- return $0
-func_end0:
- .size foo, func_end0-foo
-
- .globl bar
- .type bar,@function
-bar:
- .param i32, i32
- #APP
- # 0($1) = bbb(0($0))
- #NO_APP
- return
-func_end1:
- .size bar, func_end1-bar
-
- .globl imm
- .type imm,@function
-imm:
- .result i32
- .local i32
- #APP
- # $0 = ccc(42)
- #NO_APP
- return $0
-func_end2:
- .size imm, func_end2-imm
-
- .globl foo_i64
- .type foo_i64,@function
-foo_i64:
- .param i64
- .result i64
- #APP
- # $0 = aaa($0)
- #NO_APP
- return $0
-func_end3:
- .size foo_i64, func_end3-foo_i64
-
- .globl X_i16
- .type X_i16,@function
-X_i16:
- .param i32
- .local i32
- #APP
- foo $1
- #NO_APP
- i32.store16 $discard=, 0($0), $1
- return
-func_end4:
- .size X_i16, func_end4-X_i16
-
- .globl X_ptr
- .type X_ptr,@function
-X_ptr:
- .param i32
- .local i32
- #APP
- foo $1
- #NO_APP
- i32.store $discard=, 0($0), $1
- return
-func_end5:
- .size X_ptr, func_end5-X_ptr
-
- .globl funcname
- .type funcname,@function
-funcname:
- #APP
- foo funcname
- #NO_APP
- return
-func_end6:
- .size funcname, func_end6-funcname
-
- .globl varname
- .type varname,@function
-varname:
- #APP
- foo gv+37
- #NO_APP
- return
-func_end7:
- .size varname, func_end7-varname
-
- .type gv,@object
- .bss
- .globl gv
-gv:
- .size gv, 0
-
-
- .section ".note.GNU-stack","",@progbits
diff --git a/test/dot_s/legalize.wast b/test/llvm_autogenerated/legalize.wast
index 7614b462e..2127f8e99 100644
--- a/test/dot_s/legalize.wast
+++ b/test/llvm_autogenerated/legalize.wast
@@ -105,31 +105,31 @@
(local $$51 i64)
(local $$52 i32)
(local $$53 i32)
- (local $$54 i32)
- (local $$55 i32)
- (local $$56 i32)
+ (local $$54 i64)
+ (local $$55 i64)
+ (local $$56 i64)
(local $$57 i32)
- (local $$58 i64)
+ (local $$58 i32)
(local $$59 i64)
- (local $$60 i64)
+ (local $$60 i32)
(local $$61 i32)
- (local $$62 i32)
+ (local $$62 i64)
(local $$63 i64)
(local $$64 i64)
- (local $$65 i64)
+ (local $$65 i32)
(local $$66 i32)
- (local $$67 i32)
+ (local $$67 i64)
(local $$68 i64)
- (local $$69 i32)
+ (local $$69 i64)
(local $$70 i32)
- (local $$71 i64)
- (local $$72 i32)
+ (local $$71 i32)
+ (local $$72 i64)
(local $$73 i32)
(local $$74 i32)
(local $$75 i64)
- (local $$76 i64)
- (local $$77 i64)
- (local $$78 i64)
+ (local $$76 i32)
+ (local $$77 i32)
+ (local $$78 i32)
(local $$79 i64)
(local $$80 i64)
(local $$81 i64)
@@ -138,16 +138,16 @@
(local $$84 i64)
(local $$85 i64)
(local $$86 i64)
- (local $$87 i32)
+ (local $$87 i64)
(local $$88 i64)
- (local $$89 i64)
+ (local $$89 i32)
(local $$90 i64)
- (local $$91 i32)
+ (local $$91 i64)
(local $$92 i64)
- (local $$93 i64)
- (local $$94 i32)
+ (local $$93 i32)
+ (local $$94 i64)
(local $$95 i64)
- (local $$96 i64)
+ (local $$96 i32)
(local $$97 i64)
(local $$98 i64)
(local $$99 i64)
@@ -160,11 +160,11 @@
(local $$106 i64)
(local $$107 i64)
(local $$108 i64)
- (local $$109 i32)
+ (local $$109 i64)
(local $$110 i64)
(local $$111 i64)
(local $$112 i64)
- (local $$113 i64)
+ (local $$113 i32)
(local $$114 i64)
(local $$115 i64)
(local $$116 i64)
@@ -186,11 +186,11 @@
(local $$132 i64)
(local $$133 i64)
(local $$134 i64)
- (local $$135 i32)
+ (local $$135 i64)
(local $$136 i64)
(local $$137 i64)
(local $$138 i64)
- (local $$139 i64)
+ (local $$139 i32)
(local $$140 i64)
(local $$141 i64)
(local $$142 i64)
@@ -1469,175 +1469,7 @@
(get_local $$2)
(get_local $$17)
)
- (set_local $$39
- (i64.load offset=480 align=8
- (get_local $$279)
- )
- )
- (set_local $$43
- (i64.load offset=464 align=8
- (get_local $$279)
- )
- )
- (set_local $$34
- (i64.load offset=496 align=8
- (get_local $$279)
- )
- )
- (set_local $$51
- (i64.const 0)
- )
- (set_local $$49
- (i64.load offset=352 align=8
- (get_local $$279)
- )
- )
- (set_local $$36
- (i64.load offset=336 align=8
- (get_local $$279)
- )
- )
- (set_local $$38
- (i64.load offset=368 align=8
- (get_local $$279)
- )
- )
- (set_local $$41
- (i64.load offset=432 align=8
- (get_local $$279)
- )
- )
- (set_local $$58
- (i64.load offset=864 align=8
- (get_local $$279)
- )
- )
- (set_local $$59
- (i64.load offset=848 align=8
- (get_local $$279)
- )
- )
- (set_local $$60
- (i64.load offset=880 align=8
- (get_local $$279)
- )
- )
- (set_local $$63
- (i64.load offset=1008 align=8
- (get_local $$279)
- )
- )
- (set_local $$64
- (i64.load offset=960 align=8
- (get_local $$279)
- )
- )
- (set_local $$65
- (i64.load offset=976 align=8
- (get_local $$279)
- )
- )
- (set_local $$68
- (i64.load offset=816 align=8
- (get_local $$279)
- )
- )
- (set_local $$71
- (i64.load offset=240 align=8
- (get_local $$279)
- )
- )
- (set_local $$50
- (i64.lt_u
- (get_local $$33)
- (get_local $$42)
- )
- )
- (set_local $$52
- (i64.eq
- (get_local $$33)
- (get_local $$51)
- )
- )
- (set_local $$53
- (i64.lt_u
- (get_local $$35)
- (get_local $$42)
- )
- )
- (set_local $$54
- (i64.eq
- (get_local $$35)
- (get_local $$51)
- )
- )
- (set_local $$55
- (i64.lt_u
- (get_local $$37)
- (get_local $$42)
- )
- )
- (set_local $$56
- (i64.lt_u
- (get_local $$35)
- (get_local $$44)
- )
- )
- (set_local $$57
- (i64.lt_u
- (get_local $$40)
- (get_local $$42)
- )
- )
- (set_local $$61
- (i64.eq
- (get_local $$40)
- (get_local $$51)
- )
- )
- (set_local $$62
- (i64.lt_u
- (get_local $$17)
- (get_local $$42)
- )
- )
- (set_local $$66
- (i64.eq
- (get_local $$17)
- (get_local $$51)
- )
- )
- (set_local $$67
- (i64.lt_u
- (get_local $$45)
- (get_local $$42)
- )
- )
- (set_local $$69
- (i64.lt_u
- (get_local $$17)
- (get_local $$44)
- )
- )
- (set_local $$70
- (i64.lt_u
- (get_local $$47)
- (get_local $$42)
- )
- )
- (set_local $$72
- (i64.lt_u
- (get_local $$47)
- (get_local $$44)
- )
- )
- (set_local $$73
- (i64.lt_u
- (get_local $$17)
- (get_local $$46)
- )
- )
- (set_local $$74
+ (set_local $$78
(i32.const 8)
)
(set_local $$248
@@ -1649,11 +1481,11 @@
(get_local $$248)
)
)
- (set_local $$17
+ (set_local $$39
(i64.load align=8
(i32.add
(get_local $$248)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1666,14 +1498,29 @@
(get_local $$249)
)
)
- (set_local $$35
+ (set_local $$43
(i64.load align=8
(i32.add
(get_local $$249)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$34
+ (i64.load offset=480 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$49
+ (i64.load offset=464 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$36
+ (i64.load offset=496 align=8
+ (get_local $$279)
+ )
+ )
(set_local $$250
(i32.const 496)
)
@@ -1683,14 +1530,29 @@
(get_local $$250)
)
)
- (set_local $$40
+ (set_local $$38
(i64.load align=8
(i32.add
(get_local $$250)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$50
+ (i64.lt_u
+ (get_local $$33)
+ (get_local $$42)
+ )
+ )
+ (set_local $$51
+ (i64.const 0)
+ )
+ (set_local $$52
+ (i64.eq
+ (get_local $$33)
+ (get_local $$51)
+ )
+ )
(set_local $$251
(i32.const 352)
)
@@ -1700,11 +1562,11 @@
(get_local $$251)
)
)
- (set_local $$44
+ (set_local $$33
(i64.load align=8
(i32.add
(get_local $$251)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1717,11 +1579,11 @@
(get_local $$252)
)
)
- (set_local $$33
+ (set_local $$41
(i64.load align=8
(i32.add
(get_local $$252)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1734,11 +1596,11 @@
(get_local $$253)
)
)
- (set_local $$46
+ (set_local $$79
(i64.load align=8
(i32.add
(get_local $$253)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1751,11 +1613,11 @@
(get_local $$254)
)
)
- (set_local $$75
+ (set_local $$80
(i64.load align=8
(i32.add
(get_local $$254)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1768,11 +1630,11 @@
(get_local $$255)
)
)
- (set_local $$76
+ (set_local $$81
(i64.load align=8
(i32.add
(get_local $$255)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1785,11 +1647,11 @@
(get_local $$256)
)
)
- (set_local $$77
+ (set_local $$82
(i64.load align=8
(i32.add
(get_local $$256)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1802,11 +1664,11 @@
(get_local $$257)
)
)
- (set_local $$78
+ (set_local $$83
(i64.load align=8
(i32.add
(get_local $$257)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1819,11 +1681,11 @@
(get_local $$258)
)
)
- (set_local $$79
+ (set_local $$84
(i64.load align=8
(i32.add
(get_local $$258)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1836,11 +1698,11 @@
(get_local $$259)
)
)
- (set_local $$80
+ (set_local $$85
(i64.load align=8
(i32.add
(get_local $$259)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1853,11 +1715,11 @@
(get_local $$260)
)
)
- (set_local $$81
+ (set_local $$86
(i64.load align=8
(i32.add
(get_local $$260)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1870,11 +1732,11 @@
(get_local $$261)
)
)
- (set_local $$82
+ (set_local $$87
(i64.load align=8
(i32.add
(get_local $$261)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1887,87 +1749,14 @@
(get_local $$262)
)
)
- (set_local $$83
+ (set_local $$88
(i64.load align=8
(i32.add
(get_local $$262)
- (get_local $$74)
+ (get_local $$78)
)
)
)
- (set_local $$84
- (i64.load offset=912 align=8
- (get_local $$279)
- )
- )
- (set_local $$85
- (i64.load offset=928 align=8
- (get_local $$279)
- )
- )
- (set_local $$86
- (i64.load offset=944 align=8
- (get_local $$279)
- )
- )
- (set_local $$88
- (i64.load offset=80 align=8
- (get_local $$279)
- )
- )
- (set_local $$89
- (i64.load offset=96 align=8
- (get_local $$279)
- )
- )
- (set_local $$90
- (i64.load offset=112 align=8
- (get_local $$279)
- )
- )
- (set_local $$92
- (i64.load offset=48 align=8
- (get_local $$279)
- )
- )
- (set_local $$93
- (i64.load offset=176 align=8
- (get_local $$279)
- )
- )
- (set_local $$95
- (i64.load offset=288 align=8
- (get_local $$279)
- )
- )
- (set_local $$96
- (i64.load offset=272 align=8
- (get_local $$279)
- )
- )
- (set_local $$87
- (i64.lt_u
- (get_local $$48)
- (get_local $$42)
- )
- )
- (set_local $$91
- (i64.eq
- (get_local $$48)
- (get_local $$51)
- )
- )
- (set_local $$94
- (i64.eq
- (get_local $$47)
- (get_local $$51)
- )
- )
- (set_local $$42
- (i64.load offset=304 align=8
- (get_local $$279)
- )
- )
(set_local $$263
(i32.const 912)
)
@@ -1977,11 +1766,11 @@
(get_local $$263)
)
)
- (set_local $$47
+ (set_local $$100
(i64.load align=8
(i32.add
(get_local $$263)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -1994,11 +1783,11 @@
(get_local $$264)
)
)
- (set_local $$48
+ (set_local $$101
(i64.load align=8
(i32.add
(get_local $$264)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2011,11 +1800,11 @@
(get_local $$265)
)
)
- (set_local $$97
+ (set_local $$102
(i64.load align=8
(i32.add
(get_local $$265)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2028,11 +1817,11 @@
(get_local $$266)
)
)
- (set_local $$98
+ (set_local $$103
(i64.load align=8
(i32.add
(get_local $$266)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2045,14 +1834,29 @@
(get_local $$267)
)
)
- (set_local $$99
+ (set_local $$104
(i64.load align=8
(i32.add
(get_local $$267)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$90
+ (i64.load offset=80 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$91
+ (i64.load offset=96 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$92
+ (i64.load offset=112 align=8
+ (get_local $$279)
+ )
+ )
(set_local $$268
(i32.const 112)
)
@@ -2062,14 +1866,26 @@
(get_local $$268)
)
)
- (set_local $$100
+ (set_local $$105
(i64.load align=8
(i32.add
(get_local $$268)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$89
+ (i64.lt_u
+ (get_local $$48)
+ (get_local $$42)
+ )
+ )
+ (set_local $$93
+ (i64.eq
+ (get_local $$48)
+ (get_local $$51)
+ )
+ )
(set_local $$269
(i32.const 48)
)
@@ -2079,11 +1895,11 @@
(get_local $$269)
)
)
- (set_local $$101
+ (set_local $$48
(i64.load align=8
(i32.add
(get_local $$269)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2096,11 +1912,11 @@
(get_local $$270)
)
)
- (set_local $$102
+ (set_local $$106
(i64.load align=8
(i32.add
(get_local $$270)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2113,11 +1929,11 @@
(get_local $$271)
)
)
- (set_local $$103
+ (set_local $$107
(i64.load align=8
(i32.add
(get_local $$271)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2130,11 +1946,11 @@
(get_local $$272)
)
)
- (set_local $$104
+ (set_local $$108
(i64.load align=8
(i32.add
(get_local $$272)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2147,65 +1963,14 @@
(get_local $$273)
)
)
- (set_local $$105
+ (set_local $$109
(i64.load align=8
(i32.add
(get_local $$273)
- (get_local $$74)
+ (get_local $$78)
)
)
)
- (set_local $$106
- (i64.load offset=128 align=8
- (get_local $$279)
- )
- )
- (set_local $$107
- (i64.load offset=144 align=8
- (get_local $$279)
- )
- )
- (set_local $$108
- (i64.load offset=160 align=8
- (get_local $$279)
- )
- )
- (set_local $$110
- (i64.load align=8
- (get_local $$279)
- )
- )
- (set_local $$111
- (i64.load offset=16 align=8
- (get_local $$279)
- )
- )
- (set_local $$112
- (i64.load offset=32 align=8
- (get_local $$279)
- )
- )
- (set_local $$113
- (i64.load offset=64 align=8
- (get_local $$279)
- )
- )
- (set_local $$114
- (i64.load offset=896 align=8
- (get_local $$279)
- )
- )
- (set_local $$109
- (i64.eq
- (get_local $$45)
- (get_local $$51)
- )
- )
- (set_local $$45
- (i64.load offset=256 align=8
- (get_local $$279)
- )
- )
(set_local $$274
(i32.const 128)
)
@@ -2215,11 +1980,11 @@
(get_local $$274)
)
)
- (set_local $$115
+ (set_local $$119
(i64.load align=8
(i32.add
(get_local $$274)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2232,11 +1997,11 @@
(get_local $$275)
)
)
- (set_local $$116
+ (set_local $$120
(i64.load align=8
(i32.add
(get_local $$275)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2249,11 +2014,11 @@
(get_local $$276)
)
)
- (set_local $$117
+ (set_local $$121
(i64.load align=8
(i32.add
(get_local $$276)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2266,11 +2031,11 @@
(get_local $$277)
)
)
- (set_local $$118
+ (set_local $$122
(i64.load align=8
(i32.add
(get_local $$277)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2283,16 +2048,21 @@
(get_local $$278)
)
)
- (set_local $$119
+ (set_local $$123
(i64.load align=8
(i32.add
(get_local $$278)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$117
+ (i64.load offset=64 align=8
+ (get_local $$279)
+ )
+ )
(set_local $$279
- (i32.const 32)
+ (i32.const 64)
)
(set_local $$279
(i32.add
@@ -2300,16 +2070,16 @@
(get_local $$279)
)
)
- (set_local $$120
+ (set_local $$125
(i64.load align=8
(i32.add
(get_local $$279)
- (get_local $$74)
+ (get_local $$78)
)
)
)
(set_local $$280
- (i32.const 64)
+ (i32.const 32)
)
(set_local $$280
(i32.add
@@ -2317,11 +2087,11 @@
(get_local $$280)
)
)
- (set_local $$121
+ (set_local $$124
(i64.load align=8
(i32.add
(get_local $$280)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2334,11 +2104,11 @@
(get_local $$281)
)
)
- (set_local $$122
+ (set_local $$126
(i64.load align=8
(i32.add
(get_local $$281)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2351,134 +2121,153 @@
(get_local $$282)
)
)
- (set_local $$123
+ (set_local $$127
(i64.load align=8
(i32.add
(get_local $$282)
- (get_local $$74)
+ (get_local $$78)
)
)
)
- (set_local $$124
- (i64.load offset=192 align=8
+ (set_local $$283
+ (i32.const 192)
+ )
+ (set_local $$283
+ (i32.add
(get_local $$279)
+ (get_local $$283)
)
)
- (set_local $$125
- (i64.load offset=208 align=8
- (get_local $$279)
+ (set_local $$142
+ (i64.load align=8
+ (i32.add
+ (get_local $$283)
+ (get_local $$78)
+ )
)
)
- (set_local $$126
- (i64.load offset=224 align=8
+ (set_local $$284
+ (i32.const 208)
+ )
+ (set_local $$284
+ (i32.add
(get_local $$279)
+ (get_local $$284)
)
)
- (set_local $$127
- (i64.load offset=768 align=8
- (get_local $$279)
+ (set_local $$143
+ (i64.load align=8
+ (i32.add
+ (get_local $$284)
+ (get_local $$78)
+ )
)
)
- (set_local $$128
- (i64.load offset=784 align=8
+ (set_local $$114
+ (i64.load align=8
(get_local $$279)
)
)
- (set_local $$129
- (i64.load offset=800 align=8
+ (set_local $$115
+ (i64.load offset=16 align=8
(get_local $$279)
)
)
- (set_local $$130
- (i64.load offset=992 align=8
+ (set_local $$116
+ (i64.load offset=32 align=8
(get_local $$279)
)
)
- (set_local $$131
- (i64.load offset=832 align=8
+ (set_local $$285
+ (i32.const 224)
+ )
+ (set_local $$285
+ (i32.add
(get_local $$279)
+ (get_local $$285)
)
)
- (set_local $$132
- (i64.load offset=384 align=8
- (get_local $$279)
+ (set_local $$144
+ (i64.load align=8
+ (i32.add
+ (get_local $$285)
+ (get_local $$78)
+ )
)
)
- (set_local $$133
- (i64.load offset=400 align=8
- (get_local $$279)
+ (set_local $$74
+ (i64.lt_u
+ (get_local $$47)
+ (get_local $$42)
)
)
- (set_local $$134
- (i64.load offset=416 align=8
+ (set_local $$128
+ (i64.load offset=192 align=8
(get_local $$279)
)
)
- (set_local $$136
- (i64.load offset=320 align=8
+ (set_local $$129
+ (i64.load offset=208 align=8
(get_local $$279)
)
)
- (set_local $$135
- (i64.eq
- (get_local $$37)
- (get_local $$51)
+ (set_local $$130
+ (i64.load offset=224 align=8
+ (get_local $$279)
)
)
- (set_local $$37
- (i64.load offset=448 align=8
+ (set_local $$75
+ (i64.load offset=240 align=8
(get_local $$279)
)
)
- (set_local $$283
- (i32.const 192)
+ (set_local $$94
+ (i64.load offset=48 align=8
+ (get_local $$279)
+ )
)
- (set_local $$283
- (i32.add
+ (set_local $$95
+ (i64.load offset=176 align=8
(get_local $$279)
- (get_local $$283)
)
)
- (set_local $$137
- (i64.load align=8
- (i32.add
- (get_local $$283)
- (get_local $$74)
- )
+ (set_local $$71
+ (i64.lt_u
+ (get_local $$45)
+ (get_local $$42)
)
)
- (set_local $$284
- (i32.const 208)
+ (set_local $$76
+ (i64.lt_u
+ (get_local $$47)
+ (get_local $$44)
+ )
)
- (set_local $$284
- (i32.add
+ (set_local $$110
+ (i64.load offset=128 align=8
(get_local $$279)
- (get_local $$284)
)
)
- (set_local $$138
- (i64.load align=8
- (i32.add
- (get_local $$284)
- (get_local $$74)
- )
+ (set_local $$111
+ (i64.load offset=144 align=8
+ (get_local $$279)
)
)
- (set_local $$285
- (i32.const 224)
- )
- (set_local $$285
- (i32.add
+ (set_local $$112
+ (i64.load offset=160 align=8
(get_local $$279)
- (get_local $$285)
)
)
- (set_local $$139
- (i64.load align=8
- (i32.add
- (get_local $$285)
- (get_local $$74)
- )
+ (set_local $$96
+ (i64.eq
+ (get_local $$47)
+ (get_local $$51)
+ )
+ )
+ (set_local $$113
+ (i64.eq
+ (get_local $$45)
+ (get_local $$51)
)
)
(set_local $$286
@@ -2490,11 +2279,11 @@
(get_local $$286)
)
)
- (set_local $$140
+ (set_local $$47
(i64.load align=8
(i32.add
(get_local $$286)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2507,11 +2296,11 @@
(get_local $$287)
)
)
- (set_local $$141
+ (set_local $$45
(i64.load align=8
(i32.add
(get_local $$287)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2524,11 +2313,11 @@
(get_local $$288)
)
)
- (set_local $$142
+ (set_local $$145
(i64.load align=8
(i32.add
(get_local $$288)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2541,11 +2330,11 @@
(get_local $$289)
)
)
- (set_local $$143
+ (set_local $$146
(i64.load align=8
(i32.add
(get_local $$289)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2558,11 +2347,11 @@
(get_local $$290)
)
)
- (set_local $$144
+ (set_local $$147
(i64.load align=8
(i32.add
(get_local $$290)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2575,11 +2364,11 @@
(get_local $$291)
)
)
- (set_local $$145
+ (set_local $$148
(i64.load align=8
(i32.add
(get_local $$291)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2592,14 +2381,24 @@
(get_local $$292)
)
)
- (set_local $$146
+ (set_local $$149
(i64.load align=8
(i32.add
(get_local $$292)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$136
+ (i64.load offset=384 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$137
+ (i64.load offset=400 align=8
+ (get_local $$279)
+ )
+ )
(set_local $$293
(i32.const 416)
)
@@ -2609,14 +2408,36 @@
(get_local $$293)
)
)
- (set_local $$147
+ (set_local $$150
(i64.load align=8
(i32.add
(get_local $$293)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$138
+ (i64.load offset=416 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$59
+ (i64.load offset=432 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$58
+ (i64.lt_u
+ (get_local $$37)
+ (get_local $$42)
+ )
+ )
+ (set_local $$139
+ (i64.eq
+ (get_local $$37)
+ (get_local $$51)
+ )
+ )
(set_local $$294
(i32.const 320)
)
@@ -2626,14 +2447,29 @@
(get_local $$294)
)
)
- (set_local $$148
+ (set_local $$37
(i64.load align=8
(i32.add
(get_local $$294)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$54
+ (i64.load offset=352 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$55
+ (i64.load offset=336 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$56
+ (i64.load offset=368 align=8
+ (get_local $$279)
+ )
+ )
(set_local $$295
(i32.const 448)
)
@@ -2643,49 +2479,62 @@
(get_local $$295)
)
)
- (set_local $$149
+ (set_local $$151
(i64.load align=8
(i32.add
(get_local $$295)
- (get_local $$74)
+ (get_local $$78)
)
)
)
- (set_local $$150
- (i64.load offset=736 align=8
- (get_local $$279)
+ (set_local $$53
+ (i64.lt_u
+ (get_local $$35)
+ (get_local $$42)
)
)
- (set_local $$151
- (i64.load offset=720 align=8
+ (set_local $$97
+ (i64.load offset=288 align=8
(get_local $$279)
)
)
- (set_local $$152
- (i64.load offset=752 align=8
+ (set_local $$98
+ (i64.load offset=272 align=8
(get_local $$279)
)
)
- (set_local $$153
- (i64.load offset=592 align=8
+ (set_local $$99
+ (i64.load offset=304 align=8
(get_local $$279)
)
)
- (set_local $$154
- (i64.load offset=608 align=8
+ (set_local $$118
+ (i64.load offset=256 align=8
(get_local $$279)
)
)
- (set_local $$155
- (i64.load offset=624 align=8
+ (set_local $$140
+ (i64.load offset=320 align=8
(get_local $$279)
)
)
- (set_local $$156
- (i64.load offset=688 align=8
+ (set_local $$141
+ (i64.load offset=448 align=8
(get_local $$279)
)
)
+ (set_local $$57
+ (i64.eq
+ (get_local $$35)
+ (get_local $$51)
+ )
+ )
+ (set_local $$60
+ (i64.lt_u
+ (get_local $$35)
+ (get_local $$44)
+ )
+ )
(set_local $$296
(i32.const 736)
)
@@ -2695,11 +2544,11 @@
(get_local $$296)
)
)
- (set_local $$157
+ (set_local $$35
(i64.load align=8
(i32.add
(get_local $$296)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2712,14 +2561,29 @@
(get_local $$297)
)
)
- (set_local $$158
+ (set_local $$159
(i64.load align=8
(i32.add
(get_local $$297)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$62
+ (i64.load offset=864 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$63
+ (i64.load offset=848 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$64
+ (i64.load offset=880 align=8
+ (get_local $$279)
+ )
+ )
(set_local $$298
(i32.const 752)
)
@@ -2729,14 +2593,41 @@
(get_local $$298)
)
)
- (set_local $$159
+ (set_local $$160
(i64.load align=8
(i32.add
(get_local $$298)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$61
+ (i64.lt_u
+ (get_local $$40)
+ (get_local $$42)
+ )
+ )
+ (set_local $$152
+ (i64.load offset=736 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$153
+ (i64.load offset=720 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$154
+ (i64.load offset=752 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$65
+ (i64.eq
+ (get_local $$40)
+ (get_local $$51)
+ )
+ )
(set_local $$299
(i32.const 592)
)
@@ -2746,11 +2637,11 @@
(get_local $$299)
)
)
- (set_local $$160
+ (set_local $$40
(i64.load align=8
(i32.add
(get_local $$299)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2767,7 +2658,7 @@
(i64.load align=8
(i32.add
(get_local $$300)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2784,7 +2675,7 @@
(i64.load align=8
(i32.add
(get_local $$301)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2801,35 +2692,10 @@
(i64.load align=8
(i32.add
(get_local $$302)
- (get_local $$74)
+ (get_local $$78)
)
)
)
- (set_local $$164
- (i64.load offset=640 align=8
- (get_local $$279)
- )
- )
- (set_local $$165
- (i64.load offset=656 align=8
- (get_local $$279)
- )
- )
- (set_local $$166
- (i64.load offset=672 align=8
- (get_local $$279)
- )
- )
- (set_local $$167
- (i64.load offset=576 align=8
- (get_local $$279)
- )
- )
- (set_local $$168
- (i64.load offset=704 align=8
- (get_local $$279)
- )
- )
(set_local $$303
(i32.const 640)
)
@@ -2843,7 +2709,7 @@
(i64.load align=8
(i32.add
(get_local $$303)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2860,10 +2726,25 @@
(i64.load align=8
(i32.add
(get_local $$304)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$131
+ (i64.load offset=768 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$132
+ (i64.load offset=784 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$133
+ (i64.load offset=800 align=8
+ (get_local $$279)
+ )
+ )
(set_local $$305
(i32.const 672)
)
@@ -2877,10 +2758,35 @@
(i64.load align=8
(i32.add
(get_local $$305)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$164
+ (i64.load offset=640 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$165
+ (i64.load offset=656 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$166
+ (i64.load offset=672 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$72
+ (i64.load offset=816 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$158
+ (i64.load offset=688 align=8
+ (get_local $$279)
+ )
+ )
(set_local $$306
(i32.const 576)
)
@@ -2894,10 +2800,20 @@
(i64.load align=8
(i32.add
(get_local $$306)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$135
+ (i64.load offset=832 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$168
+ (i64.load offset=704 align=8
+ (get_local $$279)
+ )
+ )
(set_local $$307
(i32.const 704)
)
@@ -2911,25 +2827,10 @@
(i64.load align=8
(i32.add
(get_local $$307)
- (get_local $$74)
+ (get_local $$78)
)
)
)
- (set_local $$174
- (i64.load offset=528 align=8
- (get_local $$279)
- )
- )
- (set_local $$175
- (i64.load offset=544 align=8
- (get_local $$279)
- )
- )
- (set_local $$176
- (i64.load offset=560 align=8
- (get_local $$279)
- )
- )
(set_local $$308
(i32.const 528)
)
@@ -2943,7 +2844,7 @@
(i64.load align=8
(i32.add
(get_local $$308)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2960,7 +2861,7 @@
(i64.load align=8
(i32.add
(get_local $$309)
- (get_local $$74)
+ (get_local $$78)
)
)
)
@@ -2977,10 +2878,109 @@
(i64.load align=8
(i32.add
(get_local $$310)
- (get_local $$74)
+ (get_local $$78)
)
)
)
+ (set_local $$67
+ (i64.load offset=1008 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$68
+ (i64.load offset=960 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$69
+ (i64.load offset=976 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$66
+ (i64.lt_u
+ (get_local $$17)
+ (get_local $$42)
+ )
+ )
+ (set_local $$70
+ (i64.eq
+ (get_local $$17)
+ (get_local $$51)
+ )
+ )
+ (set_local $$73
+ (i64.lt_u
+ (get_local $$17)
+ (get_local $$44)
+ )
+ )
+ (set_local $$77
+ (i64.lt_u
+ (get_local $$17)
+ (get_local $$46)
+ )
+ )
+ (set_local $$17
+ (i64.load offset=912 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$42
+ (i64.load offset=928 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$44
+ (i64.load offset=944 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$46
+ (i64.load offset=896 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$134
+ (i64.load offset=992 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$155
+ (i64.load offset=592 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$156
+ (i64.load offset=608 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$157
+ (i64.load offset=624 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$167
+ (i64.load offset=576 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$174
+ (i64.load offset=528 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$175
+ (i64.load offset=544 align=8
+ (get_local $$279)
+ )
+ )
+ (set_local $$176
+ (i64.load offset=560 align=8
+ (get_local $$279)
+ )
+ )
(set_local $$180
(i64.load offset=512 align=8
(get_local $$279)
@@ -2998,18 +2998,18 @@
(i64.store align=8
(i32.add
(get_local $$0)
- (get_local $$74)
+ (get_local $$78)
)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.select
- (get_local $$62)
+ (get_local $$66)
(i64.load align=8
(i32.add
(get_local $$311)
- (get_local $$74)
+ (get_local $$78)
)
)
(get_local $$51)
@@ -3022,11 +3022,11 @@
(i64.store align=8
(get_local $$0)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.select
- (get_local $$62)
+ (get_local $$66)
(get_local $$180)
(get_local $$51)
)
@@ -3041,14 +3041,14 @@
(i32.const 24)
)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$4)
(i64.select
- (get_local $$62)
+ (get_local $$66)
(i64.or
(get_local $$177)
(get_local $$178)
@@ -3067,14 +3067,14 @@
(i32.const 16)
)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$3)
(i64.select
- (get_local $$62)
+ (get_local $$66)
(i64.or
(get_local $$174)
(get_local $$175)
@@ -3093,41 +3093,41 @@
(i32.const 56)
)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$8)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.or
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$8)
(i64.select
- (get_local $$62)
+ (get_local $$66)
(i64.or
- (get_local $$160)
+ (get_local $$40)
(get_local $$161)
)
(get_local $$162)
)
)
(i64.select
- (get_local $$67)
+ (get_local $$71)
(get_local $$163)
(get_local $$51)
)
)
(i64.select
- (get_local $$61)
+ (get_local $$65)
(get_local $$4)
(i64.select
- (get_local $$57)
+ (get_local $$61)
(i64.or
- (get_local $$158)
- (get_local $$157)
+ (get_local $$159)
+ (get_local $$35)
)
- (get_local $$159)
+ (get_local $$160)
)
)
)
@@ -3141,41 +3141,41 @@
(i32.const 48)
)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$7)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.or
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$7)
(i64.select
- (get_local $$62)
+ (get_local $$66)
(i64.or
- (get_local $$153)
- (get_local $$154)
+ (get_local $$155)
+ (get_local $$156)
)
- (get_local $$155)
+ (get_local $$157)
)
)
(i64.select
- (get_local $$67)
- (get_local $$156)
+ (get_local $$71)
+ (get_local $$158)
(get_local $$51)
)
)
(i64.select
- (get_local $$61)
+ (get_local $$65)
(get_local $$3)
(i64.select
- (get_local $$57)
+ (get_local $$61)
(i64.or
- (get_local $$151)
- (get_local $$150)
+ (get_local $$153)
+ (get_local $$152)
)
- (get_local $$152)
+ (get_local $$154)
)
)
)
@@ -3189,23 +3189,23 @@
(i32.const 40)
)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$6)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.or
(i64.select
- (get_local $$62)
+ (get_local $$66)
(get_local $$172)
(get_local $$51)
)
(i64.select
- (get_local $$109)
+ (get_local $$113)
(get_local $$2)
(i64.select
- (get_local $$67)
+ (get_local $$71)
(i64.or
(get_local $$169)
(get_local $$170)
@@ -3215,7 +3215,7 @@
)
)
(i64.select
- (get_local $$57)
+ (get_local $$61)
(get_local $$173)
(get_local $$51)
)
@@ -3230,23 +3230,23 @@
(i32.const 32)
)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$5)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.or
(i64.select
- (get_local $$62)
+ (get_local $$66)
(get_local $$167)
(get_local $$51)
)
(i64.select
- (get_local $$109)
+ (get_local $$113)
(get_local $$1)
(i64.select
- (get_local $$67)
+ (get_local $$71)
(i64.or
(get_local $$164)
(get_local $$165)
@@ -3256,7 +3256,7 @@
)
)
(i64.select
- (get_local $$57)
+ (get_local $$61)
(get_local $$168)
(get_local $$51)
)
@@ -3271,80 +3271,80 @@
(i32.const 120)
)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$16)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.or
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$16)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.or
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$16)
(i64.select
- (get_local $$62)
+ (get_local $$66)
(i64.or
- (get_local $$79)
- (get_local $$80)
+ (get_local $$84)
+ (get_local $$85)
)
- (get_local $$81)
+ (get_local $$86)
)
)
(i64.select
- (get_local $$67)
- (get_local $$82)
+ (get_local $$71)
+ (get_local $$87)
(get_local $$51)
)
)
(i64.select
- (get_local $$61)
+ (get_local $$65)
(get_local $$12)
(i64.select
- (get_local $$57)
+ (get_local $$61)
(i64.or
- (get_local $$77)
- (get_local $$76)
+ (get_local $$82)
+ (get_local $$81)
)
- (get_local $$78)
+ (get_local $$83)
)
)
)
)
(i64.select
- (get_local $$72)
+ (get_local $$76)
(i64.select
- (get_local $$70)
- (get_local $$83)
+ (get_local $$74)
+ (get_local $$88)
(get_local $$51)
)
(get_local $$51)
)
)
(i64.select
- (get_local $$54)
+ (get_local $$57)
(get_local $$8)
(i64.select
- (get_local $$56)
+ (get_local $$60)
(i64.or
(i64.select
- (get_local $$54)
+ (get_local $$57)
(get_local $$8)
(i64.select
(get_local $$53)
(i64.or
+ (get_local $$41)
(get_local $$33)
- (get_local $$44)
)
- (get_local $$46)
+ (get_local $$79)
)
)
(i64.select
- (get_local $$55)
- (get_local $$75)
+ (get_local $$58)
+ (get_local $$80)
(get_local $$51)
)
)
@@ -3354,10 +3354,10 @@
(i64.select
(get_local $$50)
(i64.or
- (get_local $$35)
- (get_local $$17)
+ (get_local $$43)
+ (get_local $$39)
)
- (get_local $$40)
+ (get_local $$38)
)
)
)
@@ -3371,80 +3371,80 @@
(i32.const 112)
)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$15)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.or
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$15)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.or
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$15)
(i64.select
- (get_local $$62)
+ (get_local $$66)
(i64.or
- (get_local $$63)
- (get_local $$64)
+ (get_local $$67)
+ (get_local $$68)
)
- (get_local $$65)
+ (get_local $$69)
)
)
(i64.select
- (get_local $$67)
- (get_local $$68)
+ (get_local $$71)
+ (get_local $$72)
(get_local $$51)
)
)
(i64.select
- (get_local $$61)
+ (get_local $$65)
(get_local $$11)
(i64.select
- (get_local $$57)
+ (get_local $$61)
(i64.or
- (get_local $$59)
- (get_local $$58)
+ (get_local $$63)
+ (get_local $$62)
)
- (get_local $$60)
+ (get_local $$64)
)
)
)
)
(i64.select
- (get_local $$72)
+ (get_local $$76)
(i64.select
- (get_local $$70)
- (get_local $$71)
+ (get_local $$74)
+ (get_local $$75)
(get_local $$51)
)
(get_local $$51)
)
)
(i64.select
- (get_local $$54)
+ (get_local $$57)
(get_local $$7)
(i64.select
- (get_local $$56)
+ (get_local $$60)
(i64.or
(i64.select
- (get_local $$54)
+ (get_local $$57)
(get_local $$7)
(i64.select
(get_local $$53)
(i64.or
- (get_local $$36)
- (get_local $$49)
+ (get_local $$55)
+ (get_local $$54)
)
- (get_local $$38)
+ (get_local $$56)
)
)
(i64.select
- (get_local $$55)
- (get_local $$41)
+ (get_local $$58)
+ (get_local $$59)
(get_local $$51)
)
)
@@ -3454,10 +3454,10 @@
(i64.select
(get_local $$50)
(i64.or
- (get_local $$43)
- (get_local $$39)
+ (get_local $$49)
+ (get_local $$34)
)
- (get_local $$34)
+ (get_local $$36)
)
)
)
@@ -3471,86 +3471,86 @@
(i32.const 104)
)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$14)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.or
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$14)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.or
(i64.select
- (get_local $$62)
- (get_local $$143)
+ (get_local $$66)
+ (get_local $$146)
(get_local $$51)
)
(i64.select
- (get_local $$109)
+ (get_local $$113)
(get_local $$10)
(i64.select
- (get_local $$67)
+ (get_local $$71)
(i64.or
- (get_local $$140)
- (get_local $$141)
+ (get_local $$47)
+ (get_local $$45)
)
- (get_local $$142)
+ (get_local $$145)
)
)
)
(i64.select
- (get_local $$57)
- (get_local $$144)
+ (get_local $$61)
+ (get_local $$147)
(get_local $$51)
)
)
)
(i64.select
- (get_local $$72)
+ (get_local $$76)
(i64.select
- (get_local $$94)
+ (get_local $$96)
(get_local $$6)
(i64.select
- (get_local $$70)
+ (get_local $$74)
(i64.or
- (get_local $$137)
- (get_local $$138)
+ (get_local $$142)
+ (get_local $$143)
)
- (get_local $$139)
+ (get_local $$144)
)
)
(get_local $$51)
)
)
(i64.select
- (get_local $$54)
+ (get_local $$57)
(get_local $$6)
(i64.select
- (get_local $$56)
+ (get_local $$60)
(i64.or
(i64.select
(get_local $$53)
- (get_local $$148)
+ (get_local $$37)
(get_local $$51)
)
(i64.select
- (get_local $$135)
+ (get_local $$139)
(get_local $$2)
(i64.select
- (get_local $$55)
+ (get_local $$58)
(i64.or
- (get_local $$145)
- (get_local $$146)
+ (get_local $$148)
+ (get_local $$149)
)
- (get_local $$147)
+ (get_local $$150)
)
)
)
(i64.select
(get_local $$50)
- (get_local $$149)
+ (get_local $$151)
(get_local $$51)
)
)
@@ -3564,86 +3564,86 @@
(i32.const 96)
)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$13)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.or
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$13)
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.or
(i64.select
- (get_local $$62)
- (get_local $$130)
+ (get_local $$66)
+ (get_local $$134)
(get_local $$51)
)
(i64.select
- (get_local $$109)
+ (get_local $$113)
(get_local $$9)
(i64.select
- (get_local $$67)
+ (get_local $$71)
(i64.or
- (get_local $$127)
- (get_local $$128)
+ (get_local $$131)
+ (get_local $$132)
)
- (get_local $$129)
+ (get_local $$133)
)
)
)
(i64.select
- (get_local $$57)
- (get_local $$131)
+ (get_local $$61)
+ (get_local $$135)
(get_local $$51)
)
)
)
(i64.select
- (get_local $$72)
+ (get_local $$76)
(i64.select
- (get_local $$94)
+ (get_local $$96)
(get_local $$5)
(i64.select
- (get_local $$70)
+ (get_local $$74)
(i64.or
- (get_local $$124)
- (get_local $$125)
+ (get_local $$128)
+ (get_local $$129)
)
- (get_local $$126)
+ (get_local $$130)
)
)
(get_local $$51)
)
)
(i64.select
- (get_local $$54)
+ (get_local $$57)
(get_local $$5)
(i64.select
- (get_local $$56)
+ (get_local $$60)
(i64.or
(i64.select
(get_local $$53)
- (get_local $$136)
+ (get_local $$140)
(get_local $$51)
)
(i64.select
- (get_local $$135)
+ (get_local $$139)
(get_local $$1)
(i64.select
- (get_local $$55)
+ (get_local $$58)
(i64.or
- (get_local $$132)
- (get_local $$133)
+ (get_local $$136)
+ (get_local $$137)
)
- (get_local $$134)
+ (get_local $$138)
)
)
)
(i64.select
(get_local $$50)
- (get_local $$37)
+ (get_local $$141)
(get_local $$51)
)
)
@@ -3657,64 +3657,64 @@
(i32.const 72)
)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$10)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.or
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.select
- (get_local $$62)
- (get_local $$122)
+ (get_local $$66)
+ (get_local $$126)
(get_local $$51)
)
(get_local $$51)
)
(i64.select
- (get_local $$94)
+ (get_local $$96)
(get_local $$2)
(i64.select
- (get_local $$72)
+ (get_local $$76)
(i64.or
(i64.select
- (get_local $$94)
+ (get_local $$96)
(get_local $$2)
(i64.select
- (get_local $$70)
+ (get_local $$74)
(i64.or
- (get_local $$118)
- (get_local $$119)
+ (get_local $$122)
+ (get_local $$123)
)
- (get_local $$120)
+ (get_local $$124)
)
)
(i64.select
- (get_local $$87)
- (get_local $$121)
+ (get_local $$89)
+ (get_local $$125)
(get_local $$51)
)
)
(i64.select
- (get_local $$109)
+ (get_local $$113)
(get_local $$6)
(i64.select
- (get_local $$67)
+ (get_local $$71)
(i64.or
- (get_local $$115)
- (get_local $$116)
+ (get_local $$119)
+ (get_local $$120)
)
- (get_local $$117)
+ (get_local $$121)
)
)
)
)
)
(i64.select
- (get_local $$56)
+ (get_local $$60)
(i64.select
(get_local $$53)
- (get_local $$123)
+ (get_local $$127)
(get_local $$51)
)
(get_local $$51)
@@ -3728,64 +3728,64 @@
(i32.const 64)
)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$9)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.or
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.select
- (get_local $$62)
- (get_local $$114)
+ (get_local $$66)
+ (get_local $$46)
(get_local $$51)
)
(get_local $$51)
)
(i64.select
- (get_local $$94)
+ (get_local $$96)
(get_local $$1)
(i64.select
- (get_local $$72)
+ (get_local $$76)
(i64.or
(i64.select
- (get_local $$94)
+ (get_local $$96)
(get_local $$1)
(i64.select
- (get_local $$70)
+ (get_local $$74)
(i64.or
- (get_local $$110)
- (get_local $$111)
+ (get_local $$114)
+ (get_local $$115)
)
- (get_local $$112)
+ (get_local $$116)
)
)
(i64.select
- (get_local $$87)
- (get_local $$113)
+ (get_local $$89)
+ (get_local $$117)
(get_local $$51)
)
)
(i64.select
- (get_local $$109)
+ (get_local $$113)
(get_local $$5)
(i64.select
- (get_local $$67)
+ (get_local $$71)
(i64.or
- (get_local $$106)
- (get_local $$107)
+ (get_local $$110)
+ (get_local $$111)
)
- (get_local $$108)
+ (get_local $$112)
)
)
)
)
)
(i64.select
- (get_local $$56)
+ (get_local $$60)
(i64.select
(get_local $$53)
- (get_local $$45)
+ (get_local $$118)
(get_local $$51)
)
(get_local $$51)
@@ -3799,71 +3799,71 @@
(i32.const 88)
)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$12)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.or
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$12)
(i64.select
- (get_local $$62)
+ (get_local $$66)
(i64.or
- (get_local $$47)
- (get_local $$48)
+ (get_local $$100)
+ (get_local $$101)
)
- (get_local $$97)
+ (get_local $$102)
)
)
(get_local $$51)
)
(i64.select
- (get_local $$94)
+ (get_local $$96)
(get_local $$4)
(i64.select
- (get_local $$72)
+ (get_local $$76)
(i64.or
(i64.select
- (get_local $$70)
- (get_local $$101)
+ (get_local $$74)
+ (get_local $$48)
(get_local $$51)
)
(i64.select
- (get_local $$91)
+ (get_local $$93)
(get_local $$8)
(i64.select
- (get_local $$87)
+ (get_local $$89)
(i64.or
- (get_local $$98)
- (get_local $$99)
+ (get_local $$103)
+ (get_local $$104)
)
- (get_local $$100)
+ (get_local $$105)
)
)
)
(i64.select
- (get_local $$67)
- (get_local $$102)
+ (get_local $$71)
+ (get_local $$106)
(get_local $$51)
)
)
)
)
(i64.select
- (get_local $$56)
+ (get_local $$60)
(i64.select
- (get_local $$54)
+ (get_local $$57)
(get_local $$4)
(i64.select
(get_local $$53)
(i64.or
- (get_local $$104)
- (get_local $$103)
+ (get_local $$108)
+ (get_local $$107)
)
- (get_local $$105)
+ (get_local $$109)
)
)
(get_local $$51)
@@ -3877,71 +3877,71 @@
(i32.const 80)
)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$11)
(i64.select
- (get_local $$73)
+ (get_local $$77)
(i64.or
(i64.select
- (get_local $$69)
+ (get_local $$73)
(i64.select
- (get_local $$66)
+ (get_local $$70)
(get_local $$11)
(i64.select
- (get_local $$62)
+ (get_local $$66)
(i64.or
- (get_local $$84)
- (get_local $$85)
+ (get_local $$17)
+ (get_local $$42)
)
- (get_local $$86)
+ (get_local $$44)
)
)
(get_local $$51)
)
(i64.select
- (get_local $$94)
+ (get_local $$96)
(get_local $$3)
(i64.select
- (get_local $$72)
+ (get_local $$76)
(i64.or
(i64.select
- (get_local $$70)
- (get_local $$92)
+ (get_local $$74)
+ (get_local $$94)
(get_local $$51)
)
(i64.select
- (get_local $$91)
+ (get_local $$93)
(get_local $$7)
(i64.select
- (get_local $$87)
+ (get_local $$89)
(i64.or
- (get_local $$88)
- (get_local $$89)
+ (get_local $$90)
+ (get_local $$91)
)
- (get_local $$90)
+ (get_local $$92)
)
)
)
(i64.select
- (get_local $$67)
- (get_local $$93)
+ (get_local $$71)
+ (get_local $$95)
(get_local $$51)
)
)
)
)
(i64.select
- (get_local $$56)
+ (get_local $$60)
(i64.select
- (get_local $$54)
+ (get_local $$57)
(get_local $$3)
(i64.select
(get_local $$53)
(i64.or
- (get_local $$96)
- (get_local $$95)
+ (get_local $$98)
+ (get_local $$97)
)
- (get_local $$42)
+ (get_local $$99)
)
)
(get_local $$51)
diff --git a/test/llvm_autogenerated/llvm-to-s.py b/test/llvm_autogenerated/llvm-to-s.py
index 9952352a8..ae73c167b 100755
--- a/test/llvm_autogenerated/llvm-to-s.py
+++ b/test/llvm_autogenerated/llvm-to-s.py
@@ -52,6 +52,14 @@ def main(args):
tests = FindTestFiles(LLVM_TEST_DIR, '.ll')
for ll_test in tests:
name_noext = os.path.splitext(os.path.basename(ll_test))[0]
+
+ BLACKLIST = ['inline-asm', # inline asm containing invalid syntax
+ 'returned', # external global symbol
+ 'vtable', # external global symbol
+ ]
+ if name_noext in BLACKLIST:
+ continue
+
s = os.path.join(S_TEST_DIR, name_noext + '.s')
run_line = GetRunLine(ll_test)
cmd = shlex.split(run_line)
diff --git a/test/dot_s/load-ext.wast b/test/llvm_autogenerated/load-ext.wast
index 422828010..422828010 100644
--- a/test/dot_s/load-ext.wast
+++ b/test/llvm_autogenerated/load-ext.wast
diff --git a/test/dot_s/load-store-i1.wast b/test/llvm_autogenerated/load-store-i1.wast
index d9b67382b..d9b67382b 100644
--- a/test/dot_s/load-store-i1.wast
+++ b/test/llvm_autogenerated/load-store-i1.wast
diff --git a/test/dot_s/load.wast b/test/llvm_autogenerated/load.wast
index ac52dcda0..ac52dcda0 100644
--- a/test/dot_s/load.wast
+++ b/test/llvm_autogenerated/load.wast
diff --git a/test/dot_s/memory-addr32.wast b/test/llvm_autogenerated/memory-addr32.wast
index c056c10d9..c056c10d9 100644
--- a/test/dot_s/memory-addr32.wast
+++ b/test/llvm_autogenerated/memory-addr32.wast
diff --git a/test/dot_s/memory-addr64.wast b/test/llvm_autogenerated/memory-addr64.wast
index 49c56ea9b..49c56ea9b 100644
--- a/test/dot_s/memory-addr64.wast
+++ b/test/llvm_autogenerated/memory-addr64.wast
diff --git a/test/dot_s/offset-folding.wast b/test/llvm_autogenerated/offset-folding.wast
index 237efdeeb..b3a247cc1 100644
--- a/test/dot_s/offset-folding.wast
+++ b/test/llvm_autogenerated/offset-folding.wast
@@ -1,5 +1,5 @@
(module
- (memory 0 4294967295)
+ (memory 216 4294967295)
(export "test0" $test0)
(export "test1" $test1)
(export "test2" $test2)
@@ -8,7 +8,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (i32.const 0)
+ (i32.const 192)
)
)
)
@@ -17,7 +17,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (i32.const 0)
+ (i32.const 204)
)
)
)
@@ -26,7 +26,7 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (i32.const 0)
+ (i32.const 4)
)
)
)
@@ -35,10 +35,10 @@
(block $fake_return_waka123
(block
(br $fake_return_waka123
- (i32.const 0)
+ (i32.const 16)
)
)
)
)
)
-;; METADATA: { "asmConsts": {} }
+;; METADATA: { "asmConsts": {},"staticBump": 215 }
diff --git a/test/llvm_autogenerated/offset.wast b/test/llvm_autogenerated/offset.wast
new file mode 100644
index 000000000..d85361666
--- /dev/null
+++ b/test/llvm_autogenerated/offset.wast
@@ -0,0 +1,473 @@
+(module
+ (memory 8 4294967295 (segment 4 "\00\00\00\00"))
+ (export "load_i32_with_folded_offset" $load_i32_with_folded_offset)
+ (export "load_i32_with_folded_gep_offset" $load_i32_with_folded_gep_offset)
+ (export "load_i32_with_unfolded_gep_negative_offset" $load_i32_with_unfolded_gep_negative_offset)
+ (export "load_i32_with_unfolded_offset" $load_i32_with_unfolded_offset)
+ (export "load_i32_with_unfolded_gep_offset" $load_i32_with_unfolded_gep_offset)
+ (export "load_i64_with_folded_offset" $load_i64_with_folded_offset)
+ (export "load_i64_with_folded_gep_offset" $load_i64_with_folded_gep_offset)
+ (export "load_i64_with_unfolded_gep_negative_offset" $load_i64_with_unfolded_gep_negative_offset)
+ (export "load_i64_with_unfolded_offset" $load_i64_with_unfolded_offset)
+ (export "load_i64_with_unfolded_gep_offset" $load_i64_with_unfolded_gep_offset)
+ (export "store_i32_with_folded_offset" $store_i32_with_folded_offset)
+ (export "store_i32_with_folded_gep_offset" $store_i32_with_folded_gep_offset)
+ (export "store_i32_with_unfolded_gep_negative_offset" $store_i32_with_unfolded_gep_negative_offset)
+ (export "store_i32_with_unfolded_offset" $store_i32_with_unfolded_offset)
+ (export "store_i32_with_unfolded_gep_offset" $store_i32_with_unfolded_gep_offset)
+ (export "store_i64_with_folded_offset" $store_i64_with_folded_offset)
+ (export "store_i64_with_folded_gep_offset" $store_i64_with_folded_gep_offset)
+ (export "store_i64_with_unfolded_gep_negative_offset" $store_i64_with_unfolded_gep_negative_offset)
+ (export "store_i64_with_unfolded_offset" $store_i64_with_unfolded_offset)
+ (export "store_i64_with_unfolded_gep_offset" $store_i64_with_unfolded_gep_offset)
+ (export "load_i32_from_numeric_address" $load_i32_from_numeric_address)
+ (export "load_i32_from_global_address" $load_i32_from_global_address)
+ (export "store_i32_to_numeric_address" $store_i32_to_numeric_address)
+ (export "store_i32_to_global_address" $store_i32_to_global_address)
+ (export "load_i8_s_with_folded_offset" $load_i8_s_with_folded_offset)
+ (export "load_i8_s_with_folded_gep_offset" $load_i8_s_with_folded_gep_offset)
+ (export "load_i8_u_with_folded_offset" $load_i8_u_with_folded_offset)
+ (export "load_i8_u_with_folded_gep_offset" $load_i8_u_with_folded_gep_offset)
+ (export "store_i8_with_folded_offset" $store_i8_with_folded_offset)
+ (export "store_i8_with_folded_gep_offset" $store_i8_with_folded_gep_offset)
+ (export "aggregate_load_store" $aggregate_load_store)
+ (export "aggregate_return" $aggregate_return)
+ (func $load_i32_with_folded_offset (param $$0 i32) (result i32)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i32.load offset=24 align=4
+ (get_local $$0)
+ )
+ )
+ )
+ )
+ )
+ (func $load_i32_with_folded_gep_offset (param $$0 i32) (result i32)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i32.load offset=24 align=4
+ (get_local $$0)
+ )
+ )
+ )
+ )
+ )
+ (func $load_i32_with_unfolded_gep_negative_offset (param $$0 i32) (result i32)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i32.load align=4
+ (i32.add
+ (get_local $$0)
+ (i32.const -24)
+ )
+ )
+ )
+ )
+ )
+ )
+ (func $load_i32_with_unfolded_offset (param $$0 i32) (result i32)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i32.load align=4
+ (i32.add
+ (get_local $$0)
+ (i32.const 24)
+ )
+ )
+ )
+ )
+ )
+ )
+ (func $load_i32_with_unfolded_gep_offset (param $$0 i32) (result i32)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i32.load align=4
+ (i32.add
+ (get_local $$0)
+ (i32.const 24)
+ )
+ )
+ )
+ )
+ )
+ )
+ (func $load_i64_with_folded_offset (param $$0 i32) (result i64)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i64.load offset=24 align=8
+ (get_local $$0)
+ )
+ )
+ )
+ )
+ )
+ (func $load_i64_with_folded_gep_offset (param $$0 i32) (result i64)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i64.load offset=24 align=8
+ (get_local $$0)
+ )
+ )
+ )
+ )
+ )
+ (func $load_i64_with_unfolded_gep_negative_offset (param $$0 i32) (result i64)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i64.load align=8
+ (i32.add
+ (get_local $$0)
+ (i32.const -24)
+ )
+ )
+ )
+ )
+ )
+ )
+ (func $load_i64_with_unfolded_offset (param $$0 i32) (result i64)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i64.load align=8
+ (i32.add
+ (get_local $$0)
+ (i32.const 24)
+ )
+ )
+ )
+ )
+ )
+ )
+ (func $load_i64_with_unfolded_gep_offset (param $$0 i32) (result i64)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i64.load align=8
+ (i32.add
+ (get_local $$0)
+ (i32.const 24)
+ )
+ )
+ )
+ )
+ )
+ )
+ (func $store_i32_with_folded_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i32.store offset=24 align=4
+ (get_local $$0)
+ (i32.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $store_i32_with_folded_gep_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i32.store offset=24 align=4
+ (get_local $$0)
+ (i32.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $store_i32_with_unfolded_gep_negative_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i32.store align=4
+ (i32.add
+ (get_local $$0)
+ (i32.const -24)
+ )
+ (i32.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $store_i32_with_unfolded_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i32.store align=4
+ (i32.add
+ (get_local $$0)
+ (i32.const 24)
+ )
+ (i32.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $store_i32_with_unfolded_gep_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i32.store align=4
+ (i32.add
+ (get_local $$0)
+ (i32.const 24)
+ )
+ (i32.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $store_i64_with_folded_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i64.store offset=24 align=8
+ (get_local $$0)
+ (i64.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $store_i64_with_folded_gep_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i64.store offset=24 align=8
+ (get_local $$0)
+ (i64.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $store_i64_with_unfolded_gep_negative_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i64.store align=8
+ (i32.add
+ (get_local $$0)
+ (i32.const -24)
+ )
+ (i64.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $store_i64_with_unfolded_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i64.store align=8
+ (i32.add
+ (get_local $$0)
+ (i32.const 24)
+ )
+ (i64.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $store_i64_with_unfolded_gep_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i64.store align=8
+ (i32.add
+ (get_local $$0)
+ (i32.const 24)
+ )
+ (i64.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $load_i32_from_numeric_address (result i32)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i32.load offset=42 align=4
+ (i32.const 0)
+ )
+ )
+ )
+ )
+ )
+ (func $load_i32_from_global_address (result i32)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i32.load offset=4 align=4
+ (i32.const 0)
+ )
+ )
+ )
+ )
+ )
+ (func $store_i32_to_numeric_address
+ (local $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (set_local $$0
+ (i32.const 0)
+ )
+ (i32.store offset=42 align=4
+ (get_local $$0)
+ (get_local $$0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $store_i32_to_global_address
+ (local $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (set_local $$0
+ (i32.const 0)
+ )
+ (i32.store offset=4 align=4
+ (get_local $$0)
+ (get_local $$0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $load_i8_s_with_folded_offset (param $$0 i32) (result i32)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i32.load8_s offset=24 align=1
+ (get_local $$0)
+ )
+ )
+ )
+ )
+ )
+ (func $load_i8_s_with_folded_gep_offset (param $$0 i32) (result i32)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i32.load8_s offset=24 align=1
+ (get_local $$0)
+ )
+ )
+ )
+ )
+ )
+ (func $load_i8_u_with_folded_offset (param $$0 i32) (result i32)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i32.load8_u offset=24 align=1
+ (get_local $$0)
+ )
+ )
+ )
+ )
+ )
+ (func $load_i8_u_with_folded_gep_offset (param $$0 i32) (result i32)
+ (block $fake_return_waka123
+ (block
+ (br $fake_return_waka123
+ (i32.load8_u offset=24 align=1
+ (get_local $$0)
+ )
+ )
+ )
+ )
+ )
+ (func $store_i8_with_folded_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i32.store offset=24 align=8
+ (get_local $$0)
+ (i32.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $store_i8_with_folded_gep_offset (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i32.store offset=24 align=8
+ (get_local $$0)
+ (i32.const 0)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $aggregate_load_store (param $$0 i32) (param $$1 i32)
+ (local $$2 i32)
+ (local $$3 i32)
+ (local $$4 i32)
+ (block $fake_return_waka123
+ (block
+ (set_local $$2
+ (i32.load align=4
+ (get_local $$0)
+ )
+ )
+ (set_local $$3
+ (i32.load offset=4 align=4
+ (get_local $$0)
+ )
+ )
+ (set_local $$4
+ (i32.load offset=8 align=4
+ (get_local $$0)
+ )
+ )
+ (i32.store offset=12 align=4
+ (get_local $$1)
+ (i32.load offset=12 align=4
+ (get_local $$0)
+ )
+ )
+ (i32.store offset=8 align=4
+ (get_local $$1)
+ (get_local $$4)
+ )
+ (i32.store offset=4 align=4
+ (get_local $$1)
+ (get_local $$3)
+ )
+ (i32.store align=4
+ (get_local $$1)
+ (get_local $$2)
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+ (func $aggregate_return (param $$0 i32)
+ (block $fake_return_waka123
+ (block
+ (i32.store align=4
+ (get_local $$0)
+ (i32.store offset=4 align=4
+ (get_local $$0)
+ (i32.store offset=8 align=4
+ (get_local $$0)
+ (i32.store offset=12 align=4
+ (get_local $$0)
+ (i32.const 0)
+ )
+ )
+ )
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
+)
+;; METADATA: { "asmConsts": {},"staticBump": 7 }
diff --git a/test/dot_s/phi.wast b/test/llvm_autogenerated/phi.wast
index 9d61cfa77..c1f14d530 100644
--- a/test/dot_s/phi.wast
+++ b/test/llvm_autogenerated/phi.wast
@@ -48,18 +48,18 @@
)
(loop $BB1_2 $BB1_1
(block
- (set_local $$5
- (i32.add
- (get_local $$5)
- (get_local $$2)
- )
- )
(set_local $$1
(get_local $$4)
)
(set_local $$4
(get_local $$3)
)
+ (set_local $$5
+ (i32.add
+ (get_local $$5)
+ (get_local $$2)
+ )
+ )
(set_local $$3
(get_local $$1)
)
diff --git a/test/dot_s/reg-stackify.wast b/test/llvm_autogenerated/reg-stackify.wast
index 434e704b2..2dbf17a13 100644
--- a/test/dot_s/reg-stackify.wast
+++ b/test/llvm_autogenerated/reg-stackify.wast
@@ -5,6 +5,7 @@
(export "yes0" $yes0)
(export "yes1" $yes1)
(export "stack_uses" $stack_uses)
+ (export "multiple_uses" $multiple_uses)
(func $no0 (param $$0 i32) (param $$1 i32) (result i32)
(block $fake_return_waka123
(block
@@ -72,12 +73,12 @@
(local $$5 i32)
(block $fake_return_waka123
(block
- (set_local $$4
- (i32.const 1)
- )
(set_local $$5
(i32.const 2)
)
+ (set_local $$4
+ (i32.const 1)
+ )
(block $BB4_2
(br_if
(i32.ne
@@ -117,5 +118,38 @@
)
)
)
+ (func $multiple_uses (param $$0 i32) (param $$1 i32) (param $$2 i32)
+ (local $$3 i32)
+ (block $fake_return_waka123
+ (block
+ (set_local $$3
+ (i32.load align=4
+ (get_local $$2)
+ )
+ )
+ (block $BB5_3
+ (br_if
+ (i32.ge_u
+ (get_local $$3)
+ (get_local $$1)
+ )
+ $BB5_3
+ )
+ (br_if
+ (i32.lt_u
+ (get_local $$3)
+ (get_local $$0)
+ )
+ $BB5_3
+ )
+ (i32.store align=4
+ (get_local $$2)
+ (get_local $$3)
+ )
+ )
+ (br $fake_return_waka123)
+ )
+ )
+ )
)
;; METADATA: { "asmConsts": {},"staticBump": 0 }
diff --git a/test/dot_s/return-int32.wast b/test/llvm_autogenerated/return-int32.wast
index 57bf9538b..57bf9538b 100644
--- a/test/dot_s/return-int32.wast
+++ b/test/llvm_autogenerated/return-int32.wast
diff --git a/test/dot_s/return-void.wast b/test/llvm_autogenerated/return-void.wast
index 8cfa247b0..8cfa247b0 100644
--- a/test/dot_s/return-void.wast
+++ b/test/llvm_autogenerated/return-void.wast
diff --git a/test/llvm_autogenerated/returned.s b/test/llvm_autogenerated/returned.s
deleted file mode 100644
index d1ffd41b7..000000000
--- a/test/llvm_autogenerated/returned.s
+++ /dev/null
@@ -1,42 +0,0 @@
- .text
- .file "/s/llvm/llvm/test/CodeGen/WebAssembly/returned.ll"
- .globl _Z3foov
- .type _Z3foov,@function
-_Z3foov:
- .result i32
- i32.const $push0=, 1
- i32.call $push1=, _Znwm, $pop0
- i32.call $push2=, _ZN5AppleC1Ev, $pop1
- return $pop2
-func_end0:
- .size _Z3foov, func_end0-_Z3foov
-
- .globl _Z3barPvS_l
- .type _Z3barPvS_l,@function
-_Z3barPvS_l:
- .param i32, i32, i32
- .result i32
- i32.call $push0=, memcpy, $0, $1, $2
- return $pop0
-func_end1:
- .size _Z3barPvS_l, func_end1-_Z3barPvS_l
-
- .globl test_constant_arg
- .type test_constant_arg,@function
-test_constant_arg:
- i32.const $push0=, global
- i32.call $discard=, returns_arg, $pop0
- return
-func_end2:
- .size test_constant_arg, func_end2-test_constant_arg
-
- .type addr,@object
- .data
- .globl addr
- .align 2
-addr:
- .int32 global
- .size addr, 4
-
-
- .section ".note.GNU-stack","",@progbits
diff --git a/test/dot_s/select.wast b/test/llvm_autogenerated/select.wast
index bb5a4e575..bb5a4e575 100644
--- a/test/dot_s/select.wast
+++ b/test/llvm_autogenerated/select.wast
diff --git a/test/dot_s/signext-zeroext.wast b/test/llvm_autogenerated/signext-zeroext.wast
index 480223851..480223851 100644
--- a/test/dot_s/signext-zeroext.wast
+++ b/test/llvm_autogenerated/signext-zeroext.wast
diff --git a/test/dot_s/store-results.wast b/test/llvm_autogenerated/store-results.wast
index 009d2c167..d4f73baff 100644
--- a/test/dot_s/store-results.wast
+++ b/test/llvm_autogenerated/store-results.wast
@@ -64,16 +64,16 @@
)
(loop $BB2_2 $BB2_1
(block
+ (i32.store offset=4 align=4
+ (get_local $$0)
+ (get_local $$0)
+ )
(set_local $$1
(f32.add
(get_local $$1)
(f32.const 1)
)
)
- (i32.store offset=4 align=4
- (get_local $$0)
- (get_local $$0)
- )
(br_if
(f32.ne
(get_local $$1)
diff --git a/test/dot_s/store-trunc.wast b/test/llvm_autogenerated/store-trunc.wast
index 44b400534..44b400534 100644
--- a/test/dot_s/store-trunc.wast
+++ b/test/llvm_autogenerated/store-trunc.wast
diff --git a/test/dot_s/store.wast b/test/llvm_autogenerated/store.wast
index d3a89a131..d3a89a131 100644
--- a/test/dot_s/store.wast
+++ b/test/llvm_autogenerated/store.wast
diff --git a/test/dot_s/switch.wast b/test/llvm_autogenerated/switch.wast
index 7be3d417e..9404bd72a 100644
--- a/test/dot_s/switch.wast
+++ b/test/llvm_autogenerated/switch.wast
@@ -1,7 +1,7 @@
(module
(memory 0 4294967295)
- (import $foo1 "env" "foo1")
(import $foo0 "env" "foo0")
+ (import $foo1 "env" "foo1")
(import $foo2 "env" "foo2")
(import $foo3 "env" "foo3")
(import $foo4 "env" "foo4")
@@ -27,13 +27,13 @@
(block $BB0_2
(tableswitch
(get_local $$0)
- (table (case $BB0_3) (case $BB0_3) (case $BB0_3) (case $BB0_3) (case $BB0_3) (case $BB0_3) (case $BB0_3) (case $BB0_2) (case $BB0_2) (case $BB0_2) (case $BB0_2) (case $BB0_2) (case $BB0_2) (case $BB0_2) (case $BB0_2) (case $BB0_4) (case $BB0_4) (case $BB0_4) (case $BB0_4) (case $BB0_4) (case $BB0_4) (case $BB0_5) (case $BB0_6) (case $BB0_7)) (case $BB0_3)
+ (table (case $BB0_2) (case $BB0_2) (case $BB0_2) (case $BB0_2) (case $BB0_2) (case $BB0_2) (case $BB0_2) (case $BB0_3) (case $BB0_3) (case $BB0_3) (case $BB0_3) (case $BB0_3) (case $BB0_3) (case $BB0_3) (case $BB0_3) (case $BB0_4) (case $BB0_4) (case $BB0_4) (case $BB0_4) (case $BB0_4) (case $BB0_4) (case $BB0_5) (case $BB0_6) (case $BB0_7)) (case $BB0_2)
)
)
- (call_import $foo1)
+ (call_import $foo0)
(br $BB0_8)
)
- (call_import $foo0)
+ (call_import $foo1)
(br $BB0_8)
)
(call_import $foo2)
@@ -72,13 +72,13 @@
(i32.wrap/i64
(get_local $$0)
)
- (table (case $BB1_3) (case $BB1_3) (case $BB1_3) (case $BB1_3) (case $BB1_3) (case $BB1_3) (case $BB1_3) (case $BB1_2) (case $BB1_2) (case $BB1_2) (case $BB1_2) (case $BB1_2) (case $BB1_2) (case $BB1_2) (case $BB1_2) (case $BB1_4) (case $BB1_4) (case $BB1_4) (case $BB1_4) (case $BB1_4) (case $BB1_4) (case $BB1_5) (case $BB1_6) (case $BB1_7)) (case $BB1_3)
+ (table (case $BB1_2) (case $BB1_2) (case $BB1_2) (case $BB1_2) (case $BB1_2) (case $BB1_2) (case $BB1_2) (case $BB1_3) (case $BB1_3) (case $BB1_3) (case $BB1_3) (case $BB1_3) (case $BB1_3) (case $BB1_3) (case $BB1_3) (case $BB1_4) (case $BB1_4) (case $BB1_4) (case $BB1_4) (case $BB1_4) (case $BB1_4) (case $BB1_5) (case $BB1_6) (case $BB1_7)) (case $BB1_2)
)
)
- (call_import $foo1)
+ (call_import $foo0)
(br $BB1_8)
)
- (call_import $foo0)
+ (call_import $foo1)
(br $BB1_8)
)
(call_import $foo2)
diff --git a/test/dot_s/unreachable.wast b/test/llvm_autogenerated/unreachable.wast
index 1d3be1405..1d3be1405 100644
--- a/test/dot_s/unreachable.wast
+++ b/test/llvm_autogenerated/unreachable.wast
diff --git a/test/dot_s/unused-argument.wast b/test/llvm_autogenerated/unused-argument.wast
index 96c880442..96c880442 100644
--- a/test/dot_s/unused-argument.wast
+++ b/test/llvm_autogenerated/unused-argument.wast
diff --git a/test/dot_s/userstack.wast b/test/llvm_autogenerated/userstack.wast
index c2083ce2a..c2083ce2a 100644
--- a/test/dot_s/userstack.wast
+++ b/test/llvm_autogenerated/userstack.wast
diff --git a/test/dot_s/varargs.wast b/test/llvm_autogenerated/varargs.wast
index 7f5e0cb7e..7f5e0cb7e 100644
--- a/test/dot_s/varargs.wast
+++ b/test/llvm_autogenerated/varargs.wast
diff --git a/test/llvm_autogenerated/vtable.s b/test/llvm_autogenerated/vtable.s
deleted file mode 100644
index cc56a884b..000000000
--- a/test/llvm_autogenerated/vtable.s
+++ /dev/null
@@ -1,206 +0,0 @@
- .text
- .file "/s/llvm/llvm/test/CodeGen/WebAssembly/vtable.ll"
- .globl _ZN1A3fooEv
- .type _ZN1A3fooEv,@function
-_ZN1A3fooEv:
- .param i32
- i32.const $push0=, 0
- i32.const $push1=, 2
- i32.store $discard=, g($pop0), $pop1
- return
-func_end0:
- .size _ZN1A3fooEv, func_end0-_ZN1A3fooEv
-
- .globl _ZN1B3fooEv
- .type _ZN1B3fooEv,@function
-_ZN1B3fooEv:
- .param i32
- i32.const $push0=, 0
- i32.const $push1=, 4
- i32.store $discard=, g($pop0), $pop1
- return
-func_end1:
- .size _ZN1B3fooEv, func_end1-_ZN1B3fooEv
-
- .globl _ZN1C3fooEv
- .type _ZN1C3fooEv,@function
-_ZN1C3fooEv:
- .param i32
- i32.const $push0=, 0
- i32.const $push1=, 6
- i32.store $discard=, g($pop0), $pop1
- return
-func_end2:
- .size _ZN1C3fooEv, func_end2-_ZN1C3fooEv
-
- .globl _ZN1D3fooEv
- .type _ZN1D3fooEv,@function
-_ZN1D3fooEv:
- .param i32
- i32.const $push0=, 0
- i32.const $push1=, 8
- i32.store $discard=, g($pop0), $pop1
- return
-func_end3:
- .size _ZN1D3fooEv, func_end3-_ZN1D3fooEv
-
- .weak _ZN1AD0Ev
- .type _ZN1AD0Ev,@function
-_ZN1AD0Ev:
- .param i32
- call _ZdlPv, $0
- return
-func_end4:
- .size _ZN1AD0Ev, func_end4-_ZN1AD0Ev
-
- .weak _ZN1BD0Ev
- .type _ZN1BD0Ev,@function
-_ZN1BD0Ev:
- .param i32
- call _ZdlPv, $0
- return
-func_end5:
- .size _ZN1BD0Ev, func_end5-_ZN1BD0Ev
-
- .weak _ZN1CD0Ev
- .type _ZN1CD0Ev,@function
-_ZN1CD0Ev:
- .param i32
- call _ZdlPv, $0
- return
-func_end6:
- .size _ZN1CD0Ev, func_end6-_ZN1CD0Ev
-
- .weak _ZN1AD2Ev
- .type _ZN1AD2Ev,@function
-_ZN1AD2Ev:
- .param i32
- .result i32
- return $0
-func_end7:
- .size _ZN1AD2Ev, func_end7-_ZN1AD2Ev
-
- .weak _ZN1DD0Ev
- .type _ZN1DD0Ev,@function
-_ZN1DD0Ev:
- .param i32
- call _ZdlPv, $0
- return
-func_end8:
- .size _ZN1DD0Ev, func_end8-_ZN1DD0Ev
-
- .type _ZTS1A,@object
- .section .rodata,"a",@progbits
- .globl _ZTS1A
-_ZTS1A:
- .asciz "1A"
- .size _ZTS1A, 3
-
- .type _ZTS1B,@object
- .globl _ZTS1B
-_ZTS1B:
- .asciz "1B"
- .size _ZTS1B, 3
-
- .type _ZTS1C,@object
- .globl _ZTS1C
-_ZTS1C:
- .asciz "1C"
- .size _ZTS1C, 3
-
- .type _ZTS1D,@object
- .globl _ZTS1D
-_ZTS1D:
- .asciz "1D"
- .size _ZTS1D, 3
-
- .type _ZTV1A,@object
- .section .data.rel.ro,"aw",@progbits
- .globl _ZTV1A
- .align 2
-_ZTV1A:
- .int32 0
- .int32 _ZTI1A
- .int32 _ZN1AD2Ev
- .int32 _ZN1AD0Ev
- .int32 _ZN1A3fooEv
- .size _ZTV1A, 20
-
- .type _ZTV1B,@object
- .globl _ZTV1B
- .align 2
-_ZTV1B:
- .int32 0
- .int32 _ZTI1B
- .int32 _ZN1AD2Ev
- .int32 _ZN1BD0Ev
- .int32 _ZN1B3fooEv
- .size _ZTV1B, 20
-
- .type _ZTV1C,@object
- .globl _ZTV1C
- .align 2
-_ZTV1C:
- .int32 0
- .int32 _ZTI1C
- .int32 _ZN1AD2Ev
- .int32 _ZN1CD0Ev
- .int32 _ZN1C3fooEv
- .size _ZTV1C, 20
-
- .type _ZTV1D,@object
- .globl _ZTV1D
- .align 2
-_ZTV1D:
- .int32 0
- .int32 _ZTI1D
- .int32 _ZN1AD2Ev
- .int32 _ZN1DD0Ev
- .int32 _ZN1D3fooEv
- .size _ZTV1D, 20
-
- .type _ZTI1A,@object
- .globl _ZTI1A
- .align 3
-_ZTI1A:
- .int32 _ZTVN10__cxxabiv117__class_type_infoE+8
- .int32 _ZTS1A
- .size _ZTI1A, 8
-
- .type _ZTI1B,@object
- .globl _ZTI1B
- .align 3
-_ZTI1B:
- .int32 _ZTVN10__cxxabiv120__si_class_type_infoE+8
- .int32 _ZTS1B
- .int32 _ZTI1A
- .size _ZTI1B, 12
-
- .type _ZTI1C,@object
- .globl _ZTI1C
- .align 3
-_ZTI1C:
- .int32 _ZTVN10__cxxabiv120__si_class_type_infoE+8
- .int32 _ZTS1C
- .int32 _ZTI1A
- .size _ZTI1C, 12
-
- .type _ZTI1D,@object
- .globl _ZTI1D
- .align 3
-_ZTI1D:
- .int32 _ZTVN10__cxxabiv120__si_class_type_infoE+8
- .int32 _ZTS1D
- .int32 _ZTI1B
- .size _ZTI1D, 12
-
- .type g,@object
- .bss
- .globl g
- .align 2
-g:
- .int32 0
- .size g, 4
-
-
- .section ".note.GNU-stack","",@progbits