@@ -12,7 +12,7 @@ class LsRoqEntry extends XSBundle {
valop=UInt(6.W)
valmask=UInt(8.W)
valdata=UInt(XLEN.W)
valexception=UInt(8.W)
valexception=UInt(16.W)// TODO: opt size
valmmio=Bool()
valfwdMask=Vec(8,Bool())
valfwdData=Vec(8,UInt(8.W))
...
...
@@ -107,7 +107,7 @@ class Lsroq extends XSModule {
(0untilLoadPipelineWidth).map(i=>{
when(io.loadIn(i).fire()){
when(io.loadIn(i).bits.miss){
XSInfo(io.loadIn(i).valid,"load miss write to lsroq idx %d pc 0x%x vaddr %x paddr %x data %x mask %x forwardData %x forwardMask: %x mmio %x roll %x\n",
XSInfo(io.loadIn(i).valid,"load miss write to lsroq idx %d pc 0x%x vaddr %x paddr %x data %x mask %x forwardData %x forwardMask: %x mmio %x roll %x exc %x\n",
io.loadIn(i).bits.uop.lsroqIdx,
io.loadIn(i).bits.uop.cf.pc,
io.loadIn(i).bits.vaddr,
...
...
@@ -117,10 +117,11 @@ class Lsroq extends XSModule {
io.loadIn(i).bits.forwardData.asUInt,
io.loadIn(i).bits.forwardMask.asUInt,
io.loadIn(i).bits.mmio,
io.loadIn(i).bits.rollback
)
}.otherwise{
XSInfo(io.loadIn(i).valid,"load hit write to cbd idx %d pc 0x%x vaddr %x paddr %x data %x mask %x forwardData %x forwardMask: %x mmio %x roll %x\n",
io.loadIn(i).bits.rollback,
io.loadIn(i).bits.uop.cf.exceptionVec.asUInt
)
}.otherwise{
XSInfo(io.loadIn(i).valid,"load hit write to cbd idx %d pc 0x%x vaddr %x paddr %x data %x mask %x forwardData %x forwardMask: %x mmio %x roll %x exc %x\n",
io.loadIn(i).bits.uop.lsroqIdx,
io.loadIn(i).bits.uop.cf.pc,
io.loadIn(i).bits.vaddr,
...
...
@@ -130,36 +131,39 @@ class Lsroq extends XSModule {