aboutsummaryrefslogtreecommitdiff
path: root/riscv/insns/kmmwt2.h
blob: 73d3dc8c1a0d078770b49876bce3cfc96ca73011 (plain)
1
2
3
4
5
6
7
8
9
10
require_vector_vs;
P_LOOP(32, {
  if((INT32_MIN != ps1) | (INT16_MIN != P_SH(ps2, 1))) {
    int64_t mres = ((int64_t) ps1 * P_SH(ps2, 1)) << 1;
    pd = mres >> 16;
  } else {
    pd = INT32_MAX;
    P_SET_OV(1);
  }
})