TYPE blocks have codes for each type primitive they use.
Declared in <llvm/Bitcode/LLVMBitCodes.h>
enum TypeCodes;
| Name | Description |
|---|---|
TYPE_CODE_NUMENTRY | NUMENTRY: [numentries] |
TYPE_CODE_VOID | VOID |
TYPE_CODE_FLOAT | FLOAT |
TYPE_CODE_DOUBLE | DOUBLE |
TYPE_CODE_LABEL | LABEL |
TYPE_CODE_OPAQUE | OPAQUE |
TYPE_CODE_INTEGER | INTEGER: [width] |
TYPE_CODE_POINTER | POINTER: [pointee type] |
TYPE_CODE_FUNCTION_OLD | FUNCTION: [vararg, attrid, retty, paramty x N]encoding) |
TYPE_CODE_HALF | HALF |
TYPE_CODE_ARRAY | ARRAY: [numelts, eltty] |
TYPE_CODE_VECTOR | VECTOR: [numelts, eltty] |
TYPE_CODE_X86_FP80 | X86 LONG DOUBLE |
TYPE_CODE_FP128 | LONG DOUBLE (112 bit mantissa) |
TYPE_CODE_PPC_FP128 | PPC LONG DOUBLE (2 doubles) |
TYPE_CODE_METADATA | METADATA |
TYPE_CODE_X86_MMX | X86 MMX |
TYPE_CODE_STRUCT_ANON | STRUCT_ANON: [ispacked, eltty x N] |
TYPE_CODE_STRUCT_NAME | STRUCT_NAME: [strchr x N] |
TYPE_CODE_STRUCT_NAMED | STRUCT_NAMED: [ispacked, eltty x N] |
TYPE_CODE_FUNCTION | FUNCTION: [vararg, retty, paramty x N] |
TYPE_CODE_TOKEN | TOKEN |
TYPE_CODE_BFLOAT | BRAIN FLOATING POINT |
TYPE_CODE_X86_AMX | X86 AMX |
TYPE_CODE_OPAQUE_POINTER | OPAQUE_POINTER: [addrspace] |
TYPE_CODE_TARGET_TYPE | TARGET_TYPE |
TYPE_CODE_BYTE | BYTE: [width] |