[Libre-soc-bugs] [Bug 432] mulld pseudocode overflow calculation incorrect
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Wed Jul 15 15:57:56 BST 2020
https://bugs.libre-soc.org/show_bug.cgi?id=432
Luke Kenneth Casson Leighton <lkcl at lkcl.net> changed:
What |Removed |Added
----------------------------------------------------------------------------
Blocks| |323
--- Comment #6 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
likewise this one?
@@ -51,10 +56,10 @@ class MulMainStage3(PipeModBase):
# compute overflow
mul_ov = Signal(reset_less=True)
with m.If(is_32bit):
- m32 = mul_o[32:64]
+ m31 = mul_o[31:64] # yes really bits 31 to 63 (incl)
comb += mul_ov.eq(m32.bool() & ~m32.all())
with m.Else():
- m64 = mul_o[64:128]
+ m64 = mul_o[63:128] # yes really bits 63 to 127 (incl)
comb += mul_ov.eq(m64.bool() & ~m64.all())
Referenced Bugs:
https://bugs.libre-soc.org/show_bug.cgi?id=323
[Bug 323] create POWER9 MUL pipeline
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the libre-soc-bugs
mailing list