ArgParser.scala (9eee369fad937ed93672d4514861f79317ecc9f5) ArgParser.scala (720dd6218ef4045360a23b552db1137cbb6e6e59)
1/***************************************************************************************
2* Copyright (c) 2020-2021 Institute of Computing Technology, Chinese Academy of Sciences
3* Copyright (c) 2020-2021 Peng Cheng Laboratory
4*
5* XiangShan is licensed under Mulan PSL v2.
6* You can use this software according to the terms and conditions of the Mulan PSL v2.
7* You may obtain a copy of Mulan PSL v2 at:
8* http://license.coscl.org.cn/MulanPSL2

--- 114 unchanged lines hidden (view full) ---

123 case "--disable-alwaysdb" :: tail =>
124 nextOption(config.alter((site, here, up) => {
125 case DebugOptionsKey => up(DebugOptionsKey).copy(AlwaysBasicDB = false)
126 }), tail)
127 case "--xstop-prefix" :: value :: tail if chisel3.BuildInfo.version != "3.6.0" =>
128 nextOption(config.alter((site, here, up) => {
129 case SoCParamsKey => up(SoCParamsKey).copy(XSTopPrefix = Some(value))
130 }), tail)
1/***************************************************************************************
2* Copyright (c) 2020-2021 Institute of Computing Technology, Chinese Academy of Sciences
3* Copyright (c) 2020-2021 Peng Cheng Laboratory
4*
5* XiangShan is licensed under Mulan PSL v2.
6* You can use this software according to the terms and conditions of the Mulan PSL v2.
7* You may obtain a copy of Mulan PSL v2 at:
8* http://license.coscl.org.cn/MulanPSL2

--- 114 unchanged lines hidden (view full) ---

123 case "--disable-alwaysdb" :: tail =>
124 nextOption(config.alter((site, here, up) => {
125 case DebugOptionsKey => up(DebugOptionsKey).copy(AlwaysBasicDB = false)
126 }), tail)
127 case "--xstop-prefix" :: value :: tail if chisel3.BuildInfo.version != "3.6.0" =>
128 nextOption(config.alter((site, here, up) => {
129 case SoCParamsKey => up(SoCParamsKey).copy(XSTopPrefix = Some(value))
130 }), tail)
131 case "--imsic-use-tl" :: tail =>
132 nextOption(config.alter((site, here, up) => {
133 case SoCParamsKey => up(SoCParamsKey).copy(IMSICUseTL = true)
134 }), tail)
131 case "--firtool-opt" :: option :: tail =>
132 firtoolOpts ++= option.split(" ").filter(_.nonEmpty)
133 nextOption(config, tail)
134 case option :: tail =>
135 // unknown option, maybe a firrtl option, skip
136 firrtlOpts :+= option
137 nextOption(config, tail)
138 }
139 }
140 val newArgs = DifftestModule.parseArgs(args)
141 var config = nextOption(default, newArgs.toList)
142 (config, firrtlOpts, firtoolOpts)
143 }
144}
135 case "--firtool-opt" :: option :: tail =>
136 firtoolOpts ++= option.split(" ").filter(_.nonEmpty)
137 nextOption(config, tail)
138 case option :: tail =>
139 // unknown option, maybe a firrtl option, skip
140 firrtlOpts :+= option
141 nextOption(config, tail)
142 }
143 }
144 val newArgs = DifftestModule.parseArgs(args)
145 var config = nextOption(default, newArgs.toList)
146 (config, firrtlOpts, firtoolOpts)
147 }
148}