big convert g/s/r mid --> muxid
[ieee754fpu.git] / src / ieee754 / fpcommon / postcalc.py
index 7111dc8a94f343f83052a86001d0a28b29555ef2..24475d38a9432bdb188369098343711855482d84 100644 (file)
@@ -3,24 +3,26 @@
 # 2013-12-12
 
 from nmigen import Signal
-from fpbase import Overflow, FPNumBase
+from ieee754.fpcommon.fpbase import Overflow, FPNumBaseRecord
+from ieee754.fpcommon.getop import FPBaseData
 
 class FPAddStage1Data:
 
-    def __init__(self, width, id_wid):
-        self.z = FPNumBase(width, False)
+    def __init__(self, width, pspec):
+        self.z = FPNumBaseRecord(width, False)
         self.out_do_z = Signal(reset_less=True)
         self.oz = Signal(width, reset_less=True)
         self.of = Overflow()
-        self.mid = Signal(id_wid, reset_less=True)
+        self.ctx = FPBaseData(width, pspec)
+        self.muxid = self.ctx.muxid
 
     def __iter__(self):
         yield from self.z
         yield self.out_do_z
         yield self.oz
         yield from self.of
-        yield self.mid
+        yield from self.ctx
 
     def eq(self, i):
         return [self.z.eq(i.z), self.out_do_z.eq(i.out_do_z), self.oz.eq(i.oz),
-                self.of.eq(i.of), self.mid.eq(i.mid)]
+                self.of.eq(i.of), self.ctx.eq(i.ctx)]