LLVM(二):后端结构

来源:互联网 发布:java工程师的工作描述 编辑:程序博客网 时间:2024/05/24 05:51

LLVM后端的功能就是处理LLVM IR(中间表达式)并生成目标机器指令。

要实现一个LLVM编译器的后端需要以下步骤:

1.     描述目标机器的特性

2.     描述目标机器的寄存器

3.     描述目标机器的指令集

4.     描述指令选择器(也就是如何将IR转换成Target指令)

5.     描述MC层(Machine code)

 

可选的步骤有:

1.     描述子机器(比如ARM各种架构中有arm、thumb、thumb2指令集)

2.     添加JIT指令发射器。

 

和目标机器描述相关的代码,都在llvm-3.4/lib/Target/目录下,在这个目录下我们可以看到很多体系结构命名的文件夹,例如ARM、X86、Mips等。之后我会以ARM为例,学习LLVM后端是如何实现的。


文笔烂技术菜,如有错误请指出,谢谢!

0 0
原创粉丝点击