1730cfbc0SXuan Hupackage xiangshan.backend 2730cfbc0SXuan Hu 3730cfbc0SXuan Huimport freechips.rocketchip.diplomacy.LazyModule 4730cfbc0SXuan Huimport top.{ArgParser, BaseConfig, Generator} 58a00ff56SXuan Huimport xiangshan.backend.regfile.IntPregParams 68a00ff56SXuan Huimport xiangshan.{XSCoreParameters, XSCoreParamsKey, XSTileKey} 7730cfbc0SXuan Hu 8730cfbc0SXuan Huobject BackendMain extends App { 96ce10964SXuan Hu val (config, firrtlOpts, firtoolOpts) = ArgParser.parse( 10*615948e4SXuan Hu args :+ "--disable-always-basic-diff" :+ "--fpga-platform" :+ "--target" :+ "verilog") 11730cfbc0SXuan Hu 128a00ff56SXuan Hu val defaultConfig = config.alterPartial({ 138a00ff56SXuan Hu // Get XSCoreParams and pass it to the "small module" 148a00ff56SXuan Hu case XSCoreParamsKey => config(XSTileKey).head 158a00ff56SXuan Hu }) 168a00ff56SXuan Hu 178a00ff56SXuan Hu val backendParams = defaultConfig(XSCoreParamsKey).backendParams 188a00ff56SXuan Hu val backend = LazyModule(new Backend(backendParams)(defaultConfig)) 19730cfbc0SXuan Hu 20730cfbc0SXuan Hu Generator.execute( 218e3b6aeaSXuan Hu firrtlOpts :+ "--full-stacktrace" :+ "--target-dir" :+ "backend", 228a00ff56SXuan Hu backend.module, 238a00ff56SXuan Hu firtoolOpts 24730cfbc0SXuan Hu ) 25730cfbc0SXuan Hu println("done") 26730cfbc0SXuan Hu} 27730cfbc0SXuan Hu 28