LLVM IR 结构体类型

在LLVM IR中,可以定义“identified” 和“literal”结构体类型,“literal”结构体类型在结构上是独一无二的,而“identified”结构体类型却从来都不是独一无二的,一个不透明的结构类型也可以用来向前声明一个上不可用的类型。

示例:

%mytype = type { %mytype*, i32 }

注意: 在LLVM 3.0发布之前,“identified”类型在结构上是独一无二的。在最近的LLVM版本中,只有“literal”类型是唯一的。