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).