LLVM
8.0.1
|
Recycler - This class manages a linked-list of deallocated nodes and facilitates reusing deallocated memory in place of allocating new memory. More...
#include "llvm/Support/Recycler.h"
Public Member Functions | |
~Recycler () | |
template<class AllocatorType > | |
void | clear (AllocatorType &Allocator) |
clear - Release all the tracked allocations to the allocator. More... | |
void | clear (BumpPtrAllocator &) |
Special case for BumpPtrAllocator which has an empty Deallocate() function. More... | |
template<class SubClass , class AllocatorType > | |
SubClass * | Allocate (AllocatorType &Allocator) |
template<class AllocatorType > | |
T * | Allocate (AllocatorType &Allocator) |
template<class SubClass , class AllocatorType > | |
void | Deallocate (AllocatorType &, SubClass *Element) |
void | PrintStats () |
Recycler - This class manages a linked-list of deallocated nodes and facilitates reusing deallocated memory in place of allocating new memory.
Definition at line 35 of file Recycler.h.
|
inline |
Definition at line 58 of file Recycler.h.
|
inline |
Definition at line 84 of file Recycler.h.
Referenced by llvm::RecyclingAllocator< BumpPtrAllocator, SDNode, sizeof(LargestSDNode), alignof(MostAlignedSDNode)>::Allocate().
|
inline |
Definition at line 94 of file Recycler.h.
|
inline |
clear - Release all the tracked allocations to the allocator.
The recycler must be free of any tracked allocations before being deleted; calling clear is one way to ensure this.
Definition at line 69 of file Recycler.h.
Referenced by llvm::RecyclingAllocator< BumpPtrAllocator, SDNode, sizeof(LargestSDNode), alignof(MostAlignedSDNode)>::~RecyclingAllocator().
|
inline |
Special case for BumpPtrAllocator which has an empty Deallocate() function.
There is no need to traverse the free list, pulling all the objects into cache.
Definition at line 81 of file Recycler.h.
|
inline |
Definition at line 99 of file Recycler.h.
Referenced by llvm::RecyclingAllocator< BumpPtrAllocator, SDNode, sizeof(LargestSDNode), alignof(MostAlignedSDNode)>::Deallocate().
void llvm::Recycler< T, Size, Align >::PrintStats | ( | ) |
Definition at line 107 of file Recycler.h.
Referenced by llvm::Recycler< llvm::MachineInstr >::Deallocate(), and llvm::RecyclingAllocator< BumpPtrAllocator, SDNode, sizeof(LargestSDNode), alignof(MostAlignedSDNode)>::PrintStats().