type traceRegionAlloc … type traceRegionAllocBlock … type traceRegionAllocBlockHeader … const traceRegionAllocBlockData … // alloc allocates n-byte block. The block is always aligned to 8 bytes, regardless of platform. func (a *traceRegionAlloc) alloc(n uintptr) *notInHeap { … } // drop frees all previously allocated memory and resets the allocator. // // drop is not safe to call concurrently with other calls to drop or with calls to alloc. The caller // must ensure that it is not possible for anything else to be using the same structure. func (a *traceRegionAlloc) drop() { … }