Browse Source

Merge pull request #1987 from riscv-software-src/fix-vssra

Fix regression in vssra.vi instruction
pull/1989/head
Andrew Waterman 1 year ago
committed by GitHub
parent
commit
75e97c6030
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 4
      riscv/insns/vsra_vi.h
  2. 6
      riscv/insns/vssra_vi.h
  3. 2
      riscv/insns/vssrl_vi.h

4
riscv/insns/vsra_vi.h

@ -1,5 +1,5 @@
// vsra.vi vd, vs2, zimm5
VI_VI_LOOP
VI_VI_ULOOP
({
vd = vs2 >> (simm5 & (sew - 1) & 0x1f);
vd = vs2 >> (zimm5 & (sew - 1));
})

6
riscv/insns/vssra_vi.h

@ -1,8 +1,8 @@
// vssra.vi vd, vs2, simm5
VI_VI_LOOP
// vssra.vi vd, vs2, zimm5
VI_VI_ULOOP
({
VRM xrm = P.VU.get_vround_mode();
int sh = simm5 & (sew - 1);
int sh = zimm5 & (sew - 1);
int128_t val = vs2;
INT_ROUNDING(val, xrm, sh);

2
riscv/insns/vssrl_vi.h

@ -1,4 +1,4 @@
// vssra.vi vd, vs2, simm5
// vssra.vi vd, vs2, zimm5
VI_VI_ULOOP
({
VRM xrm = P.VU.get_vround_mode();

Loading…
Cancel
Save