Support setting ISA/subsets with --isa flag
[riscv-isa-sim.git] / riscv / insns / mulh.h
index f63869d7b60aef8605ed86bbe9676460ac345178..051382a96dec4f6489c7eb02a125567a9a992606 100644 (file)
@@ -1,8 +1,5 @@
-if(xpr64)
-{
-  int64_t a = RS1;
-  int64_t b = RS2;
-  WRITE_RD((int128_t(a) * int128_t(b)) >> 64);
-}
+require_extension('M');
+if (xlen == 64)
+  WRITE_RD(mulh(RS1, RS2));
 else
   WRITE_RD(sext32((sext32(RS1) * sext32(RS2)) >> 32));