From 705cbd9d1a435281e3a239f20027deda47421b6b Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Thu, 9 Jul 2020 20:44:34 +0100 Subject: [PATCH] whoops test gets copied 4 times on the If. create intermediate signal --- src/soc/fu/alu/output_stage.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/soc/fu/alu/output_stage.py b/src/soc/fu/alu/output_stage.py index 3ea71b56..0080ca54 100644 --- a/src/soc/fu/alu/output_stage.py +++ b/src/soc/fu/alu/output_stage.py @@ -28,7 +28,9 @@ class ALUOutputStage(CommonOutputStage): # copy overflow and sticky-overflow. indicate to CompALU if they # are actually required (oe enabled/set) otherwise the CompALU # can (will) ignore them. - with m.If(op.oe.oe & op.oe.oe_ok): + oe = Signal(reset_less=True) + comb += oe.eq(op.oe.oe & op.oe.oe_ok) + with m.If(oe): comb += self.o.xer_so.data.eq(self.so) comb += self.o.xer_so.ok.eq(1) comb += self.o.xer_ov.data.eq(xer_ov_i) -- 2.30.2