Yury Delendik
6f37204f82
Upgrade gimli to 0.21 ( #1819 )
...
* Use gimli 0.21
* rm CFI w Expression
* Don't write .debug_frame twice
2020-06-04 14:34:05 -05:00
Andrew Brown
97c7fbbeb6
Update Wasm spec testsuite
2020-06-04 12:19:41 -07:00
Pat Hickey
3de418630a
Merge pull request #1796 from bytecodealliance/pch/wiggle_tracing
...
wiggle: switch logging to use `tracing` crate
2020-06-04 09:44:23 -07:00
Alex Crichton
5a8afd4540
Pin nightlies to fix lightbeam compilation ( #1818 )
...
Looks like lightbeam's nightly dependencies don't compile on the most
recent nightly. For now let's pin nightlies to get CI green.
2020-06-04 11:32:49 -05:00
Leonardo Yvens
cd4a441d88
impl WasmTy for u32 and u64 ( #1808 )
...
* impl WasmTy for u32 and u64
* docs: Update Rust to wasm type table
2020-06-04 09:00:49 -05:00
Pat Hickey
54694b8d0e
Merge pull request #1810 from Kong/fix/test-programs-tagged-unions
...
fix(tagged-union): changed test programs to use new tagged union
2020-06-03 17:28:48 -07:00
Pat Hickey
2e952b72d0
Merge pull request #1816 from bytecodealliance/pch/faerie_deprecation
...
Add deprecation notice to cranelift-faerie README and FaerieBuilder.
2020-06-03 17:28:04 -07:00
Andrew Brown
5db384cd76
Rename opcode: PMULLQ to VPMULLQ
2020-06-03 16:27:57 -07:00
Andrew Brown
ce78ee3b32
Enable SIMD spec test for i64x2 arithmetic
2020-06-03 16:27:57 -07:00
Andrew Brown
aa44e8b2e3
Translate Wasm's I64x2Mul to Cranelift's imul.i64x2
2020-06-03 16:27:57 -07:00
Andrew Brown
1ea09088be
Add x86 legalization for imul.i64x2 for non-AVX CPUs
...
The `convert_i64x2_imul` custom legalization checks the ISA flags for AVX512DQ or AVX512VL support and legalizes `imul.i64x2` to an `x86_pmullq` in this case; if not, it uses a lengthy SSE2-compatible instruction sequence.
2020-06-03 16:27:57 -07:00
Andrew Brown
b3a6985cd5
Re-organize transform groups for x86 legalization
2020-06-03 16:27:57 -07:00
Andrew Brown
5a32500518
Remove non-existent x86 encoding for sshr_imm.i64x2
...
This instruction does not exist in the SSE2 feature set; it can be added later with an VEX/EVEX encoding.
2020-06-03 16:27:57 -07:00
Andrew Brown
df171f01b5
Add x86_pmuludq
...
This instruction multiplies the lower 32 bits of two 64x2 unsigned integers into an i64x2; this is necessary for lowering Wasm's i64x2.mul.
2020-06-03 16:27:57 -07:00
Andrew Brown
40f31375a5
Add TargetIsa::as_any for downcasting to specific ISA implementations
...
This is necessary when we would like to check specific ISA flags, e.g.
2020-06-03 16:27:57 -07:00
Andrew Brown
9ba9fd0f64
Add x86-specific instruction for i64x2 multiplication
...
Without this special instruction, legalizing to the AVX512 instruction AND the SSE instruction sequence is impossible. This extra instruction would be rendered unnecessary by the x64 backend.
2020-06-03 16:27:57 -07:00
Pat Hickey
fe92a8da48
Add deprecation notice to cranelift-faerie README and FaerieBuilder.
2020-06-03 16:20:46 -07:00
Emiliano Lesende
ef4ff71dc5
fix(tagged-union): updated Cargo.lock
2020-06-03 20:00:59 -03:00
Pat Hickey
0fb374947a
code review comments
2020-06-03 15:35:53 -07:00
Emiliano Lesende
59ee430431
fix(tagged-union): rebase and squash
...
fix(tagged-union): changed test programs to use new tagged union
generated code
fix(tagged-union): changed test programs to use new tagged union generated code
fix(tagged-union): removed local dependency and changed to point to 0.9.1 version of wasi
fix(tagged-union): added newline to gitignore, changed wasi version to 0.10.0
fix(tagged-union): removed gitignore as Cargo.lock is intentional
2020-06-03 19:07:02 -03:00
Hiroki Noda
8701645493
Fix comment for running example fib-debug ( #1814 )
2020-06-03 16:17:48 -05:00
Chris Fallin
5078e4eba2
Merge pull request #1774 from cfallin/aarch64-multivalue
...
Multi-value return support on aarch64/Wasmtime.
2020-06-03 14:14:38 -07:00
Chris Fallin
fe97659813
Address review comments.
2020-06-03 13:31:34 -07:00
Chris Fallin
615362068f
Multi-value return support.
2020-06-03 13:31:34 -07:00
Chris Fallin
34eb170232
Merge pull request #1811 from cfallin/fix-warning
...
Fix build warnings (errors on CI) due to mmap flag rename and deprecation.
2020-06-03 13:26:36 -07:00
Yury Delendik
1f86bcfb27
freeze gimli
2020-06-03 12:47:01 -07:00
Pat Hickey
6910c1e03d
use tracing 0.1.15 release
2020-06-03 10:54:52 -07:00
Pat Hickey
220733b974
wiggle-generate: add an empty constructor to ErrorTransform
...
some library users (me, in lucet-wasi) may not care about ErrorTransform YET
2020-06-03 10:54:34 -07:00
Pat Hickey
dcb774a35e
temporarily use tracing from git
2020-06-03 10:54:34 -07:00
Pat Hickey
1b95b24686
show env_logger working in wiggle tracing example
2020-06-03 10:54:17 -07:00
Pat Hickey
33a94ca7d5
just one cargo feature for tracing/log
2020-06-03 10:54:17 -07:00
Pat Hickey
820b283cf8
can't put tracing behind a feature without an extra crate :(
2020-06-03 10:54:17 -07:00
Pat Hickey
02c0c68ed2
replace all uses of log with tracing
2020-06-03 10:53:55 -07:00
Pat Hickey
f89fc0ac57
wiggle: can swap in tracing for args
2020-06-03 10:53:32 -07:00
Pat Hickey
994104d615
wiggle: add config options for logging
2020-06-03 10:53:32 -07:00
Chris Fallin
b8e31d7c8e
Fix build warnings (errors on CI) due to mmap flag rename and deprecation.
2020-06-03 09:48:22 -07:00
Dan Gohman
a76639c6fb
Wasmtime 0.17.0 and Cranelift 0.64.0. ( #1805 )
2020-06-02 18:51:59 -07:00
Yury Delendik
15c68f2cc1
Disconnects Store state fields from Compiler ( #1761 )
...
* Moves CodeMemory, VMInterrupts and SignatureRegistry from Compiler
* CompiledModule holds CodeMemory and GdbJitImageRegistration
* Store keeps track of its JIT code
* Makes "jit_int.rs" stuff Send+Sync
* Adds the threads example.
2020-06-02 13:44:39 -05:00
Dan Gohman
b41330393d
Add more notes to RELEASES.md. ( #1799 )
2020-06-02 10:53:07 -07:00
Nick Fitzgerald
2a75f6de21
Merge pull request #1781 from fitzgen/externref
...
Initial, partial support for `externref`
2020-06-02 09:47:49 -07:00
Pat Hickey
547ce3d68b
Merge pull request #1790 from bytecodealliance/pch/wiggle_error_transforms
...
wiggle: allow user-configurable error transformations
2020-06-02 09:38:38 -07:00
Chris Fallin
9fec933056
Merge pull request #1801 from jgouly/cmp-rebase
...
arm64: add support for I8X16 ICmp
2020-06-02 09:35:41 -07:00
Joey Gouly
90a421193f
arm64: add support for I8X16 ICmp
...
Copyright (c) 2020, Arm Limited.
2020-06-02 16:58:09 +01:00
Benjamin Bouvier
67c7a3ed19
mach backend: reduce the size of the Inst enum down to 32 bytes;
2020-06-02 16:29:05 +02:00
Benjamin Bouvier
e227608510
mach backend: use vectors instead of sets to remember set of uses/defs for calls;
...
This avoids the set uniqueness (hashing) test, reduces memory
churn when re-mapping virtual register onto real registers, and is
generally more memory-efficient.
2020-06-02 16:29:05 +02:00
Benjamin Bouvier
cfa0527794
mach backend: have mem_finalize return a SmallVec;
...
This avoids a spurious reallocation of the SmallVec containing the
load_constants result to a Vec, which appeared in dhat profiles.
2020-06-02 16:29:05 +02:00
teapotd
1acbad089a
[bugpoint] Resolve aliases after reduction
2020-06-01 17:13:05 -07:00
teapotd
b3763223ab
[bugpoint] Convert more types to constants
2020-06-01 17:13:05 -07:00
teapotd
e0d7f1a91b
[bugpoint] Try to move instructions to the entry block
2020-06-01 17:13:05 -07:00
Nick Fitzgerald
58b08b9d3a
Move HostRef<T> into the C API crate
...
It isn't used by anything except for the C API and all of our embedder-exposed
APIs are already internally `Rc`-based, so it doesn't make sense to use with
them.
2020-06-01 15:09:51 -07:00