projects
/
riscv-isa-sim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
| inline |
side by side
Avoid use of __int128_t
[riscv-isa-sim.git]
/
riscv
/
insns
/
mulh.h
diff --git
a/riscv/insns/mulh.h
b/riscv/insns/mulh.h
index c4fead2db2537d453494ca2b4dc73f24c988c6d8..8ae75209f5c3ff84e2ab37321ea7b4cff002a1a3 100644
(file)
--- a/
riscv/insns/mulh.h
+++ b/
riscv/insns/mulh.h
@@
-1,4
+1,4
@@
-require64;
-
int64_t rb = RS1
;
-int64_t ra = RS2;
-
RDR = (int128_t(rb) * int128_t(ra)) >> 64
;
+if (xpr64)
+
WRITE_RD(mulh(RS1, RS2))
;
+else
+
WRITE_RD(sext32((sext32(RS1) * sext32(RS2)) >> 32))
;