[xcc] minor performance tweaks
[riscv-isa-sim.git] / riscv / insns / remw.h
index eb23ef1c4ac90a932f2a1d7aa1153b264fcae1f0..93c38588efb48cbd0411030e7c1ac93a5b2f2dd2 100644 (file)
@@ -1,4 +1,7 @@
-if(int32_t(RS2) == 0 || (int32_t(RS1) == INT32_MIN && int32_t(RS2) == -1))
+require_xpr64;
+if(RS2 == 0)
+  RD = RS1;
+else if(int32_t(RS1) == INT32_MIN && int32_t(RS2) == -1)
   RD = 0;
 else
   RD = sext32(int32_t(RS1) % int32_t(RS2));