Coverage Report

Created: 2019-07-24 05:18

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/include/llvm/Support/RecyclingAllocator.h
Line
Count
Source
1
//==- llvm/Support/RecyclingAllocator.h - Recycling Allocator ----*- C++ -*-==//
2
//
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
// See https://llvm.org/LICENSE.txt for license information.
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
//
7
//===----------------------------------------------------------------------===//
8
//
9
// This file defines the RecyclingAllocator class.  See the doxygen comment for
10
// RecyclingAllocator for more details on the implementation.
11
//
12
//===----------------------------------------------------------------------===//
13
14
#ifndef LLVM_SUPPORT_RECYCLINGALLOCATOR_H
15
#define LLVM_SUPPORT_RECYCLINGALLOCATOR_H
16
17
#include "llvm/Support/Recycler.h"
18
19
namespace llvm {
20
21
/// RecyclingAllocator - This class wraps an Allocator, adding the
22
/// functionality of recycling deleted objects.
23
///
24
template <class AllocatorType, class T, size_t Size = sizeof(T),
25
          size_t Align = alignof(T)>
26
class RecyclingAllocator {
27
private:
28
  /// Base - Implementation details.
29
  ///
30
  Recycler<T, Size, Align> Base;
31
32
  /// Allocator - The wrapped allocator.
33
  ///
34
  AllocatorType Allocator;
35
36
public:
37
7.21M
  ~RecyclingAllocator() { Base.clear(Allocator); }
llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::PointerUnion<llvm::Value const*, llvm::PseudoSourceValue const*>, std::__1::pair<unsigned int, unsigned int> >, 32ul, 8ul>::~RecyclingAllocator()
Line
Count
Source
37
2.08k
  ~RecyclingAllocator() { Base.clear(Allocator); }
llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::~RecyclingAllocator()
Line
Count
Source
37
3.68M
  ~RecyclingAllocator() { Base.clear(Allocator); }
llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::MachineInstr*, unsigned int>, 32ul, 8ul>::~RecyclingAllocator()
Line
Count
Source
37
36.7k
  ~RecyclingAllocator() { Base.clear(Allocator); }
llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::MemoryLocation, unsigned int>, 64ul, 8ul>::~RecyclingAllocator()
Line
Count
Source
37
1.15M
  ~RecyclingAllocator() { Base.clear(Allocator); }
EarlyCSE.cpp:llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::Value*, (anonymous namespace)::EarlyCSE::LoadValue>, 48ul, 8ul>::~RecyclingAllocator()
Line
Count
Source
37
1.15M
  ~RecyclingAllocator() { Base.clear(Allocator); }
EarlyCSE.cpp:llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<(anonymous namespace)::SimpleValue, llvm::Value*>, 32ul, 8ul>::~RecyclingAllocator()
Line
Count
Source
37
1.15M
  ~RecyclingAllocator() { Base.clear(Allocator); }
llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::~RecyclingAllocator()
Line
Count
Source
37
37.9k
  ~RecyclingAllocator() { Base.clear(Allocator); }
38
39
  /// Allocate - Return a pointer to storage for an object of type
40
  /// SubClass. The storage may be either newly allocated or recycled.
41
  ///
42
  template<class SubClass>
43
74.7M
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::ScopedHashTableVal<llvm::PointerUnion<llvm::Value const*, llvm::PseudoSourceValue const*>, std::__1::pair<unsigned int, unsigned int> >* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::PointerUnion<llvm::Value const*, llvm::PseudoSourceValue const*>, std::__1::pair<unsigned int, unsigned int> >, 32ul, 8ul>::Allocate<llvm::ScopedHashTableVal<llvm::PointerUnion<llvm::Value const*, llvm::PseudoSourceValue const*>, std::__1::pair<unsigned int, unsigned int> > >()
Line
Count
Source
43
1.10k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::X86MaskedScatterSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::X86MaskedScatterSDNode>()
Line
Count
Source
43
222
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::TruncSStoreSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::TruncSStoreSDNode>()
Line
Count
Source
43
48
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::TruncUSStoreSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::TruncUSStoreSDNode>()
Line
Count
Source
43
102
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::MaskedTruncSStoreSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::MaskedTruncSStoreSDNode>()
Line
Count
Source
43
36
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::MaskedTruncUSStoreSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::MaskedTruncUSStoreSDNode>()
Line
Count
Source
43
36
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::X86MaskedGatherSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::X86MaskedGatherSDNode>()
Line
Count
Source
43
642
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, DbgValueLocation, 9u, llvm::IntervalMapInfo<llvm::SlotIndex> >* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Allocate<llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, DbgValueLocation, 9u, llvm::IntervalMapInfo<llvm::SlotIndex> > >()
Line
Count
Source
43
5
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
Unexecuted instantiation: llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, DbgValueLocation, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> >* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Allocate<llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, DbgValueLocation, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> > >()
llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, llvm::LiveInterval*, 8u, llvm::IntervalMapInfo<llvm::SlotIndex> >* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Allocate<llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, llvm::LiveInterval*, 8u, llvm::IntervalMapInfo<llvm::SlotIndex> > >()
Line
Count
Source
43
992k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, llvm::LiveInterval*, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> >* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Allocate<llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, llvm::LiveInterval*, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> > >()
Line
Count
Source
43
18.4k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::ScopedHashTableVal<llvm::MachineInstr*, unsigned int>* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::MachineInstr*, unsigned int>, 32ul, 8ul>::Allocate<llvm::ScopedHashTableVal<llvm::MachineInstr*, unsigned int> >()
Line
Count
Source
43
6.86M
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, unsigned int, 9u, llvm::IntervalMapInfo<llvm::SlotIndex> >* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Allocate<llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, unsigned int, 9u, llvm::IntervalMapInfo<llvm::SlotIndex> > >()
Line
Count
Source
43
33.2k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, unsigned int, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> >* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Allocate<llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, unsigned int, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> > >()
Line
Count
Source
43
337
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
EarlyCSE.cpp:llvm::ScopedHashTableVal<(anonymous namespace)::SimpleValue, llvm::Value*>* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<(anonymous namespace)::SimpleValue, llvm::Value*>, 32ul, 8ul>::Allocate<llvm::ScopedHashTableVal<(anonymous namespace)::SimpleValue, llvm::Value*> >()
Line
Count
Source
43
15.0M
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::ScopedHashTableVal<llvm::MemoryLocation, unsigned int>* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::MemoryLocation, unsigned int>, 64ul, 8ul>::Allocate<llvm::ScopedHashTableVal<llvm::MemoryLocation, unsigned int> >()
Line
Count
Source
43
946
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
EarlyCSE.cpp:llvm::ScopedHashTableVal<llvm::Value*, (anonymous namespace)::EarlyCSE::LoadValue>* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::Value*, (anonymous namespace)::EarlyCSE::LoadValue>, 48ul, 8ul>::Allocate<llvm::ScopedHashTableVal<llvm::Value*, (anonymous namespace)::EarlyCSE::LoadValue> >()
Line
Count
Source
43
5.15M
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
DAGCombiner.cpp:llvm::IntervalMapImpl::LeafNode<long long, (anonymous namespace)::UnitT, 11u, llvm::IntervalMapHalfOpenInfo<long long> >* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Allocate<llvm::IntervalMapImpl::LeafNode<long long, (anonymous namespace)::UnitT, 11u, llvm::IntervalMapHalfOpenInfo<long long> > >()
Line
Count
Source
43
170
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
Unexecuted instantiation: DAGCombiner.cpp:llvm::IntervalMapImpl::BranchNode<long long, (anonymous namespace)::UnitT, 12u, llvm::IntervalMapHalfOpenInfo<long long> >* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Allocate<llvm::IntervalMapImpl::BranchNode<long long, (anonymous namespace)::UnitT, 12u, llvm::IntervalMapHalfOpenInfo<long long> > >()
llvm::ConstantSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::ConstantSDNode>()
Line
Count
Source
43
9.72M
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::ConstantFPSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::ConstantFPSDNode>()
Line
Count
Source
43
70.7k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::GlobalAddressSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::GlobalAddressSDNode>()
Line
Count
Source
43
1.79M
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::FrameIndexSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::FrameIndexSDNode>()
Line
Count
Source
43
487k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::JumpTableSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::JumpTableSDNode>()
Line
Count
Source
43
8.11k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::ConstantPoolSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::ConstantPoolSDNode>()
Line
Count
Source
43
203k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
Unexecuted instantiation: llvm::TargetIndexSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::TargetIndexSDNode>()
llvm::BasicBlockSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::BasicBlockSDNode>()
Line
Count
Source
43
1.23M
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::VTSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::VTSDNode>()
Line
Count
Source
43
213k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::ExternalSymbolSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::ExternalSymbolSDNode>()
Line
Count
Source
43
42.7k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::MCSymbolSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::MCSymbolSDNode>()
Line
Count
Source
43
98
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::CondCodeSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::CondCodeSDNode>()
Line
Count
Source
43
952k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::ShuffleVectorSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::ShuffleVectorSDNode>()
Line
Count
Source
43
155k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::RegisterSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::RegisterSDNode>()
Line
Count
Source
43
5.45M
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::RegisterMaskSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::RegisterMaskSDNode>()
Line
Count
Source
43
327k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::LabelSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::LabelSDNode>()
Line
Count
Source
43
12.7k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::BlockAddressSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::BlockAddressSDNode>()
Line
Count
Source
43
303
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::SrcValueSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::SrcValueSDNode>()
Line
Count
Source
43
1.64k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::MDNodeSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::MDNodeSDNode>()
Line
Count
Source
43
20.9k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::AddrSpaceCastSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::AddrSpaceCastSDNode>()
Line
Count
Source
43
228
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::SDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::SDNode>()
Line
Count
Source
43
22.4M
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::AtomicSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::AtomicSDNode>()
Line
Count
Source
43
24.1k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::MemIntrinsicSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::MemIntrinsicSDNode>()
Line
Count
Source
43
88.0k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::LifetimeSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::LifetimeSDNode>()
Line
Count
Source
43
68.1k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::LoadSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::LoadSDNode>()
Line
Count
Source
43
1.39M
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::StoreSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::StoreSDNode>()
Line
Count
Source
43
1.26M
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::MaskedLoadSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::MaskedLoadSDNode>()
Line
Count
Source
43
814
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::MaskedStoreSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::MaskedStoreSDNode>()
Line
Count
Source
43
872
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::MaskedGatherSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::MaskedGatherSDNode>()
Line
Count
Source
43
469
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::MaskedScatterSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::MaskedScatterSDNode>()
Line
Count
Source
43
174
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
llvm::MachineSDNode* llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Allocate<llvm::MachineSDNode>()
Line
Count
Source
43
671k
  SubClass *Allocate() { return Base.template Allocate<SubClass>(Allocator); }
44
45
  T *Allocate() { return Base.Allocate(Allocator); }
46
47
  /// Deallocate - Release storage for the pointed-to object. The
48
  /// storage will be kept track of and may be recycled.
49
  ///
50
  template<class SubClass>
51
74.7M
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Deallocate<llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, llvm::LiveInterval*, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> > >(llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, llvm::LiveInterval*, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> >*)
Line
Count
Source
51
18.4k
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Deallocate<llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, llvm::LiveInterval*, 8u, llvm::IntervalMapInfo<llvm::SlotIndex> > >(llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, llvm::LiveInterval*, 8u, llvm::IntervalMapInfo<llvm::SlotIndex> >*)
Line
Count
Source
51
992k
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::PointerUnion<llvm::Value const*, llvm::PseudoSourceValue const*>, std::__1::pair<unsigned int, unsigned int> >, 32ul, 8ul>::Deallocate<llvm::ScopedHashTableVal<llvm::PointerUnion<llvm::Value const*, llvm::PseudoSourceValue const*>, std::__1::pair<unsigned int, unsigned int> > >(llvm::ScopedHashTableVal<llvm::PointerUnion<llvm::Value const*, llvm::PseudoSourceValue const*>, std::__1::pair<unsigned int, unsigned int> >*)
Line
Count
Source
51
1.10k
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
Unexecuted instantiation: void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Deallocate<llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, DbgValueLocation, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> > >(llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, DbgValueLocation, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> >*)
void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Deallocate<llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, DbgValueLocation, 9u, llvm::IntervalMapInfo<llvm::SlotIndex> > >(llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, DbgValueLocation, 9u, llvm::IntervalMapInfo<llvm::SlotIndex> >*)
Line
Count
Source
51
5
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::MachineInstr*, unsigned int>, 32ul, 8ul>::Deallocate<llvm::ScopedHashTableVal<llvm::MachineInstr*, unsigned int> >(llvm::ScopedHashTableVal<llvm::MachineInstr*, unsigned int>*)
Line
Count
Source
51
6.86M
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Deallocate<llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, unsigned int, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> > >(llvm::IntervalMapImpl::BranchNode<llvm::SlotIndex, unsigned int, 12u, llvm::IntervalMapInfo<llvm::SlotIndex> >*)
Line
Count
Source
51
337
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Deallocate<llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, unsigned int, 9u, llvm::IntervalMapInfo<llvm::SlotIndex> > >(llvm::IntervalMapImpl::LeafNode<llvm::SlotIndex, unsigned int, 9u, llvm::IntervalMapInfo<llvm::SlotIndex> >*)
Line
Count
Source
51
33.2k
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::MemoryLocation, unsigned int>, 64ul, 8ul>::Deallocate<llvm::ScopedHashTableVal<llvm::MemoryLocation, unsigned int> >(llvm::ScopedHashTableVal<llvm::MemoryLocation, unsigned int>*)
Line
Count
Source
51
946
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
EarlyCSE.cpp:void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<llvm::Value*, (anonymous namespace)::EarlyCSE::LoadValue>, 48ul, 8ul>::Deallocate<llvm::ScopedHashTableVal<llvm::Value*, (anonymous namespace)::EarlyCSE::LoadValue> >(llvm::ScopedHashTableVal<llvm::Value*, (anonymous namespace)::EarlyCSE::LoadValue>*)
Line
Count
Source
51
5.15M
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
EarlyCSE.cpp:void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::ScopedHashTableVal<(anonymous namespace)::SimpleValue, llvm::Value*>, 32ul, 8ul>::Deallocate<llvm::ScopedHashTableVal<(anonymous namespace)::SimpleValue, llvm::Value*> >(llvm::ScopedHashTableVal<(anonymous namespace)::SimpleValue, llvm::Value*>*)
Line
Count
Source
51
15.0M
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
DAGCombiner.cpp:void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Deallocate<llvm::IntervalMapImpl::LeafNode<long long, (anonymous namespace)::UnitT, 11u, llvm::IntervalMapHalfOpenInfo<long long> > >(llvm::IntervalMapImpl::LeafNode<long long, (anonymous namespace)::UnitT, 11u, llvm::IntervalMapHalfOpenInfo<long long> >*)
Line
Count
Source
51
170
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
Unexecuted instantiation: DAGCombiner.cpp:void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, char, 192ul, 64ul>::Deallocate<llvm::IntervalMapImpl::BranchNode<long long, (anonymous namespace)::UnitT, 12u, llvm::IntervalMapHalfOpenInfo<long long> > >(llvm::IntervalMapImpl::BranchNode<long long, (anonymous namespace)::UnitT, 12u, llvm::IntervalMapHalfOpenInfo<long long> >*)
void llvm::RecyclingAllocator<llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>, llvm::SDNode, 104ul, 8ul>::Deallocate<llvm::SDNode>(llvm::SDNode*)
Line
Count
Source
51
46.6M
  void Deallocate(SubClass* E) { return Base.Deallocate(Allocator, E); }
52
53
  void PrintStats() {
54
    Allocator.PrintStats();
55
    Base.PrintStats();
56
  }
57
};
58
59
}
60
61
template<class AllocatorType, class T, size_t Size, size_t Align>
62
inline void *operator new(size_t size,
63
                          llvm::RecyclingAllocator<AllocatorType,
64
                                                   T, Size, Align> &Allocator) {
65
  assert(size <= Size && "allocation size exceeded");
66
  return Allocator.Allocate();
67
}
68
69
template<class AllocatorType, class T, size_t Size, size_t Align>
70
inline void operator delete(void *E,
71
                            llvm::RecyclingAllocator<AllocatorType,
72
                                                     T, Size, Align> &A) {
73
  A.Deallocate(E);
74
}
75
76
#endif