@@ -1711,29 +1711,25 @@ defm RELAXED_DOT :
17111711 "i16x8.relaxed_dot_i8x16_i7x16_s\t$dst, $lhs, $rhs",
17121712 "i16x8.relaxed_dot_i8x16_i7x16_s", 0x112>;
17131713
1714- class RelaxedDotPat_ShuffleExtMul<ValueType FromVecTy, ValueType ToVecTy> :
1715- Pat<
1716- (ToVecTy (add
1717- (wasm_shuffle
1718- (ToVecTy (extmul_low_s FromVecTy:$lhs, FromVecTy:$rhs)),
1719- (ToVecTy (extmul_high_s FromVecTy:$lhs, FromVecTy:$rhs)),
1720- (i32 0), (i32 1), (i32 4), (i32 5),
1721- (i32 8), (i32 9), (i32 12), (i32 13),
1722- (i32 16), (i32 17), (i32 20), (i32 21),
1723- (i32 24), (i32 25), (i32 28), (i32 29)),
1724- (wasm_shuffle
1725- (ToVecTy (extmul_low_s FromVecTy:$lhs, FromVecTy:$rhs)),
1726- (ToVecTy (extmul_high_s FromVecTy:$lhs, FromVecTy:$rhs)),
1727- (i32 2), (i32 3), (i32 6), (i32 7),
1728- (i32 10), (i32 11), (i32 14), (i32 15),
1729- (i32 18), (i32 19), (i32 22), (i32 23),
1730- (i32 26), (i32 27), (i32 30), (i32 31)))
1731- ),
1732- (ToVecTy (RELAXED_DOT FromVecTy:$lhs, FromVecTy:$rhs))
1733- >;
1734-
1735- def : RelaxedDotPat_ShuffleExtMul<v16i8, v8i16>;
1736-
1714+ def : Pat<
1715+ (v8i16 (add
1716+ (wasm_shuffle
1717+ (v8i16 (extmul_low_s v16i8:$lhs, v16i8:$rhs)),
1718+ (v8i16 (extmul_high_s v16i8:$lhs, v16i8:$rhs)),
1719+ (i32 0), (i32 1), (i32 4), (i32 5),
1720+ (i32 8), (i32 9), (i32 12), (i32 13),
1721+ (i32 16), (i32 17), (i32 20), (i32 21),
1722+ (i32 24), (i32 25), (i32 28), (i32 29)),
1723+ (wasm_shuffle
1724+ (v8i16 (extmul_low_s v16i8:$lhs, v16i8:$rhs)),
1725+ (v8i16 (extmul_high_s v16i8:$lhs, v16i8:$rhs)),
1726+ (i32 2), (i32 3), (i32 6), (i32 7),
1727+ (i32 10), (i32 11), (i32 14), (i32 15),
1728+ (i32 18), (i32 19), (i32 22), (i32 23),
1729+ (i32 26), (i32 27), (i32 30), (i32 31)))
1730+ ),
1731+ (v8i16 (RELAXED_DOT v16i8:$lhs, v16i8:$rhs))
1732+ >;
17371733
17381734defm RELAXED_DOT_ADD :
17391735 RELAXED_I<(outs V128:$dst), (ins V128:$lhs, V128:$rhs, V128:$acc),
0 commit comments