tree: b328a819cdf2e3f76bf8d96f192a9c3cc7fa0b94 [search]
  1. alloc/
  2. arena/
  3. heap/
  4. prim/
  5. profile/
  6. util/
  7. atomic.h
  8. bits.h
  9. decl.h
  10. internal.h
  11. prim.h
  12. qsbr.h
  13. readme.md
  14. track.h
  15. types.h
include/mimalloc/readme.md

Internal Headers

  • types.h: Defines the types of all internal mimalloc datastructures and configuration options.
  • decl.h: Compiler attributes, assertions, initialization macros, and platform-specific declarations.
  • bits.h: Architecture dependent type definitions, and bit operations.
  • atomic.h: Portable atomic operations and locks.
  • prim.h: Primitive and minimal portability API needed from a host system.
  • track.h: Memory-tracking integration for Valgrind, AddressSanitizer, and Windows event tracing.
  • qsbr.h: Quiescent-state based reclamation primitives (for runtime systems like CPython).
  • internal.h: Deprecated: umbrella header for internal allocator declarations and utilities.

Source Headers

  • alloc: Internal allocation, freeing, and page-management interfaces.
  • arena: Arena management, slice allocation, and arena-backed page interfaces.
  • heap: Heap, thread-local heap, subprocess, initialization, and page-map interfaces. Also contains heap/process.h which declares (almost) all static variables.
  • prim: Higher-level OS memory operations and primitive thread-local access.
  • profile: Sampled allocation, guarded allocation, and profiler interfaces.
  • util: Runtime utilities, options, randomness, statistics, and dynamic thread-local interfaces.