125bcff47SXuan Hupackage xiangshan.backend.issue 225bcff47SXuan Hu 325bcff47SXuan Huimport chisel3._ 425bcff47SXuan Huimport chisel3.util._ 525bcff47SXuan Huimport top.ArgParser 625bcff47SXuan Huimport xiangshan.backend.Bundles.DynInst 725bcff47SXuan Huimport xiangshan.{Redirect, XSCoreParameters, XSCoreParamsKey} 825bcff47SXuan Hu 925bcff47SXuan Huobject MultiWakeupQueueMain extends App { 1025bcff47SXuan Hu val (config, firrtlOpts, firrtlComplier, firtoolOpts) = ArgParser.parse(args) 1125bcff47SXuan Hu 1225bcff47SXuan Hu val p = config.alterPartial({ case XSCoreParamsKey => XSCoreParameters() }) 1325bcff47SXuan Hu 1425bcff47SXuan Hu emitVerilog( 1525bcff47SXuan Hu new MultiWakeupQueue[DynInst, ValidIO[Redirect]]( 1625bcff47SXuan Hu new DynInst()(p), 1725bcff47SXuan Hu ValidIO(new Redirect()(p)), 1825bcff47SXuan Hu Set(2, 4), 19*493a9370SHaojin Tang (dynInst: DynInst, flush: ValidIO[Redirect], stage: Int) => dynInst.robIdx.needFlush(flush) 2025bcff47SXuan Hu ), 2125bcff47SXuan Hu Array("--full-stacktrace", "--target-dir", "build/issue") 2225bcff47SXuan Hu ) 2325bcff47SXuan Hu} 24