handleStructureType
fun handleStructureType(typeRef: LLVMTypeRef, alreadyVisited: MutableMap<LLVMTypeRef, Type?> = mutableMapOf()): RecordDeclaration
Handles the parsing of structure types. Member fields of structs in LLVM IR do not have names, so we need to assign dummy names for easier reading, such s field_0
.
there are two different types of structs:
identified structs, which have a name are explicitly declared
literal structs, which do not have a name, but are structurally unique To emulate this uniqueness, we create a RecordDeclaration for each literal struct and name it according to its element types (see getLiteralStructName).