diff options
author | Clifford Wolf <clifford@clifford.at> | 2016-04-10 17:15:17 +0200 |
---|---|---|
committer | Clifford Wolf <clifford@clifford.at> | 2016-04-10 17:15:17 +0200 |
commit | 2cab981862b0ff4b362363de865151955ebedf01 (patch) | |
tree | 046e33c98c2a45a59c9a7f6b234a0980c74b3f6f /picorv32.v | |
parent | 094783dcf892d99a7d845c88be744768ac1133eb (diff) | |
download | picorv32-2cab981862b0ff4b362363de865151955ebedf01.tar.gz picorv32-2cab981862b0ff4b362363de865151955ebedf01.zip |
Fixed signed division by zero handling
Diffstat (limited to 'picorv32.v')
-rw-r--r-- | picorv32.v | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -1638,7 +1638,7 @@ module picorv32_pcpi_div ( running <= 1; dividend <= (instr_div || instr_rem) && pcpi_rs1[31] ? -pcpi_rs1 : pcpi_rs1; divisor <= ((instr_div || instr_rem) && pcpi_rs2[31] ? -pcpi_rs2 : pcpi_rs2) << 31; - outsign <= (instr_div && (pcpi_rs1[31] != pcpi_rs2[31])) || (instr_rem && pcpi_rs1[31]); + outsign <= (instr_div && (pcpi_rs1[31] != pcpi_rs2[31]) && |pcpi_rs2) || (instr_rem && pcpi_rs1[31]); quotient <= 0; quotient_msk <= 1 << 31; end else |