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.
20 lines
588 B
TOML
20 lines
588 B
TOML
[package]
|
|
name = "peepmatic-souper"
|
|
version = "0.67.0"
|
|
authors = ["Nick Fitzgerald <fitzgen@gmail.com>"]
|
|
edition = "2018"
|
|
license = "Apache-2.0 WITH LLVM-exception"
|
|
description = "Converting Souper optimizations into Peepmatic DSL"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[dependencies]
|
|
anyhow = "1"
|
|
souper-ir = { version = "1", features = ["parse"] }
|
|
log = "0.4.8"
|
|
|
|
[dev-dependencies]
|
|
peepmatic = { path = "../..", version = "0.67.0" }
|
|
peepmatic-test-operator = { version = "0.67.0", path = "../test-operator" }
|
|
wast = "26.0.1"
|