MUXes and a mess/morass of code
-Subproject commit ad0436eed1fcf36e0f1acfde5de71ad2e4b56145
+Subproject commit eda9879fef1cddcd9fb41fca982a6b86e471905b
is_zero = Signal(reset_less=True)
is_positive = Signal(reset_less=True)
is_negative = Signal(reset_less=True)
is_zero = Signal(reset_less=True)
is_positive = Signal(reset_less=True)
is_negative = Signal(reset_less=True)
+ msb_test = Signal(reset_less=True) # set equal to MSB, invert if OP=CMP
so = Signal(reset_less=True)
so = Signal(reset_less=True)
+ # TODO: if o[63] is XORed with "operand == OP_CMP"
+ # that can be used as a test
+ # see https://bugs.libre-soc.org/show_bug.cgi?id=305#c60
comb += is_zero.eq(o == 0)
comb += is_positive.eq(~is_zero & ~o[63])
comb += is_negative.eq(~is_zero & o[63])
comb += is_zero.eq(o == 0)
comb += is_positive.eq(~is_zero & ~o[63])
comb += is_negative.eq(~is_zero & o[63])