aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--riscv/insns/divuw.h2
-rw-r--r--riscv/insns/divw.h2
-rw-r--r--riscv/insns/remuw.h2
-rw-r--r--riscv/insns/remw.h2
4 files changed, 4 insertions, 4 deletions
diff --git a/riscv/insns/divuw.h b/riscv/insns/divuw.h
index 0ceb040..2cf0511 100644
--- a/riscv/insns/divuw.h
+++ b/riscv/insns/divuw.h
@@ -1,5 +1,5 @@
require_xpr64;
-if(RS2 == 0)
+if(zext32(RS2) == 0)
RD = UINT64_MAX;
else
RD = sext32(zext32(RS1) / zext32(RS2));
diff --git a/riscv/insns/divw.h b/riscv/insns/divw.h
index 51c3d80..84f42a9 100644
--- a/riscv/insns/divw.h
+++ b/riscv/insns/divw.h
@@ -1,5 +1,5 @@
require_xpr64;
-if(RS2 == 0)
+if(int32_t(RS2) == 0)
RD = UINT64_MAX;
else if(int32_t(RS1) == INT32_MIN && int32_t(RS2) == -1)
RD = RS1;
diff --git a/riscv/insns/remuw.h b/riscv/insns/remuw.h
index 8234af3..1cc015d 100644
--- a/riscv/insns/remuw.h
+++ b/riscv/insns/remuw.h
@@ -1,5 +1,5 @@
require_xpr64;
-if(RS2 == 0)
+if(zext_xprlen(RS2) == 0)
RD = RS1;
else
RD = sext32(zext_xprlen(RS1) % zext_xprlen(RS2));
diff --git a/riscv/insns/remw.h b/riscv/insns/remw.h
index 93c3858..1093533 100644
--- a/riscv/insns/remw.h
+++ b/riscv/insns/remw.h
@@ -1,5 +1,5 @@
require_xpr64;
-if(RS2 == 0)
+if(int32_t(RS2) == 0)
RD = RS1;
else if(int32_t(RS1) == INT32_MIN && int32_t(RS2) == -1)
RD = 0;