我们正在开发一个项目,根据称为分配决策图的内容提出代码的中间表示。因此,如果有人可以告诉我们你们如何编译代码以及如何访问编译期间生成的图形,即在解析语法代码之后,将会非常有用。
在解析编译器之后,甚至有关访问代码的帮助也很好。任何关于如何去做的帮助也很感激。
答案 0 :(得分:1)
目前,Chisel没有明确定义的中间表示,因为它介于用户源代码和指定的C ++或Verilog后端之间。
但是,我相信这是Chisel开发人员中的一个当前项目,它可以分解后端并允许访问IR(并允许用户定义的编译器传递)。
在此期间,请查看Backend.scala(特别是elaborate()方法)。这就是很多魔法的起源。我相信可以在精化过程中跳转到Scala命令行,这将使您可以访问硬件树表示,但我不确定它对您有多大意义或有用。