13 changed files with 13 additions and 13 deletions
@ -1,4 +1,4 @@ |
|||
require_extension('P'); |
|||
require_rv32; |
|||
sreg_t mres = sext32(RS1) * sext32(RS2); |
|||
WRITE_RD(RD + (mres >> 32)); |
|||
WRITE_RD(sext32(RD + (mres >> 32))); |
|||
|
|||
@ -1,4 +1,4 @@ |
|||
require_extension('P'); |
|||
require_rv32; |
|||
sreg_t mres = sext32(RS1) * sext32(P_FIELD(RS2, 0, 16)); |
|||
WRITE_RD(RD + (mres >> 16)); |
|||
WRITE_RD(sext32(RD + (mres >> 16))); |
|||
|
|||
@ -1,4 +1,4 @@ |
|||
require_extension('P'); |
|||
require_rv32; |
|||
sreg_t mres = sext32(RS1) * sext32(P_FIELD(RS2, 1, 16)); |
|||
WRITE_RD(RD + (mres >> 16)); |
|||
WRITE_RD(sext32(RD + (mres >> 16))); |
|||
|
|||
@ -1,4 +1,4 @@ |
|||
require_extension('P'); |
|||
require_rv32; |
|||
sreg_t mres = sext32(RS1) * reg_t((uint32_t)RS2); |
|||
WRITE_RD(RD + (mres >> 32)); |
|||
WRITE_RD(sext32(RD + (mres >> 32))); |
|||
|
|||
@ -1,4 +1,4 @@ |
|||
require_extension('P'); |
|||
require_rv32; |
|||
sreg_t mres = sext32(RS1) * (uint32_t)P_FIELD(RS2, 0, 16); |
|||
WRITE_RD(RD + (mres >> 16)); |
|||
WRITE_RD(sext32(RD + (mres >> 16))); |
|||
|
|||
@ -1,4 +1,4 @@ |
|||
require_extension('P'); |
|||
require_rv32; |
|||
sreg_t mres = sext32(RS1) * (uint32_t)P_FIELD(RS2, 1, 16); |
|||
WRITE_RD(RD + (mres >> 16)); |
|||
WRITE_RD(sext32(RD + (mres >> 16))); |
|||
|
|||
@ -1,4 +1,4 @@ |
|||
require_extension('P'); |
|||
require_rv32; |
|||
uint64_t mres = reg_t((uint32_t)RS1) * reg_t((uint32_t)RS2); |
|||
WRITE_RD(RD + (mres >> 32)); |
|||
WRITE_RD(sext32(RD + (mres >> 32))); |
|||
|
|||
@ -1,4 +1,4 @@ |
|||
require_extension('P'); |
|||
require_rv32; |
|||
int64_t mres = sext(RS1,64) * sext(RS2,64); |
|||
WRITE_RD(((mres >> 31) + 1) >> 1); |
|||
WRITE_RD(sext32(((mres >> 31) + 1) >> 1)); |
|||
|
|||
@ -1,4 +1,4 @@ |
|||
require_extension('P'); |
|||
require_rv32; |
|||
sreg_t mres = sext(RS1,64) * reg_t((uint32_t)RS2); |
|||
WRITE_RD(((mres >> 31) + 1) >> 1); |
|||
WRITE_RD(sext32(((mres >> 31) + 1) >> 1)); |
|||
|
|||
@ -1,4 +1,4 @@ |
|||
require_extension('P'); |
|||
require_rv32; |
|||
sreg_t mres = reg_t((uint32_t)RS1) * reg_t((uint32_t)RS2); |
|||
WRITE_RD(((mres >> 31) + 1) >> 1); |
|||
WRITE_RD(sext32(((mres >> 31) + 1) >> 1)); |
|||
|
|||
Loading…
Reference in new issue