This patch implements, for aarch64, the following wasm SIMD extensions i32x4.dot_i16x8_s instruction https://github.com/WebAssembly/simd/pull/127 It also updates dependencies as follows, in order that the new instruction can be parsed, decoded, etc: wat to 1.0.27 wast to 26.0.1 wasmparser to 0.65.0 wasmprinter to 0.2.12 The changes are straightforward: * new CLIF instruction `widening_pairwise_dot_product_s` * translation from wasm into `widening_pairwise_dot_product_s` * new AArch64 instructions `smull`, `smull2` (part of the `VecRRR` group) * translation from `widening_pairwise_dot_product_s` to `smull ; smull2 ; addv` There is no testcase in this commit, because that is a separate repo. The implementation has been tested, nevertheless.
23 lines
901 B
TOML
23 lines
901 B
TOML
[package]
|
|
name = "peepmatic"
|
|
version = "0.67.0"
|
|
authors = ["Nick Fitzgerald <fitzgen@gmail.com>"]
|
|
edition = "2018"
|
|
license = "Apache-2.0 WITH LLVM-exception"
|
|
description = "DSL and compiler for generating peephole optimizers"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[dependencies]
|
|
anyhow = "1.0.27"
|
|
peepmatic-automata = { version = "0.67.0", path = "crates/automata", features = ["dot"] }
|
|
peepmatic-macro = { version = "0.67.0", path = "crates/macro" }
|
|
peepmatic-runtime = { version = "0.67.0", path = "crates/runtime", features = ["construct"] }
|
|
peepmatic-traits = { version = "0.67.0", path = "crates/traits" }
|
|
serde = { version = "1.0.105", features = ["derive"] }
|
|
wast = "26.0.1"
|
|
z3 = { version = "0.7.1", features = ["static-link-z3"] }
|
|
|
|
[dev-dependencies]
|
|
peepmatic-test-operator = { version = "0.67.0", path = "crates/test-operator" }
|