Syrus Akbary
d59c5531fd
Update install.sh
2019-07-11 16:23:57 -07:00
Syrus Akbary
0583da0ae2
Use WASMER_DIR if present when INSTALL_DIRECTORY is not present
...
Fixed #549
2019-07-11 16:22:02 -07:00
bors[bot]
9e974c7ce3
Merge #548
...
548: Update to nix 0.14 r=syrusakbary a=repi
Instead of using a mix of nix 0.12 & 0.13 crates.
Co-authored-by: Johan Andersson <repi@repi.se>
2019-07-11 21:58:55 +00:00
Nick Lewycky
7045030532
Try a new list of optimization passes.
...
A few notes:
a) the inliner doesn't help because all the calls are indirect and not even opt -O2 can figure out which functions they're actually calling.
b) aggressive instruction combining is not a super-set of the instruction combiner. Instcombine is made up of a large number (probably 10,000s) of patterns, and some particularly slow ones were taken out and moved to the aggressive instruction combiner. Aggressive instcombine *only* runs that handful of optimizations, which fired zero times on our example wasm files.
c) NewGVN is not ready for production, it has asserts that fire when building sqlite or cowsay. This is why sqlite didn't build with the llvm backend.
d) Scalar-replacement-of-aggregates (sroa) is a strict superset of promote-memory-to-registers (mem2reg), and you probably want sroa because it's usually faster. It also fires 10,000s more times than mem2reg on lua.wasm.
e) Aggressive-dead-code-elimination was only deleting as much regular dead-code-elimination, but is slower because it depends on a postdominator tree (PDT) analysis that. Other passes don't need PDT so we'll have to build it for just this one pass (as opposed to regular dominator-tree which is reused by many passes). I've replaced this with bit-tracking dead-code-elimination which deletes more code than dce/adce.
2019-07-11 14:48:07 -07:00
losfair
c186e0244e
Fix compile error on imul
.
2019-07-11 20:26:20 +08:00
Johan Andersson
b41040cc59
Update to nix 0.14.
...
Instead of using a mix of nix 0.12 & 0.13
2019-07-11 12:28:56 +02:00
bors[bot]
0c4a8f77d2
Merge #543 #544
...
543: update version numbers to 0.5.5 r=MarkMcCaskey a=MarkMcCaskey
544: Use bitcast instead of alloca+load+ptrcast+store sequence. r=MarkMcCaskey a=nlewycky
Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Mark McCaskey <markmccaskey@users.noreply.github.com>
Co-authored-by: Nick Lewycky <nick@wasmer.io>
Co-authored-by: nlewycky <nick@wasmer.io>
2019-07-11 00:51:31 +00:00
Mark McCaskey
80a8262b2f
revert appveyor change
2019-07-10 17:30:24 -07:00
Mark McCaskey
019de38fe8
update lock file
2019-07-10 17:19:20 -07:00
nlewycky
3795b48401
Merge branch 'master' into llvm-cleanup
2019-07-10 16:58:27 -07:00
Mark McCaskey
7789d1b096
Merge branch 'master' into release-0.5.5
2019-07-10 16:35:00 -07:00
Mark McCaskey
e084cd9e04
Merge pull request #546 from wasmerio/fix/publishing-for-clif-backend
...
use published forks of clif so we can publish again
2019-07-10 16:33:55 -07:00
Nick Lewycky
7f00dc3cdb
Reformat.
2019-07-10 15:33:32 -07:00
Nick Lewycky
8faff26c31
Give float_bits bitcast instruction a name.
2019-07-10 15:31:18 -07:00
Mark McCaskey
50302d5d4e
use published forks of clif so we can publish again
2019-07-10 15:10:00 -07:00
Syrus
e980931329
Added simd spectest file
2019-07-10 14:43:54 -07:00
Syrus
a14d2b27b4
Added simd tests for llvm
2019-07-10 14:41:15 -07:00
Nick Lewycky
702125eef2
Fill in changelog entry.
2019-07-10 14:31:58 -07:00
Nick Lewycky
e4123433a1
Reformat.
2019-07-10 14:28:07 -07:00
Nick Lewycky
53907b0ab2
Update inkwell to our own copy until upstream supports LLVM 8.
...
LLVM 8 support from https://github.com/lumen/inkwell/tree/llvm8 .
2019-07-10 14:23:47 -07:00
Nick Lewycky
1ac2416c89
Add changelog entry.
2019-07-10 13:54:36 -07:00
Nick Lewycky
f4af4e387d
Stub out support for V128 in the C API for now.
2019-07-10 13:54:36 -07:00
Nick Lewycky
bb30434392
This .into_iter() call is equivalent to .iter() and will not move the array.
2019-07-10 13:54:36 -07:00
Nick Lewycky
fdc13563b8
Initial implementation of SIMD in the LLVM backend.
2019-07-10 13:54:32 -07:00
Nick Lewycky
3ba8100e98
Add V128 stubs to allow singlepass backend to build again.
2019-07-10 13:48:12 -07:00
Nick Lewycky
77afcea9dc
Add V128 stubs to allow LLVM backend to build again.
2019-07-10 13:48:12 -07:00
Nick Lewycky
df5c12cbe1
Add V128 to wasmer runtime. Unimplemented in clif-backend. Other backends don't build.
2019-07-10 13:48:12 -07:00
Nick Lewycky
0a1bdd449e
Update to @llvm.minimum/@llvm.maximum which requires LLVM 8.
...
The @llvm.minnum/@llvm.maxnum intrinsics don't produce correct (for wasm) outputs in all cases.
2019-07-10 13:48:12 -07:00
Nick Lewycky
ea83924547
Update to LLVM 8.0.
2019-07-10 13:48:12 -07:00
Nick Lewycky
51556e74da
Turn on parsing of SIMD in .wat files.
2019-07-10 13:48:12 -07:00
Nick Lewycky
b8d2aee80f
Update wabt to 0.8 release.
2019-07-10 13:48:12 -07:00
Nick Lewycky
9579b07a54
Enable SIMD support in wasmparser.
2019-07-10 13:48:12 -07:00
Nick Lewycky
acbface4be
Factor out creating wasmparser::ValidatingParserConfig to its own function.
2019-07-10 13:48:08 -07:00
nlewycky
d1f3fb2ec2
Merge branch 'master' into llvm-cleanup
2019-07-10 13:32:17 -07:00
Mark McCaskey
b2db9238af
Merge pull request #545 from wasmerio/fix/ci-on-master-oops
...
rm clif submodule; fix master
2019-07-10 13:23:35 -07:00
Mark McCaskey
ad3d4a4679
rm clif submodule; fix master
2019-07-10 10:38:38 -07:00
Nick Lewycky
1e86e32d40
Use bitcast instead of alloca+load+ptrcast+store sequence.
2019-07-10 10:24:14 -07:00
Mark McCaskey
2ef7448e62
remove colons from feature names
2019-07-09 17:57:31 -07:00
Mark McCaskey
4752492974
update version numbers to 0.5.5
2019-07-09 17:43:04 -07:00
bors[bot]
8901f3fb66
Merge #541
...
541: fix abi crates depending on compilers r=MarkMcCaskey a=MarkMcCaskey
Here's the new dep graph: (red is optional)
![wasmer_depgraph](https://user-images.githubusercontent.com/5770194/60916081-6191d800-a242-11e9-9a0d-438079dea701.png )
Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Mark McCaskey <markmccaskey@users.noreply.github.com>
2019-07-09 23:35:02 +00:00
Mark McCaskey
74ce33919f
Merge branch 'master' into fix/abi-crate-deps
2019-07-09 15:31:45 -07:00
Mark McCaskey
3dbb4c27ba
update CI for new submodule
2019-07-09 15:28:50 -07:00
Syrus Akbary
40e67e37aa
Merge pull request #537 from wasmerio/feature/prehashed-keys
...
Add hidden flag `--cache-key` to use prehashed modules for speed
2019-07-09 15:15:59 -07:00
Mark McCaskey
4612b2bf9a
add cranelift as submodule to clif-backend
2019-07-09 14:30:31 -07:00
Mark McCaskey
6d494a297f
fix emscripten tests
2019-07-09 13:41:40 -07:00
Mark McCaskey
5993c0bcae
add wasi and emscripten unit tests to CI
2019-07-09 13:21:34 -07:00
Mark McCaskey
e0c285c652
fix emscripten dependencies by making separate test crate
2019-07-09 12:07:05 -07:00
Mark McCaskey
5bf491857b
fix abi crates depending on compilers
2019-07-09 11:58:03 -07:00
Mark McCaskey
30add2481e
do backend caching with a directory
2019-07-08 17:05:54 -07:00
Mark McCaskey
4407a7cf93
Add hidden flag --cache-key
to use prehashed modules for speed
2019-07-08 15:46:28 -07:00