From 2cab981862b0ff4b362363de865151955ebedf01 Mon Sep 17 00:00:00 2001 From: Clifford Wolf Date: Sun, 10 Apr 2016 17:15:17 +0200 Subject: Fixed signed division by zero handling --- picorv32.v | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/picorv32.v b/picorv32.v index d163754..229cd08 100644 --- a/picorv32.v +++ b/picorv32.v @@ -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 -- cgit