9

我已经从链接http://llvm.org/demo/尝试了 LLVM 演示, 这是什么类型的 IR?HIR、MIR 还是 LIR?我认为,SSA 表示通常用于 MIR。那么,它是 MIR 吗?但它可以存储信息以进行依赖性分析。因此它可以成为 HIR 吗?

什么文件扩展名实际上代表 LLVM IR、.ll 或 .bc?

如何获取 LLVM 中使用的符号表?

4

1 回答 1

8

我不熟悉一个单一的、严格的定义来区分一个级别的 IR 与另一个级别,但据我所知,它属于 MIR 类别。

  • 它具有 SSA 形式并且没有明确的寄存器,因此我绝对不会将其归类为低级。
  • 它没有命名子元素引用或高级流控制结构,因此它也不适合 HIR。

在任何情况下,LLVM IR 通常以 .ll 扩展名的文本文件或 .bc扩展名的二进制文件存储在磁盘上。两者之间的转换是微不足道的,您可以只使用for bc -> ll和for ll -> bc。二进制格式更节省内存,而文本格式是人类可读的。llvm-disllvm-as

于 2012-10-18T12:05:36.193 回答