private UIntPtr AllocateObjectMemorySlow(UIntPtr numBytes, uint alignment, Thread currentThread) { //Trace.Log(Trace.Area.Allocate, // "AllocateObjectMemorySlow numBytes={0}, alignment={1}, currentThread={2}", __arglist(numBytes, alignment, currentThread)); GC.CheckForNeededGCWork(currentThread); VTable.Assert(CurrentPhase != StopTheWorldPhase.SingleThreaded || currentThread.threadIndex == collectorThreadIndex); if (GenerationalCollector.IsLargeObjectSize(numBytes)) { return(AllocateBig(numBytes, alignment, currentThread)); } return(BumpAllocator.Allocate(currentThread, numBytes, alignment)); }
internal override UIntPtr AllocateObjectMemory(UIntPtr numBytes, uint alignment, Thread currentThread) { return(BumpAllocator.Allocate(currentThread, numBytes, alignment)); }