Compiler construction 是否有任何代码生成&;编译器的优化工具(我已经生成了AST树)?

Compiler construction 是否有任何代码生成&;编译器的优化工具(我已经生成了AST树)?,compiler-construction,code-generation,compiler-optimization,Compiler Construction,Code Generation,Compiler Optimization,我已经走到制作自己的编译器的最后一步了。。 如果我有AST,是否有任何工具(eclipse集成会更好)可以自动生成汇编代码并对其进行优化。。 如果存在一些工具包,哪一个更好?查看一下。您也可以考虑常见的Lisp,@ MyStudiLLVM对于从非常低级别的命令IR到机器代码来说是非常好的。从AST转换到非常低级的命令式代码是没有好处的。这当然使最后一步更容易,但从AST为高级语言创建LLVM IR一点也不简单(取决于语言,比解释器困难得多)。@delnan,这很简单-因为LLVM仍然会为您进行所

我已经走到制作自己的编译器的最后一步了。。 如果我有AST,是否有任何工具(eclipse集成会更好)可以自动生成汇编代码并对其进行优化。。
如果存在一些工具包,哪一个更好?

查看一下。您也可以考虑常见的Lisp,@ MyStudiLLVM对于从非常低级别的命令IR到机器代码来说是非常好的。从AST转换到非常低级的命令式代码是没有好处的。这当然使最后一步更容易,但从AST为高级语言创建LLVM IR一点也不简单(取决于语言,比解释器困难得多)。@delnan,这很简单-因为LLVM仍然会为您进行所有优化。你只需要做一个临时的,琐碎的翻译。复杂性在于运行时支持(例如,实现垃圾收集器),而不是编译。但是,解释器也会有同样的问题,因此,即使是使用LLVM编译高级语言也要比解释它容易得多。@SK logic我说的不是优化,而是正确使用LLVM IR。例如,除非我大错特错,否则从CPython字节码到LLVM-IR编写编译器要比用C编写解释器困难得多。即使是输出反映解释器动作的简单翻译,也有几个解释器不关心的问题,因为LLVM-IR比C代码更低级。