diff options
author | Thomas Lively <7121787+tlively@users.noreply.github.com> | 2020-08-03 13:48:10 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-03 13:48:10 -0700 |
commit | daa442b40f92ee5117c9c7c391171c3304abc67e (patch) | |
tree | d4533e9f8d3564e20bc6b1c006e74f4b32d3dcca /src/tools | |
parent | 79f2fe4eb4197b3f2a1f8ad0c3a34bf9c28149a1 (diff) | |
download | binaryen-daa442b40f92ee5117c9c7c391171c3304abc67e.tar.gz binaryen-daa442b40f92ee5117c9c7c391171c3304abc67e.tar.bz2 binaryen-daa442b40f92ee5117c9c7c391171c3304abc67e.zip |
Implement prototype v128.load{32,64}_zero instructions (#3011)
Specified in https://github.com/WebAssembly/simd/pull/237. Since these
are just prototypes necessary for benchmarking, this PR does not add
support for these instructions to the fuzzer or the C or JS APIs. This
PR also renumbers the QFMA instructions that previously used the
opcodes for these new instructions. The renumbering matches the
renumbering in V8 and LLVM.
Diffstat (limited to 'src/tools')
-rw-r--r-- | src/tools/fuzzing.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/tools/fuzzing.h b/src/tools/fuzzing.h index 51e9300af..95ccf2613 100644 --- a/src/tools/fuzzing.h +++ b/src/tools/fuzzing.h @@ -2544,6 +2544,7 @@ private: } Expression* makeSIMDLoad() { + // TODO: add Load{32,64}Zero if merged to proposal SIMDLoadOp op = pick(LoadSplatVec8x16, LoadSplatVec16x8, LoadSplatVec32x4, @@ -2575,6 +2576,9 @@ private: case LoadExtUVec32x2ToVecI64x2: align = pick(1, 2, 4, 8); break; + case Load32Zero: + case Load64Zero: + WASM_UNREACHABLE("Unexpected SIMD loads"); } Expression* ptr = makePointer(); return builder.makeSIMDLoad(op, offset, align, ptr); |