[libre-riscv-dev] Change pspec to class hierarchy
Luke Kenneth Casson Leighton
lkcl at lkcl.net
Sun Jul 14 09:52:04 BST 2019
wark-wark.... do try to commit code that is "complete", i.e. doesn't
break unit tests.
l.
lkcl at fizzy:~/src/libreriscv/ieee754fpu/src$ python3
ieee754/fpmul/test/test_fpmul_pipe_32.py
Traceback (most recent call last):
File "ieee754/fpmul/test/test_fpmul_pipe_32.py", line 20, in <module>
test_pipe_fp32()
File "ieee754/fpmul/test/test_fpmul_pipe_32.py", line 14, in test_pipe_fp32
dut = FPMULMuxInOut(32, 4)
File "/home/lkcl/src/libreriscv/ieee754fpu/src/ieee754/fpmul/pipeline.py",
line 52, in __init__
self.alu = FPMULBasePipe(self.pspec)
File "/home/lkcl/src/libreriscv/ieee754fpu/src/ieee754/fpmul/pipeline.py",
line 23, in __init__
self.pipe1 = FPMulSpecialCasesDeNorm(pspec)
File "/home/lkcl/src/libreriscv/ieee754fpu/src/ieee754/fpmul/specialcases.py",
line 138, in __init__
SimpleHandshake.__init__(self, self) # pipe is its own stage
File "/home/lkcl/src/libreriscv/ieee754fpu/src/nmutil/singlepipe.py",
line 201, in __init__
self._new_data("data")
File "/home/lkcl/src/libreriscv/ieee754fpu/src/nmutil/singlepipe.py",
line 206, in _new_data
self.p.data_i, self.n.data_o = self.new_specs(name)
File "/home/lkcl/src/libreriscv/ieee754fpu/src/nmutil/stageapi.py",
line 182, in new_specs
return (_spec(self.ispec, "%s_i" % name),
File "/home/lkcl/src/libreriscv/ieee754fpu/src/nmutil/stageapi.py",
line 100, in _spec
return fn()
File "/home/lkcl/src/libreriscv/ieee754fpu/src/ieee754/fpmul/specialcases.py",
line 142, in ispec
return FPADDBaseData(self.pspec)
File "/home/lkcl/src/libreriscv/ieee754fpu/src/ieee754/fpcommon/getop.py",
line 120, in __init__
self.ctx = FPPipeContext(pspec)
File "/home/lkcl/src/libreriscv/ieee754fpu/src/ieee754/fpcommon/getop.py",
line 95, in __init__
self.op_wid = pspec.get('op_wid', 0)
AttributeError: 'PipelineSpec' object has no attribute 'get'
More information about the libre-riscv-dev
mailing list