// Copyright 2025 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package main const ( // Constants that we use and will transfer to the runtime. minHeapAlign = 8 maxSmallSize = 32 << 10 smallSizeDiv = 8 smallSizeMax = 1024 largeSizeDiv = 128 pageShift = 13 tinySize = 16 // Derived constants. pageSize = 1 << pageShift ) const ( maxPtrSize = max(4, 8) maxPtrBits = 8 * maxPtrSize // Maximum size to generate size specialized functions for. // We've seen very limited benefit for specialized functions for larger // size classes, and with the wrapper they are sometimes slower // than the non-specialized functions. // This must match the constant in the compiler. specializedMallocMax = 80 )