LLVM IR

作者: 佩玖吟 | 来源:发表于2021-08-27 22:06 被阅读0次

LLVM Intermediate Representation,链接 LLVM 前端和后端的桥梁,与编程语言和运行架构无关。

preview

LLVM IR有两种等价的格式,一种是.bc(Bitcode)文件,另一种是.ll文件,.ll文件是Human-readable的格式。 我们可以使用下面的命令得到这两种格式的IR文件

image-20210827163956921.png

特征

采用三地址形式(TAC, Three Address Code)

TAC:

  • 在每个指令的右端最多有一个运算符

  • 每条指令最多保护三个变量地址(变量名、常量值、临时变量)

  • 可以使用更少的地址(如跳转指令、函数调用)

采用静态单赋值(SSA,Static Single Assignment)

  • 在使用变量之前一定要被定义

  • 变量都只能在定义的时候被赋值

(即变量在等号左边只能出现一次)

llvm 使用

image-20210827163530604.png

相关文章

网友评论

    本文标题:LLVM IR

    本文链接:https://www.haomeiwen.com/subject/hejviltx.html