aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--riscv/insns/vsra_vi.h4
-rw-r--r--riscv/insns/vssra_vi.h6
-rw-r--r--riscv/insns/vssrl_vi.h2
3 files changed, 6 insertions, 6 deletions
diff --git a/riscv/insns/vsra_vi.h b/riscv/insns/vsra_vi.h
index 5c58927..806fe39 100644
--- a/riscv/insns/vsra_vi.h
+++ b/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));
})
diff --git a/riscv/insns/vssra_vi.h b/riscv/insns/vssra_vi.h
index cbdf47a..2f8ba18 100644
--- a/riscv/insns/vssra_vi.h
+++ b/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);
diff --git a/riscv/insns/vssrl_vi.h b/riscv/insns/vssrl_vi.h
index 74fa37c..a2de49e 100644
--- a/riscv/insns/vssrl_vi.h
+++ b/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();