xref: /XiangShan/src/main/scala/top/Generator.scala (revision e3da8bad334fc71ba0d72f0607e2e93245ddaece)
1cc358710SLinJiawei/***************************************************************************************
2*e3da8badSTang Haojin* Copyright (c) 2024 Beijing Institute of Open Source Chip (BOSC)
3*e3da8badSTang Haojin* Copyright (c) 2020-2024 Institute of Computing Technology, Chinese Academy of Sciences
4cc358710SLinJiawei* Copyright (c) 2020-2021 Peng Cheng Laboratory
5cc358710SLinJiawei*
6cc358710SLinJiawei* XiangShan is licensed under Mulan PSL v2.
7cc358710SLinJiawei* You can use this software according to the terms and conditions of the Mulan PSL v2.
8cc358710SLinJiawei* You may obtain a copy of Mulan PSL v2 at:
9cc358710SLinJiawei*          http://license.coscl.org.cn/MulanPSL2
10cc358710SLinJiawei*
11cc358710SLinJiawei* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
12cc358710SLinJiawei* EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
13cc358710SLinJiawei* MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
14cc358710SLinJiawei*
15cc358710SLinJiawei* See the Mulan PSL v2 for more details.
16cc358710SLinJiawei***************************************************************************************/
17cc358710SLinJiawei
18cc358710SLinJiaweipackage top
19cc358710SLinJiawei
2051e45dbbSTang Haojinimport circt.stage._
2151e45dbbSTang Haojinimport chisel3.stage.ChiselGeneratorAnnotation
225931ace3STang Haojinimport xiangshan.transforms._
23cc358710SLinJiawei
24cc358710SLinJiaweiobject Generator {
2551e45dbbSTang Haojin  def execute(args: Array[String], mod: => chisel3.RawModule, firtoolOpts: Array[String]) = {
26*e3da8badSTang Haojin    val annotations = firtoolOpts.map(FirtoolOption.apply).toSeq
27cc358710SLinJiawei
28*e3da8badSTang Haojin    (new XiangShanStage).execute(args, ChiselGeneratorAnnotation(() => mod) +: annotations)
2951e45dbbSTang Haojin  }
30cc358710SLinJiawei}
31