Runtime object layout
Heap object header
Section titled “Heap object header”- Word 0: type descriptor pointer.
- Optional: object size for debugging/profiling.
Type descriptor
Section titled “Type descriptor”- Size, alignment.
- Pointer bitmap/offset list for GC scanning.
String
Section titled “String”{ptr, len}whereptrpoints to UTF-8 bytes.
{ptr, len, cap}whereptrpoints to contiguous elements.- Element layout comes from type descriptor.
Struct
Section titled “Struct”- Heap-allocated with header + fields.
- Field offsets follow alignment rules.