add fenceiGenAsANop
This commit is contained in:
parent
0d92a5e5cd
commit
cc48fc7403
|
@ -52,7 +52,8 @@ trait PredictionInterface{
|
||||||
|
|
||||||
class BranchPlugin(earlyBranch : Boolean,
|
class BranchPlugin(earlyBranch : Boolean,
|
||||||
catchAddressMisaligned : Boolean = false,
|
catchAddressMisaligned : Boolean = false,
|
||||||
fenceiGenAsAJump : Boolean = false) extends Plugin[VexRiscv] with PredictionInterface{
|
fenceiGenAsAJump : Boolean = false,
|
||||||
|
fenceiGenAsANop : Boolean = false) extends Plugin[VexRiscv] with PredictionInterface{
|
||||||
|
|
||||||
def catchAddressMisalignedForReal = catchAddressMisaligned && !pipeline(RVC_GEN)
|
def catchAddressMisalignedForReal = catchAddressMisaligned && !pipeline(RVC_GEN)
|
||||||
lazy val branchStage = if(earlyBranch) pipeline.execute else pipeline.memory
|
lazy val branchStage = if(earlyBranch) pipeline.execute else pipeline.memory
|
||||||
|
@ -127,6 +128,10 @@ class BranchPlugin(earlyBranch : Boolean,
|
||||||
))
|
))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(fenceiGenAsANop){
|
||||||
|
decoderService.add(List(FENCEI -> List()))
|
||||||
|
}
|
||||||
|
|
||||||
val pcManagerService = pipeline.service(classOf[JumpService])
|
val pcManagerService = pipeline.service(classOf[JumpService])
|
||||||
jumpInterface = pcManagerService.createJumpInterface(branchStage)
|
jumpInterface = pcManagerService.createJumpInterface(branchStage)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue