1 # This stage is intended to adjust the input data before sending it to
2 # the actual ALU. Things like handling inverting the input, xer_ca
3 # generation for subtraction, and handling of immediates should happen
4 # in the base class (CommonInputStage.elaborate).
5 from soc
.fu
.alu
.input_stage
import ALUInputStage
6 from soc
.fu
.div
.pipe_data
import DivInputData
8 # simply over-ride ALUInputStage ispec / ospec
11 class DivMulInputStage(ALUInputStage
):
12 def __init__(self
, pspec
):
13 super().__init
__(pspec
)
15 def ispec(self
): return DivInputData(self
.pspec
)
16 def ospec(self
): return DivInputData(self
.pspec
)