From 3d76458fd33c52db68618a3cbe114053d8b4f9d7 Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Mon, 8 Jun 2020 18:51:23 +0100 Subject: [PATCH] whoops, overflow-decode (handle_overflow) needed to check e.oe.ok *and* e.oe.oe to decide whether to set SO/OV/OV32 --- src/soc/decoder/isa/caller.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/soc/decoder/isa/caller.py b/src/soc/decoder/isa/caller.py index 6e6494d3..6541a56c 100644 --- a/src/soc/decoder/isa/caller.py +++ b/src/soc/decoder/isa/caller.py @@ -380,8 +380,9 @@ class ISACaller: carry_en = yield self.dec2.e.output_carry if carry_en: yield from self.handle_carry_(inputs, results, already_done) - ov_en = yield self.dec2.e.oe - if ov_en: + ov_en = yield self.dec2.e.oe.oe + ov_ok = yield self.dec2.e.oe.ok + if ov_en & ov_ok: yield from self.handle_overflow(inputs, results) rc_en = yield self.dec2.e.rc.data if rc_en: -- 2.30.2