0

问候溢出者,

我试图深入了解如何为 OO 语言(静态/动态尝试)开发 x86(ia32/ia64)后端,主要是在 Windows 操作系统上运行。

我对 x86 体系结构、Windows 体系结构以及如何将代码准备好以优化并序列化为机器本机代码的树级别有很好的理解。

这只是我没有真正掌握的步骤(序列化),我想了解更多。例如,代码树中的循环节点是否有标准的 x86 序列化指令集?

我现在正在尝试通读编译器书籍,但是是否有针对该主题的特定材料(书籍、教程、项目...等)?

使用 C 语言作为中间语言,并利用一些现成的 C 编译器作为后端,例如 ICC 的出色优化,怎么样?

非常感谢你们!

4

1 回答 1

0

是的,您可以输出另一种语言,例如 C,然后将其编译为您平台的机器语言。 Cfront,最初的 C++ 编译器正是这样做的。

另一种可能性是使用LLVM,它为您提供了用于生成机器语言的抽象 API。

于 2010-06-22T05:10:18.100 回答