/src/keystone/llvm/include/llvm/ADT/SmallVector.h
Line | Count | Source (jump to first uncovered line) |
1 | | //===- llvm/ADT/SmallVector.h - 'Normally small' vectors --------*- C++ -*-===// |
2 | | // |
3 | | // The LLVM Compiler Infrastructure |
4 | | // |
5 | | // This file is distributed under the University of Illinois Open Source |
6 | | // License. See LICENSE.TXT for details. |
7 | | // |
8 | | //===----------------------------------------------------------------------===// |
9 | | // |
10 | | // This file defines the SmallVector class. |
11 | | // |
12 | | //===----------------------------------------------------------------------===// |
13 | | |
14 | | #ifndef LLVM_ADT_SMALLVECTOR_H |
15 | | #define LLVM_ADT_SMALLVECTOR_H |
16 | | |
17 | | #include "llvm/ADT/iterator_range.h" |
18 | | #include "llvm/Support/AlignOf.h" |
19 | | #include "llvm/Support/Compiler.h" |
20 | | #include "llvm/Support/MathExtras.h" |
21 | | #include "llvm/Support/type_traits.h" |
22 | | #include <algorithm> |
23 | | #include <cassert> |
24 | | #include <cstddef> |
25 | | #include <cstdlib> |
26 | | #include <cstring> |
27 | | #include <initializer_list> |
28 | | #include <iterator> |
29 | | #include <memory> |
30 | | |
31 | | namespace llvm_ks { |
32 | | |
33 | | /// This is all the non-templated stuff common to all SmallVectors. |
34 | | class SmallVectorBase { |
35 | | protected: |
36 | | void *BeginX, *EndX, *CapacityX; |
37 | | |
38 | | protected: |
39 | | SmallVectorBase(void *FirstEl, size_t Size) |
40 | 133M | : BeginX(FirstEl), EndX(FirstEl), CapacityX((char*)FirstEl+Size) {} |
41 | | |
42 | | /// This is an implementation of the grow() method which only works |
43 | | /// on POD-like data types and is out of line to reduce code duplication. |
44 | | void grow_pod(void *FirstEl, size_t MinSizeInBytes, size_t TSize); |
45 | | |
46 | | public: |
47 | | /// This returns size()*sizeof(T). |
48 | 147k | size_t size_in_bytes() const { |
49 | 147k | return size_t((char*)EndX - (char*)BeginX); |
50 | 147k | } |
51 | | |
52 | | /// capacity_in_bytes - This returns capacity()*sizeof(T). |
53 | 147k | size_t capacity_in_bytes() const { |
54 | 147k | return size_t((char*)CapacityX - (char*)BeginX); |
55 | 147k | } |
56 | | |
57 | 3.30G | bool LLVM_ATTRIBUTE_UNUSED_RESULT empty() const { return BeginX == EndX; } |
58 | | }; |
59 | | |
60 | | template <typename T, unsigned N> struct SmallVectorStorage; |
61 | | |
62 | | /// This is the part of SmallVectorTemplateBase which does not depend on whether |
63 | | /// the type T is a POD. The extra dummy template argument is used by ArrayRef |
64 | | /// to avoid unnecessarily requiring T to be complete. |
65 | | template <typename T, typename = void> |
66 | | class SmallVectorTemplateCommon : public SmallVectorBase { |
67 | | private: |
68 | | template <typename, unsigned> friend struct SmallVectorStorage; |
69 | | |
70 | | // Allocate raw space for N elements of type T. If T has a ctor or dtor, we |
71 | | // don't want it to be automatically run, so we need to represent the space as |
72 | | // something else. Use an array of char of sufficient alignment. |
73 | | typedef llvm_ks::AlignedCharArrayUnion<T> U; |
74 | | U FirstEl; |
75 | | // Space after 'FirstEl' is clobbered, do not add any instance vars after it. |
76 | | |
77 | | protected: |
78 | 133M | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} llvm_ks::SmallVectorTemplateCommon<char, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 14.2M | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 377 | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDwarfFile, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 377 | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<void*, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 774k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, unsigned long>, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 774k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDataFragment*, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 129k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 340k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSection*, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 56.5k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 350k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 129k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 104M | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 671k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 776k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<bool, void>::SmallVectorTemplateCommon(unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmRewrite, void>::SmallVectorTemplateCommon(unsigned long) llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 1.04M | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 5.60M | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 1.57M | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 129k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::SmallVectorTemplateCommon(unsigned long) llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, unsigned int>, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 1.28M | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 1.30M | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<unsigned char, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 341 | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 626 | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 9.68k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonInstr, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 16.6k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 5.46k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCInst, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 16.4k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 34.5k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 58.6k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 25 | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::RISCVMatInt::Inst, void>::SmallVectorTemplateCommon(unsigned long) llvm_ks::SmallVectorTemplateCommon<llvm_ks::FeatureBitset, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 25.0k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 1.54k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCLOHDirective, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 129k | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::SmallVectorTemplateCommon(unsigned long) Line | Count | Source | 78 | 578 | SmallVectorTemplateCommon(size_t Size) : SmallVectorBase(&FirstEl, Size) {} |
|
79 | | |
80 | 147k | void grow_pod(size_t MinSizeInBytes, size_t TSize) { |
81 | 147k | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); |
82 | 147k | } llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 121 | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 121 | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 121 | } |
llvm_ks::SmallVectorTemplateCommon<char, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 69.2k | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 69.2k | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 69.2k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 9.00k | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 9.00k | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 9.00k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, void>::grow_pod(unsigned long, unsigned long) llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, unsigned long>, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 132 | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 132 | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 132 | } |
llvm_ks::SmallVectorTemplateCommon<void*, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 4.26k | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 4.26k | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 4.26k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 16.0k | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 16.0k | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 16.0k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDataFragment*, void>::grow_pod(unsigned long, unsigned long) llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSection*, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 1 | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 1 | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 1 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmRewrite, void>::grow_pod(unsigned long, unsigned long) llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 28.8k | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 28.8k | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 28.8k | } |
llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 104 | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 104 | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 104 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<bool, void>::grow_pod(unsigned long, unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, bool>, void>::grow_pod(unsigned long, unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, void>::grow_pod(unsigned long, unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::grow_pod(unsigned long, unsigned long) llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 8.78k | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 8.78k | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 8.78k | } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, unsigned int>, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 203 | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 203 | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 203 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned char, void>::grow_pod(unsigned long, unsigned long) llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 120 | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 120 | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 120 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::grow_pod(unsigned long, unsigned long) llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonInstr, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 172 | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 172 | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 172 | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 9.14k | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 9.14k | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 9.14k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 384 | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 384 | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 384 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::FeatureBitset, void>::grow_pod(unsigned long, unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::RISCVMatInt::Inst, void>::grow_pod(unsigned long, unsigned long) llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::grow_pod(unsigned long, unsigned long) Line | Count | Source | 80 | 429 | void grow_pod(size_t MinSizeInBytes, size_t TSize) { | 81 | 429 | SmallVectorBase::grow_pod(&FirstEl, MinSizeInBytes, TSize); | 82 | 429 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::grow_pod(unsigned long, unsigned long) |
83 | | |
84 | | /// Return true if this is a smallvector which has not had dynamic |
85 | | /// memory allocated for it. |
86 | 133M | bool isSmall() const { |
87 | 133M | return BeginX == static_cast<const void*>(&FirstEl); |
88 | 133M | } llvm_ks::SmallVectorTemplateCommon<char, void>::isSmall() const Line | Count | Source | 86 | 14.2M | bool isSmall() const { | 87 | 14.2M | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 14.2M | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::isSmall() const Line | Count | Source | 86 | 341k | bool isSmall() const { | 87 | 341k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 341k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::isSmall() const Line | Count | Source | 86 | 340k | bool isSmall() const { | 87 | 340k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 340k | } |
llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::isSmall() const Line | Count | Source | 86 | 377 | bool isSmall() const { | 87 | 377 | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 377 | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDwarfFile, void>::isSmall() const Line | Count | Source | 86 | 377 | bool isSmall() const { | 87 | 377 | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 377 | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::isSmall() const Line | Count | Source | 86 | 129k | bool isSmall() const { | 87 | 129k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 129k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCLOHDirective, void>::isSmall() const Line | Count | Source | 86 | 129k | bool isSmall() const { | 87 | 129k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 129k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::isSmall() const Line | Count | Source | 86 | 1.24M | bool isSmall() const { | 87 | 1.24M | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 1.24M | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::isSmall() const Line | Count | Source | 86 | 1.30M | bool isSmall() const { | 87 | 1.30M | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 1.30M | } |
llvm_ks::SmallVectorTemplateCommon<void*, void>::isSmall() const Line | Count | Source | 86 | 774k | bool isSmall() const { | 87 | 774k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 774k | } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, unsigned long>, void>::isSmall() const Line | Count | Source | 86 | 774k | bool isSmall() const { | 87 | 774k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 774k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDataFragment*, void>::isSmall() const Line | Count | Source | 86 | 129k | bool isSmall() const { | 87 | 129k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 129k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSection*, void>::isSmall() const Line | Count | Source | 86 | 56.5k | bool isSmall() const { | 87 | 56.5k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 56.5k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::isSmall() const Line | Count | Source | 86 | 685k | bool isSmall() const { | 87 | 685k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 685k | } |
llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::isSmall() const Line | Count | Source | 86 | 776k | bool isSmall() const { | 87 | 776k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 776k | } |
llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::isSmall() const Line | Count | Source | 86 | 104M | bool isSmall() const { | 87 | 104M | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 104M | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmRewrite, void>::isSmall() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<bool, void>::isSmall() const llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, void>::isSmall() const Line | Count | Source | 86 | 5.60M | bool isSmall() const { | 87 | 5.60M | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 5.60M | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::isSmall() const Line | Count | Source | 86 | 1.57M | bool isSmall() const { | 87 | 1.57M | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 1.57M | } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, void>::isSmall() const Line | Count | Source | 86 | 129k | bool isSmall() const { | 87 | 129k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 129k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::isSmall() const llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, unsigned int>, void>::isSmall() const Line | Count | Source | 86 | 1.28M | bool isSmall() const { | 87 | 1.28M | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 1.28M | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::isSmall() const Line | Count | Source | 86 | 1.54k | bool isSmall() const { | 87 | 1.54k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 1.54k | } |
llvm_ks::SmallVectorTemplateCommon<unsigned char, void>::isSmall() const Line | Count | Source | 86 | 341 | bool isSmall() const { | 87 | 341 | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 341 | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::isSmall() const Line | Count | Source | 86 | 626 | bool isSmall() const { | 87 | 626 | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 626 | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonInstr, void>::isSmall() const Line | Count | Source | 86 | 16.6k | bool isSmall() const { | 87 | 16.6k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 16.6k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::isSmall() const Line | Count | Source | 86 | 12.9k | bool isSmall() const { | 87 | 12.9k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 12.9k | } |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::isSmall() const Line | Count | Source | 86 | 5.46k | bool isSmall() const { | 87 | 5.46k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 5.46k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCInst, void>::isSmall() const Line | Count | Source | 86 | 16.4k | bool isSmall() const { | 87 | 16.4k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 16.4k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, void>::isSmall() const X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, void>::isSmall() const Line | Count | Source | 86 | 34.5k | bool isSmall() const { | 87 | 34.5k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 34.5k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, void>::isSmall() const Line | Count | Source | 86 | 58.6k | bool isSmall() const { | 87 | 58.6k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 58.6k | } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void>::isSmall() const Line | Count | Source | 86 | 25 | bool isSmall() const { | 87 | 25 | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 25 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::RISCVMatInt::Inst, void>::isSmall() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::FeatureBitset, void>::isSmall() const Line | Count | Source | 86 | 25.0k | bool isSmall() const { | 87 | 25.0k | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 25.0k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::isSmall() const Line | Count | Source | 86 | 578 | bool isSmall() const { | 87 | 578 | return BeginX == static_cast<const void*>(&FirstEl); | 88 | 578 | } |
|
89 | | |
90 | | /// Put this vector in a state of being small. |
91 | 0 | void resetToSmall() { |
92 | 0 | BeginX = EndX = CapacityX = &FirstEl; |
93 | 0 | } Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::resetToSmall() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<char, void>::resetToSmall() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::resetToSmall() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::resetToSmall() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::resetToSmall() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::resetToSmall() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::resetToSmall() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::resetToSmall() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::resetToSmall() |
94 | | |
95 | 2.49G | void setEnd(T *P) { this->EndX = P; } llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::setEnd(llvm_ks::MCOperand*) Line | Count | Source | 95 | 923k | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<char, void>::setEnd(char*) Line | Count | Source | 95 | 2.07G | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::setEnd(llvm_ks::MCSymbol**) Line | Count | Source | 95 | 373k | void setEnd(T *P) { this->EndX = P; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCLOHDirective, void>::setEnd(llvm_ks::MCLOHDirective*) llvm_ks::SmallVectorTemplateCommon<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, void>::setEnd(std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >*) Line | Count | Source | 95 | 129k | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, unsigned long>, void>::setEnd(std::__1::pair<void*, unsigned long>*) Line | Count | Source | 95 | 132 | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<void*, void>::setEnd(void**) Line | Count | Source | 95 | 977k | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::setEnd(llvm_ks::AsmToken*) Line | Count | Source | 95 | 405M | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::setEnd(llvm_ks::SMFixIt*) Line | Count | Source | 95 | 1.30M | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::setEnd(llvm_ks::MCFixup*) Line | Count | Source | 95 | 685k | void setEnd(T *P) { this->EndX = P; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDataFragment*, void>::setEnd(llvm_ks::MCDataFragment**) llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSection*, void>::setEnd(llvm_ks::MCSection**) Line | Count | Source | 95 | 58.5k | void setEnd(T *P) { this->EndX = P; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmRewrite, void>::setEnd(llvm_ks::AsmRewrite*) llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::setEnd(llvm_ks::SMLoc*) Line | Count | Source | 95 | 202k | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::setEnd(unsigned int*) Line | Count | Source | 95 | 46.7k | void setEnd(T *P) { this->EndX = P; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<bool, void>::setEnd(bool*) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::setEnd(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, bool>, void>::setEnd(std::__1::pair<void*, bool>*) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, void>::setEnd(std::__1::pair<unsigned int, llvm_ks::MCFragment*>*) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::setEnd(unsigned long*) llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::setEnd(llvm_ks::StringRef*) Line | Count | Source | 95 | 2.15M | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, unsigned int>, void>::setEnd(std::__1::pair<unsigned int, unsigned int>*) Line | Count | Source | 95 | 11.2k | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::setEnd(std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*) Line | Count | Source | 95 | 2.03M | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<unsigned char, void>::setEnd(unsigned char*) Line | Count | Source | 95 | 130 | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::setEnd(llvm_ks::HexagonMCChecker::NewSense*) Line | Count | Source | 95 | 2.12k | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::setEnd(llvm_ks::DuplexCandidate*) Line | Count | Source | 95 | 3.23k | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonInstr, void>::setEnd(llvm_ks::HexagonInstr*) Line | Count | Source | 95 | 20.1k | void setEnd(T *P) { this->EndX = P; } |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::setEnd(std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >*) Line | Count | Source | 95 | 10.9k | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCInst, void>::setEnd(llvm_ks::MCInst*) Line | Count | Source | 95 | 24.2k | void setEnd(T *P) { this->EndX = P; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, void>::setEnd(std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >*) X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, void>::setEnd(std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>*) Line | Count | Source | 95 | 360k | void setEnd(T *P) { this->EndX = P; } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, void>::setEnd((anonymous namespace)::X86AsmParser::InfixCalculatorTok*) Line | Count | Source | 95 | 117k | void setEnd(T *P) { this->EndX = P; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void>::setEnd(std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >*) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::FeatureBitset, void>::setEnd(llvm_ks::FeatureBitset*) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::RISCVMatInt::Inst, void>::setEnd(llvm_ks::RISCVMatInt::Inst*) llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::setEnd(llvm_ks::ConstantPoolEntry*) Line | Count | Source | 95 | 6.53k | void setEnd(T *P) { this->EndX = P; } |
llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::setEnd(llvm_regmatch_t*) Line | Count | Source | 95 | 578 | void setEnd(T *P) { this->EndX = P; } |
|
96 | | public: |
97 | | typedef size_t size_type; |
98 | | typedef ptrdiff_t difference_type; |
99 | | typedef T value_type; |
100 | | typedef T *iterator; |
101 | | typedef const T *const_iterator; |
102 | | |
103 | | typedef std::reverse_iterator<const_iterator> const_reverse_iterator; |
104 | | typedef std::reverse_iterator<iterator> reverse_iterator; |
105 | | |
106 | | typedef T &reference; |
107 | | typedef const T &const_reference; |
108 | | typedef T *pointer; |
109 | | typedef const T *const_pointer; |
110 | | |
111 | | // forward iterator creation methods. |
112 | | LLVM_ATTRIBUTE_ALWAYS_INLINE |
113 | 765M | iterator begin() { return (iterator)this->BeginX; } llvm_ks::SmallVectorTemplateCommon<char, void>::begin() Line | Count | Source | 113 | 20.6M | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::begin() Line | Count | Source | 113 | 1.84M | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::begin() Line | Count | Source | 113 | 735k | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::begin() Line | Count | Source | 113 | 377 | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDwarfFile, void>::begin() Line | Count | Source | 113 | 377 | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::begin() Line | Count | Source | 113 | 422k | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCLOHDirective, void>::begin() Line | Count | Source | 113 | 129k | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::begin() Line | Count | Source | 113 | 605M | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::begin() Line | Count | Source | 113 | 2.61M | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<void*, void>::begin() Line | Count | Source | 113 | 5.31M | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, unsigned long>, void>::begin() Line | Count | Source | 113 | 4.90M | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDataFragment*, void>::begin() Line | Count | Source | 113 | 129k | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSection*, void>::begin() Line | Count | Source | 113 | 173k | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::begin() Line | Count | Source | 113 | 1.25M | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::begin() Line | Count | Source | 113 | 813k | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::begin() Line | Count | Source | 113 | 108M | iterator begin() { return (iterator)this->BeginX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, bool>, void>::begin() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<bool, void>::begin() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmRewrite, void>::begin() llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, void>::begin() Line | Count | Source | 113 | 5.60M | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::begin() Line | Count | Source | 113 | 5.10M | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, void>::begin() Line | Count | Source | 113 | 129k | iterator begin() { return (iterator)this->BeginX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::begin() llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, unsigned int>, void>::begin() Line | Count | Source | 113 | 1.28M | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::begin() Line | Count | Source | 113 | 2.48k | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<unsigned char, void>::begin() Line | Count | Source | 113 | 341 | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::begin() Line | Count | Source | 113 | 663 | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonInstr, void>::begin() Line | Count | Source | 113 | 94.4k | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::begin() Line | Count | Source | 113 | 16.1k | iterator begin() { return (iterator)this->BeginX; } |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::begin() Line | Count | Source | 113 | 6.73k | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCInst, void>::begin() Line | Count | Source | 113 | 40.7k | iterator begin() { return (iterator)this->BeginX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, void>::begin() X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, void>::begin() Line | Count | Source | 113 | 116k | iterator begin() { return (iterator)this->BeginX; } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, void>::begin() Line | Count | Source | 113 | 186k | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void>::begin() Line | Count | Source | 113 | 25 | iterator begin() { return (iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::FeatureBitset, void>::begin() Line | Count | Source | 113 | 25.0k | iterator begin() { return (iterator)this->BeginX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::RISCVMatInt::Inst, void>::begin() llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::begin() Line | Count | Source | 113 | 3.46k | iterator begin() { return (iterator)this->BeginX; } |
|
114 | | LLVM_ATTRIBUTE_ALWAYS_INLINE |
115 | 2.04G | const_iterator begin() const { return (const_iterator)this->BeginX; } llvm_ks::SmallVectorTemplateCommon<char, void>::begin() const Line | Count | Source | 115 | 554M | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::begin() const Line | Count | Source | 115 | 3.72M | const_iterator begin() const { return (const_iterator)this->BeginX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::begin() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCLOHDirective, void>::begin() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, void>::begin() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::begin() const Line | Count | Source | 115 | 7.44M | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<void*, void>::begin() const Line | Count | Source | 115 | 572k | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::begin() const Line | Count | Source | 115 | 1.45G | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::begin() const Line | Count | Source | 115 | 2.28M | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDwarfFile, void>::begin() const Line | Count | Source | 115 | 371 | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::begin() const Line | Count | Source | 115 | 978k | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::begin() const Line | Count | Source | 115 | 1.59M | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::begin() const Line | Count | Source | 115 | 224 | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::begin() const Line | Count | Source | 115 | 23.5M | const_iterator begin() const { return (const_iterator)this->BeginX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::begin() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, bool>, void>::begin() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<bool, void>::begin() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::begin() const llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, unsigned int>, void>::begin() const Line | Count | Source | 115 | 2.56M | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonInstr, void>::begin() const Line | Count | Source | 115 | 18.8k | const_iterator begin() const { return (const_iterator)this->BeginX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::begin() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::begin() const Line | Count | Source | 115 | 9.59k | const_iterator begin() const { return (const_iterator)this->BeginX; } |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::begin() const Line | Count | Source | 115 | 9 | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCInst, void>::begin() const Line | Count | Source | 115 | 51.5k | const_iterator begin() const { return (const_iterator)this->BeginX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, void>::begin() const X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, void>::begin() const Line | Count | Source | 115 | 164k | const_iterator begin() const { return (const_iterator)this->BeginX; } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, void>::begin() const Line | Count | Source | 115 | 215k | const_iterator begin() const { return (const_iterator)this->BeginX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void>::begin() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::RISCVMatInt::Inst, void>::begin() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::begin() const Line | Count | Source | 115 | 48 | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSection*, void>::begin() const Line | Count | Source | 115 | 230k | const_iterator begin() const { return (const_iterator)this->BeginX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::begin() const Line | Count | Source | 115 | 2.89k | const_iterator begin() const { return (const_iterator)this->BeginX; } |
|
116 | | LLVM_ATTRIBUTE_ALWAYS_INLINE |
117 | 7.63G | iterator end() { return (iterator)this->EndX; } llvm_ks::SmallVectorTemplateCommon<char, void>::end() Line | Count | Source | 117 | 6.24G | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::end() Line | Count | Source | 117 | 2.30M | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::end() Line | Count | Source | 117 | 1.70M | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::end() Line | Count | Source | 117 | 377 | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDwarfFile, void>::end() Line | Count | Source | 117 | 377 | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::end() Line | Count | Source | 117 | 1.16M | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCLOHDirective, void>::end() Line | Count | Source | 117 | 129k | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, void>::end() Line | Count | Source | 117 | 2.89M | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, unsigned long>, void>::end() Line | Count | Source | 117 | 4.90M | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<void*, void>::end() Line | Count | Source | 117 | 6.28M | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::end() Line | Count | Source | 117 | 1.24G | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::end() Line | Count | Source | 117 | 6.54M | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDataFragment*, void>::end() Line | Count | Source | 117 | 129k | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSection*, void>::end() Line | Count | Source | 117 | 173k | iterator end() { return (iterator)this->EndX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmRewrite, void>::end() llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::end() Line | Count | Source | 117 | 897k | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::end() Line | Count | Source | 117 | 1.13M | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::end() Line | Count | Source | 117 | 108M | iterator end() { return (iterator)this->EndX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<bool, void>::end() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, bool>, void>::end() llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, void>::end() Line | Count | Source | 117 | 5.60M | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::end() Line | Count | Source | 117 | 6.15M | iterator end() { return (iterator)this->EndX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::end() llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, unsigned int>, void>::end() Line | Count | Source | 117 | 1.30M | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::end() Line | Count | Source | 117 | 15.3k | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<unsigned char, void>::end() Line | Count | Source | 117 | 601 | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::end() Line | Count | Source | 117 | 4.87k | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonInstr, void>::end() Line | Count | Source | 117 | 195k | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::end() Line | Count | Source | 117 | 16.1k | iterator end() { return (iterator)this->EndX; } |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::end() Line | Count | Source | 117 | 46.5k | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCInst, void>::end() Line | Count | Source | 117 | 68.6k | iterator end() { return (iterator)this->EndX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, void>::end() X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, void>::end() Line | Count | Source | 117 | 234k | iterator end() { return (iterator)this->EndX; } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, void>::end() Line | Count | Source | 117 | 780k | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void>::end() Line | Count | Source | 117 | 25 | iterator end() { return (iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::FeatureBitset, void>::end() Line | Count | Source | 117 | 25.0k | iterator end() { return (iterator)this->EndX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::RISCVMatInt::Inst, void>::end() llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::end() Line | Count | Source | 117 | 1.15k | iterator end() { return (iterator)this->EndX; } |
|
118 | | LLVM_ATTRIBUTE_ALWAYS_INLINE |
119 | 2.38G | const_iterator end() const { return (const_iterator)this->EndX; } llvm_ks::SmallVectorTemplateCommon<char, void>::end() const Line | Count | Source | 119 | 546M | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::end() const Line | Count | Source | 119 | 2.66M | const_iterator end() const { return (const_iterator)this->EndX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::end() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCLOHDirective, void>::end() const llvm_ks::SmallVectorTemplateCommon<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, void>::end() const Line | Count | Source | 119 | 1.07G | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::end() const Line | Count | Source | 119 | 7.44M | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<void*, void>::end() const Line | Count | Source | 119 | 572k | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::end() const Line | Count | Source | 119 | 726M | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::end() const Line | Count | Source | 119 | 1.14M | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDwarfFile, void>::end() const Line | Count | Source | 119 | 371 | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::end() const Line | Count | Source | 119 | 882k | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::end() const Line | Count | Source | 119 | 1.41M | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::end() const Line | Count | Source | 119 | 224 | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::end() const Line | Count | Source | 119 | 19.5M | const_iterator end() const { return (const_iterator)this->EndX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::end() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, bool>, void>::end() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<bool, void>::end() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::end() const llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, unsigned int>, void>::end() const Line | Count | Source | 119 | 1.28M | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonInstr, void>::end() const Line | Count | Source | 119 | 18.8k | const_iterator end() const { return (const_iterator)this->EndX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::end() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::end() const Line | Count | Source | 119 | 9.59k | const_iterator end() const { return (const_iterator)this->EndX; } |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::end() const Line | Count | Source | 119 | 5 | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCInst, void>::end() const Line | Count | Source | 119 | 51.5k | const_iterator end() const { return (const_iterator)this->EndX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, void>::end() const X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, void>::end() const Line | Count | Source | 119 | 164k | const_iterator end() const { return (const_iterator)this->EndX; } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, void>::end() const Line | Count | Source | 119 | 215k | const_iterator end() const { return (const_iterator)this->EndX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void>::end() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::RISCVMatInt::Inst, void>::end() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::end() const Line | Count | Source | 119 | 36 | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSection*, void>::end() const Line | Count | Source | 119 | 230k | const_iterator end() const { return (const_iterator)this->EndX; } |
llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::end() const Line | Count | Source | 119 | 2.31k | const_iterator end() const { return (const_iterator)this->EndX; } |
|
120 | | protected: |
121 | 2.07G | iterator capacity_ptr() { return (iterator)this->CapacityX; } Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::capacity_ptr() llvm_ks::SmallVectorTemplateCommon<char, void>::capacity_ptr() Line | Count | Source | 121 | 2.07G | iterator capacity_ptr() { return (iterator)this->CapacityX; } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::capacity_ptr() llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::capacity_ptr() Line | Count | Source | 121 | 1.30M | iterator capacity_ptr() { return (iterator)this->CapacityX; } |
|
122 | 3.15M | const_iterator capacity_ptr() const { return (const_iterator)this->CapacityX;} llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::capacity_ptr() const Line | Count | Source | 122 | 92.6k | const_iterator capacity_ptr() const { return (const_iterator)this->CapacityX;} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCLOHDirective, void>::capacity_ptr() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::capacity_ptr() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::capacity_ptr() const Line | Count | Source | 122 | 204k | const_iterator capacity_ptr() const { return (const_iterator)this->CapacityX;} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::capacity_ptr() const llvm_ks::SmallVectorTemplateCommon<char, void>::capacity_ptr() const Line | Count | Source | 122 | 2.63M | const_iterator capacity_ptr() const { return (const_iterator)this->CapacityX;} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::capacity_ptr() const Line | Count | Source | 122 | 180k | const_iterator capacity_ptr() const { return (const_iterator)this->CapacityX;} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::capacity_ptr() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::capacity_ptr() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, bool>, void>::capacity_ptr() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::capacity_ptr() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::capacity_ptr() const llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::capacity_ptr() const Line | Count | Source | 122 | 47.1k | const_iterator capacity_ptr() const { return (const_iterator)this->CapacityX;} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::capacity_ptr() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::capacity_ptr() const Line | Count | Source | 122 | 2 | const_iterator capacity_ptr() const { return (const_iterator)this->CapacityX;} |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::capacity_ptr() const Line | Count | Source | 122 | 4 | const_iterator capacity_ptr() const { return (const_iterator)this->CapacityX;} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCInst, void>::capacity_ptr() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, void>::capacity_ptr() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void>::capacity_ptr() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::capacity_ptr() const Line | Count | Source | 122 | 12 | const_iterator capacity_ptr() const { return (const_iterator)this->CapacityX;} |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::capacity_ptr() const Line | Count | Source | 122 | 123 | const_iterator capacity_ptr() const { return (const_iterator)this->CapacityX;} |
llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::capacity_ptr() const Line | Count | Source | 122 | 578 | const_iterator capacity_ptr() const { return (const_iterator)this->CapacityX;} |
|
123 | | public: |
124 | | |
125 | | // reverse iterator creation methods. |
126 | | reverse_iterator rbegin() { return reverse_iterator(end()); } |
127 | | const_reverse_iterator rbegin() const{ return const_reverse_iterator(end()); } |
128 | | reverse_iterator rend() { return reverse_iterator(begin()); } |
129 | | const_reverse_iterator rend() const { return const_reverse_iterator(begin());} |
130 | | |
131 | | LLVM_ATTRIBUTE_ALWAYS_INLINE |
132 | 1.30G | size_type size() const { return end()-begin(); } llvm_ks::SmallVectorTemplateCommon<char, void>::size() const Line | Count | Source | 132 | 544M | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::size() const Line | Count | Source | 132 | 2.54M | size_type size() const { return end()-begin(); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::size() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCLOHDirective, void>::size() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, void>::size() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::size() const Line | Count | Source | 132 | 7.44M | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<void*, void>::size() const Line | Count | Source | 132 | 572k | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::size() const Line | Count | Source | 132 | 726M | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::size() const Line | Count | Source | 132 | 1.14M | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDwarfFile, void>::size() const Line | Count | Source | 132 | 371 | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::size() const Line | Count | Source | 132 | 854k | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::size() const Line | Count | Source | 132 | 1.41M | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::size() const Line | Count | Source | 132 | 224 | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::size() const Line | Count | Source | 132 | 19.5M | size_type size() const { return end()-begin(); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::size() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, bool>, void>::size() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<bool, void>::size() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::size() const llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, unsigned int>, void>::size() const Line | Count | Source | 132 | 1.28M | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonInstr, void>::size() const Line | Count | Source | 132 | 18.8k | size_type size() const { return end()-begin(); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::size() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::size() const Line | Count | Source | 132 | 9.59k | size_type size() const { return end()-begin(); } |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::size() const Line | Count | Source | 132 | 5 | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCInst, void>::size() const Line | Count | Source | 132 | 51.5k | size_type size() const { return end()-begin(); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, void>::size() const X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, void>::size() const Line | Count | Source | 132 | 164k | size_type size() const { return end()-begin(); } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, void>::size() const Line | Count | Source | 132 | 215k | size_type size() const { return end()-begin(); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void>::size() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::RISCVMatInt::Inst, void>::size() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::size() const Line | Count | Source | 132 | 24 | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSection*, void>::size() const Line | Count | Source | 132 | 230k | size_type size() const { return end()-begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::size() const Line | Count | Source | 132 | 2.31k | size_type size() const { return end()-begin(); } |
|
133 | | size_type max_size() const { return size_type(-1) / sizeof(T); } |
134 | | |
135 | | /// Return the total number of elements in the currently allocated buffer. |
136 | 3.15M | size_t capacity() const { return capacity_ptr() - begin(); } llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::capacity() const Line | Count | Source | 136 | 92.6k | size_t capacity() const { return capacity_ptr() - begin(); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCLOHDirective, void>::capacity() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSymbol*, void>::capacity() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::capacity() const Line | Count | Source | 136 | 204k | size_t capacity() const { return capacity_ptr() - begin(); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::capacity() const llvm_ks::SmallVectorTemplateCommon<char, void>::capacity() const Line | Count | Source | 136 | 2.63M | size_t capacity() const { return capacity_ptr() - begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::capacity() const Line | Count | Source | 136 | 180k | size_t capacity() const { return capacity_ptr() - begin(); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::capacity() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::capacity() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, bool>, void>::capacity() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::capacity() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::capacity() const llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::capacity() const Line | Count | Source | 136 | 47.1k | size_t capacity() const { return capacity_ptr() - begin(); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::capacity() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::capacity() const Line | Count | Source | 136 | 2 | size_t capacity() const { return capacity_ptr() - begin(); } |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::capacity() const Line | Count | Source | 136 | 4 | size_t capacity() const { return capacity_ptr() - begin(); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCInst, void>::capacity() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, void>::capacity() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void>::capacity() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::ConstantPoolEntry, void>::capacity() const Line | Count | Source | 136 | 12 | size_t capacity() const { return capacity_ptr() - begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::capacity() const Line | Count | Source | 136 | 123 | size_t capacity() const { return capacity_ptr() - begin(); } |
llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::capacity() const Line | Count | Source | 136 | 578 | size_t capacity() const { return capacity_ptr() - begin(); } |
|
137 | | |
138 | | /// Return a pointer to the vector's buffer, even if empty(). |
139 | 639k | pointer data() { return pointer(begin()); } llvm_ks::SmallVectorTemplateCommon<char, void>::data() Line | Count | Source | 139 | 638k | pointer data() { return pointer(begin()); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::data() llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::data() Line | Count | Source | 139 | 578 | pointer data() { return pointer(begin()); } |
|
140 | | /// Return a pointer to the vector's buffer, even if empty(). |
141 | 2.64M | const_pointer data() const { return const_pointer(begin()); } llvm_ks::SmallVectorTemplateCommon<char, void>::data() const Line | Count | Source | 141 | 140k | const_pointer data() const { return const_pointer(begin()); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::data() const llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMFixIt, void>::data() const Line | Count | Source | 141 | 1.14M | const_pointer data() const { return const_pointer(begin()); } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::data() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::data() const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned long, void>::data() const llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, unsigned int>, void>::data() const Line | Count | Source | 141 | 1.28M | const_pointer data() const { return const_pointer(begin()); } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::data() const Line | Count | Source | 141 | 79.0k | const_pointer data() const { return const_pointer(begin()); } |
|
142 | | |
143 | | LLVM_ATTRIBUTE_ALWAYS_INLINE |
144 | 8.79M | reference operator[](size_type idx) { |
145 | 8.79M | assert(idx < size()); |
146 | 8.79M | return begin()[idx]; |
147 | 8.79M | } llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::operator[](unsigned long) Line | Count | Source | 144 | 987k | reference operator[](size_type idx) { | 145 | 987k | assert(idx < size()); | 146 | 987k | return begin()[idx]; | 147 | 987k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCFixup, void>::operator[](unsigned long) Line | Count | Source | 144 | 377k | reference operator[](size_type idx) { | 145 | 377k | assert(idx < size()); | 146 | 377k | return begin()[idx]; | 147 | 377k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::SMLoc, void>::operator[](unsigned long) Line | Count | Source | 144 | 179k | reference operator[](size_type idx) { | 145 | 179k | assert(idx < size()); | 146 | 179k | return begin()[idx]; | 147 | 179k | } |
llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::operator[](unsigned long) Line | Count | Source | 144 | 3.66M | reference operator[](size_type idx) { | 145 | 3.66M | assert(idx < size()); | 146 | 3.66M | return begin()[idx]; | 147 | 3.66M | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>::operator[](unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<void*, void>::operator[](unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<bool, void>::operator[](unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<void*, bool>, void>::operator[](unsigned long) llvm_ks::SmallVectorTemplateCommon<llvm_ks::StringRef, void>::operator[](unsigned long) Line | Count | Source | 144 | 3.24M | reference operator[](size_type idx) { | 145 | 3.24M | assert(idx < size()); | 146 | 3.24M | return begin()[idx]; | 147 | 3.24M | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<char, void>::operator[](unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::operator[](unsigned long) llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCInst, void>::operator[](unsigned long) Line | Count | Source | 144 | 20.6k | reference operator[](size_type idx) { | 145 | 20.6k | assert(idx < size()); | 146 | 20.6k | return begin()[idx]; | 147 | 20.6k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, void>::operator[](unsigned long) Line | Count | Source | 144 | 82.0k | reference operator[](size_type idx) { | 145 | 82.0k | assert(idx < size()); | 146 | 82.0k | return begin()[idx]; | 147 | 82.0k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, void>::operator[](unsigned long) Line | Count | Source | 144 | 120k | reference operator[](size_type idx) { | 145 | 120k | assert(idx < size()); | 146 | 120k | return begin()[idx]; | 147 | 120k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCSection*, void>::operator[](unsigned long) Line | Count | Source | 144 | 117k | reference operator[](size_type idx) { | 145 | 117k | assert(idx < size()); | 146 | 117k | return begin()[idx]; | 147 | 117k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_regmatch_t, void>::operator[](unsigned long) Line | Count | Source | 144 | 1.15k | reference operator[](size_type idx) { | 145 | 1.15k | assert(idx < size()); | 146 | 1.15k | return begin()[idx]; | 147 | 1.15k | } |
|
148 | | LLVM_ATTRIBUTE_ALWAYS_INLINE |
149 | 730M | const_reference operator[](size_type idx) const { |
150 | 730M | assert(idx < size()); |
151 | 730M | return begin()[idx]; |
152 | 730M | } llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::operator[](unsigned long) const Line | Count | Source | 149 | 926k | const_reference operator[](size_type idx) const { | 150 | 926k | assert(idx < size()); | 151 | 926k | return begin()[idx]; | 152 | 926k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::operator[](unsigned long) const Line | Count | Source | 149 | 725M | const_reference operator[](size_type idx) const { | 150 | 725M | assert(idx < size()); | 151 | 725M | return begin()[idx]; | 152 | 725M | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDwarfFile, void>::operator[](unsigned long) const Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<char, void>::operator[](unsigned long) const llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::operator[](unsigned long) const Line | Count | Source | 149 | 3.96M | const_reference operator[](size_type idx) const { | 150 | 3.96M | assert(idx < size()); | 151 | 3.96M | return begin()[idx]; | 152 | 3.96M | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::HexagonMCChecker::NewSense, void>::operator[](unsigned long) const |
153 | | |
154 | 198M | reference front() { |
155 | 198M | assert(!empty()); |
156 | 198M | return begin()[0]; |
157 | 198M | } llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::front() Line | Count | Source | 154 | 197M | reference front() { | 155 | 197M | assert(!empty()); | 156 | 197M | return begin()[0]; | 157 | 197M | } |
llvm_ks::SmallVectorTemplateCommon<void*, void>::front() Line | Count | Source | 154 | 404k | reference front() { | 155 | 404k | assert(!empty()); | 156 | 404k | return begin()[0]; | 157 | 404k | } |
llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, unsigned int>, void>::front() Line | Count | Source | 154 | 362 | reference front() { | 155 | 362 | assert(!empty()); | 156 | 362 | return begin()[0]; | 157 | 362 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::front() MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::front() Line | Count | Source | 154 | 1.25k | reference front() { | 155 | 1.25k | assert(!empty()); | 156 | 1.25k | return begin()[0]; | 157 | 1.25k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::front() |
158 | | const_reference front() const { |
159 | | assert(!empty()); |
160 | | return begin()[0]; |
161 | | } |
162 | | |
163 | 18.7M | reference back() { |
164 | 18.7M | assert(!empty()); |
165 | 18.7M | return end()[-1]; |
166 | 18.7M | } Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCOperand, void>::back() llvm_ks::SmallVectorTemplateCommon<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, void>::back() Line | Count | Source | 163 | 2.50M | reference back() { | 164 | 2.50M | assert(!empty()); | 165 | 2.50M | return end()[-1]; | 166 | 2.50M | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::AsmToken, void>::back() Line | Count | Source | 163 | 15.2M | reference back() { | 164 | 15.2M | assert(!empty()); | 165 | 15.2M | return end()[-1]; | 166 | 15.2M | } |
llvm_ks::SmallVectorTemplateCommon<void*, void>::back() Line | Count | Source | 163 | 536k | reference back() { | 164 | 536k | assert(!empty()); | 165 | 536k | return end()[-1]; | 166 | 536k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::MCDataFragment*, void>::back() Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, void>::back() llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, void>::back() Line | Count | Source | 163 | 60.6k | reference back() { | 164 | 60.6k | assert(!empty()); | 165 | 60.6k | return end()[-1]; | 166 | 60.6k | } |
llvm_ks::SmallVectorTemplateCommon<llvm_ks::DuplexCandidate, void>::back() Line | Count | Source | 163 | 1 | reference back() { | 164 | 1 | assert(!empty()); | 165 | 1 | return end()[-1]; | 166 | 1 | } |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, void>::back() Line | Count | Source | 163 | 19.2k | reference back() { | 164 | 19.2k | assert(!empty()); | 165 | 19.2k | return end()[-1]; | 166 | 19.2k | } |
llvm_ks::SmallVectorTemplateCommon<unsigned int, void>::back() Line | Count | Source | 163 | 225k | reference back() { | 164 | 225k | assert(!empty()); | 165 | 225k | return end()[-1]; | 166 | 225k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, void>::back() Line | Count | Source | 163 | 117k | reference back() { | 164 | 117k | assert(!empty()); | 165 | 117k | return end()[-1]; | 166 | 117k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateCommon<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, void>::back() Line | Count | Source | 163 | 22.6k | reference back() { | 164 | 22.6k | assert(!empty()); | 165 | 22.6k | return end()[-1]; | 166 | 22.6k | } |
llvm_ks::SmallVectorTemplateCommon<char, void>::back() Line | Count | Source | 163 | 13.0k | reference back() { | 164 | 13.0k | assert(!empty()); | 165 | 13.0k | return end()[-1]; | 166 | 13.0k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateCommon<llvm_ks::FeatureBitset, void>::back() |
167 | 1.07G | const_reference back() const { |
168 | 1.07G | assert(!empty()); |
169 | 1.07G | return end()[-1]; |
170 | 1.07G | } |
171 | | }; |
172 | | |
173 | | /// SmallVectorTemplateBase<isPodLike = false> - This is where we put method |
174 | | /// implementations that are designed to work with non-POD-like T's. |
175 | | template <typename T, bool isPodLike> |
176 | | class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> { |
177 | | protected: |
178 | 106M | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} llvm_ks::SmallVectorTemplateBase<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 178 | 377 | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCDwarfFile, false>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 178 | 377 | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, false>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 178 | 104M | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmToken, false>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 178 | 1.04M | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::SMFixIt, false>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 178 | 1.30M | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, false>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 178 | 5.46k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCInst, false>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 178 | 16.4k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, false>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 178 | 25 | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCLOHDirective, false>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 178 | 129k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
|
179 | | |
180 | 106M | static void destroy_range(T *S, T *E) { |
181 | 117M | while (S != E) { |
182 | 10.2M | --E; |
183 | 10.2M | E->~T(); |
184 | 10.2M | } |
185 | 106M | } llvm_ks::SmallVectorTemplateBase<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::destroy_range(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*) Line | Count | Source | 180 | 377 | static void destroy_range(T *S, T *E) { | 181 | 377 | while (S != E) { | 182 | 0 | --E; | 183 | 0 | E->~T(); | 184 | 0 | } | 185 | 377 | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCDwarfFile, false>::destroy_range(llvm_ks::MCDwarfFile*, llvm_ks::MCDwarfFile*) Line | Count | Source | 180 | 377 | static void destroy_range(T *S, T *E) { | 181 | 377 | while (S != E) { | 182 | 0 | --E; | 183 | 0 | E->~T(); | 184 | 0 | } | 185 | 377 | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCLOHDirective, false>::destroy_range(llvm_ks::MCLOHDirective*, llvm_ks::MCLOHDirective*) Line | Count | Source | 180 | 129k | static void destroy_range(T *S, T *E) { | 181 | 129k | while (S != E) { | 182 | 0 | --E; | 183 | 0 | E->~T(); | 184 | 0 | } | 185 | 129k | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmToken, false>::destroy_range(llvm_ks::AsmToken*, llvm_ks::AsmToken*) Line | Count | Source | 180 | 1.24M | static void destroy_range(T *S, T *E) { | 181 | 8.42M | while (S != E) { | 182 | 7.17M | --E; | 183 | 7.17M | E->~T(); | 184 | 7.17M | } | 185 | 1.24M | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::SMFixIt, false>::destroy_range(llvm_ks::SMFixIt*, llvm_ks::SMFixIt*) Line | Count | Source | 180 | 1.30M | static void destroy_range(T *S, T *E) { | 181 | 1.31M | while (S != E) { | 182 | 1.77k | --E; | 183 | 1.77k | E->~T(); | 184 | 1.77k | } | 185 | 1.30M | } |
llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, false>::destroy_range(std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*, std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*) Line | Count | Source | 180 | 104M | static void destroy_range(T *S, T *E) { | 181 | 107M | while (S != E) { | 182 | 3.08M | --E; | 183 | 3.08M | E->~T(); | 184 | 3.08M | } | 185 | 104M | } |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, false>::destroy_range(std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >*, std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >*) Line | Count | Source | 180 | 5.46k | static void destroy_range(T *S, T *E) { | 181 | 16.4k | while (S != E) { | 182 | 10.9k | --E; | 183 | 10.9k | E->~T(); | 184 | 10.9k | } | 185 | 5.46k | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCInst, false>::destroy_range(llvm_ks::MCInst*, llvm_ks::MCInst*) Line | Count | Source | 180 | 16.4k | static void destroy_range(T *S, T *E) { | 181 | 40.7k | while (S != E) { | 182 | 24.2k | --E; | 183 | 24.2k | E->~T(); | 184 | 24.2k | } | 185 | 16.4k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, false>::destroy_range(std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >*, std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >*) llvm_ks::SmallVectorTemplateBase<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, false>::destroy_range(std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >*, std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >*) Line | Count | Source | 180 | 25 | static void destroy_range(T *S, T *E) { | 181 | 25 | while (S != E) { | 182 | 0 | --E; | 183 | 0 | E->~T(); | 184 | 0 | } | 185 | 25 | } |
|
186 | | |
187 | | /// Use move-assignment to move the range [I, E) onto the |
188 | | /// objects starting with "Dest". This is just <memory>'s |
189 | | /// std::move, but not all stdlibs actually provide that. |
190 | | template<typename It1, typename It2> |
191 | 197M | static It2 move(It1 I, It1 E, It2 Dest) { |
192 | 1.14G | for (; I != E; ++I, ++Dest) |
193 | 947M | *Dest = ::std::move(*I); |
194 | 197M | return Dest; |
195 | 197M | } llvm_ks::AsmToken* llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmToken, false>::move<llvm_ks::AsmToken*, llvm_ks::AsmToken*>(llvm_ks::AsmToken*, llvm_ks::AsmToken*, llvm_ks::AsmToken*) Line | Count | Source | 191 | 197M | static It2 move(It1 I, It1 E, It2 Dest) { | 192 | 1.14G | for (; I != E; ++I, ++Dest) | 193 | 947M | *Dest = ::std::move(*I); | 194 | 197M | return Dest; | 195 | 197M | } |
Unexecuted instantiation: llvm_ks::SMFixIt* llvm_ks::SmallVectorTemplateBase<llvm_ks::SMFixIt, false>::move<llvm_ks::SMFixIt*, llvm_ks::SMFixIt*>(llvm_ks::SMFixIt*, llvm_ks::SMFixIt*, llvm_ks::SMFixIt*) std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >* llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, false>::move<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*, std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*>(std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*, std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*, std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*) Line | Count | Source | 191 | 7.45k | static It2 move(It1 I, It1 E, It2 Dest) { | 192 | 28.8k | for (; I != E; ++I, ++Dest) | 193 | 21.4k | *Dest = ::std::move(*I); | 194 | 7.45k | return Dest; | 195 | 7.45k | } |
|
196 | | |
197 | | /// Use move-assignment to move the range |
198 | | /// [I, E) onto the objects ending at "Dest", moving objects |
199 | | /// in reverse order. This is just <algorithm>'s |
200 | | /// std::move_backward, but not all stdlibs actually provide that. |
201 | | template<typename It1, typename It2> |
202 | 4.94M | static It2 move_backward(It1 I, It1 E, It2 Dest) { |
203 | 948M | while (I != E) |
204 | 943M | *--Dest = ::std::move(*--E); |
205 | 4.94M | return Dest; |
206 | 4.94M | } llvm_ks::AsmToken* llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmToken, false>::move_backward<llvm_ks::AsmToken*, llvm_ks::AsmToken*>(llvm_ks::AsmToken*, llvm_ks::AsmToken*, llvm_ks::AsmToken*) Line | Count | Source | 202 | 4.94M | static It2 move_backward(It1 I, It1 E, It2 Dest) { | 203 | 948M | while (I != E) | 204 | 943M | *--Dest = ::std::move(*--E); | 205 | 4.94M | return Dest; | 206 | 4.94M | } |
std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >* llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, false>::move_backward<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*, std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*>(std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*, std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*, std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*) Line | Count | Source | 202 | 789 | static It2 move_backward(It1 I, It1 E, It2 Dest) { | 203 | 793 | while (I != E) | 204 | 4 | *--Dest = ::std::move(*--E); | 205 | 789 | return Dest; | 206 | 789 | } |
|
207 | | |
208 | | /// Move the range [I, E) into the uninitialized memory starting with "Dest", |
209 | | /// constructing elements as needed. |
210 | | template<typename It1, typename It2> |
211 | 251k | static void uninitialized_move(It1 I, It1 E, It2 Dest) { |
212 | 8.38M | for (; I != E; ++I, ++Dest) |
213 | 8.13M | ::new ((void*) &*Dest) T(::std::move(*I)); |
214 | 251k | } Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<llvm_ks::MCLOHDirective, false>::uninitialized_move<llvm_ks::MCLOHDirective*, llvm_ks::MCLOHDirective*>(llvm_ks::MCLOHDirective*, llvm_ks::MCLOHDirective*, llvm_ks::MCLOHDirective*) void llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmToken, false>::uninitialized_move<llvm_ks::AsmToken*, llvm_ks::AsmToken*>(llvm_ks::AsmToken*, llvm_ks::AsmToken*, llvm_ks::AsmToken*) Line | Count | Source | 211 | 204k | static void uninitialized_move(It1 I, It1 E, It2 Dest) { | 212 | 7.22M | for (; I != E; ++I, ++Dest) | 213 | 7.02M | ::new ((void*) &*Dest) T(::std::move(*I)); | 214 | 204k | } |
Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<llvm_ks::SMFixIt, false>::uninitialized_move<llvm_ks::SMFixIt*, llvm_ks::SMFixIt*>(llvm_ks::SMFixIt*, llvm_ks::SMFixIt*, llvm_ks::SMFixIt*) Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::uninitialized_move<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*) void llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, false>::uninitialized_move<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*, std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*>(std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*, std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*, std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*) Line | Count | Source | 211 | 47.1k | static void uninitialized_move(It1 I, It1 E, It2 Dest) { | 212 | 1.15M | for (; I != E; ++I, ++Dest) | 213 | 1.11M | ::new ((void*) &*Dest) T(::std::move(*I)); | 214 | 47.1k | } |
MipsAsmParser.cpp:void llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, false>::uninitialized_move<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >*, std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >*>(std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >*, std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >*, std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >*) Line | Count | Source | 211 | 4 | static void uninitialized_move(It1 I, It1 E, It2 Dest) { | 212 | 12 | for (; I != E; ++I, ++Dest) | 213 | 8 | ::new ((void*) &*Dest) T(::std::move(*I)); | 214 | 4 | } |
Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<llvm_ks::MCInst, false>::uninitialized_move<llvm_ks::MCInst*, llvm_ks::MCInst*>(llvm_ks::MCInst*, llvm_ks::MCInst*, llvm_ks::MCInst*) Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, false>::uninitialized_move<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >*, std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >*>(std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >*, std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >*, std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >*) Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, false>::uninitialized_move<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >*, std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >*>(std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >*, std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >*, std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >*) |
215 | | |
216 | | /// Copy the range [I, E) onto the uninitialized memory starting with "Dest", |
217 | | /// constructing elements as needed. |
218 | | template<typename It1, typename It2> |
219 | 1.30M | static void uninitialized_copy(It1 I, It1 E, It2 Dest) { |
220 | 1.30M | std::uninitialized_copy(I, E, Dest); |
221 | 1.30M | } |
222 | | |
223 | | /// Grow the allocated memory (without initializing new elements), doubling |
224 | | /// the size of the allocated memory. Guarantees space for at least one more |
225 | | /// element, or MinSize more elements if specified. |
226 | | void grow(size_t MinSize = 0); |
227 | | |
228 | | public: |
229 | 311k | void push_back(const T &Elt) { |
230 | 311k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) |
231 | 3.08k | this->grow(); |
232 | 311k | ::new ((void*) this->end()) T(Elt); |
233 | 311k | this->setEnd(this->end()+1); |
234 | 311k | } llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmToken, false>::push_back(llvm_ks::AsmToken const&) Line | Count | Source | 229 | 287k | void push_back(const T &Elt) { | 230 | 287k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 231 | 3.08k | this->grow(); | 232 | 287k | ::new ((void*) this->end()) T(Elt); | 233 | 287k | this->setEnd(this->end()+1); | 234 | 287k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::SMFixIt, false>::push_back(llvm_ks::SMFixIt const&) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::push_back(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) llvm_ks::SmallVectorTemplateBase<llvm_ks::MCInst, false>::push_back(llvm_ks::MCInst const&) Line | Count | Source | 229 | 24.2k | void push_back(const T &Elt) { | 230 | 24.2k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 231 | 0 | this->grow(); | 232 | 24.2k | ::new ((void*) this->end()) T(Elt); | 233 | 24.2k | this->setEnd(this->end()+1); | 234 | 24.2k | } |
|
235 | | |
236 | 1.99M | void push_back(T &&Elt) { |
237 | 1.99M | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) |
238 | 47.1k | this->grow(); |
239 | 1.99M | ::new ((void*) this->end()) T(::std::move(Elt)); |
240 | 1.99M | this->setEnd(this->end()+1); |
241 | 1.99M | } Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::MCLOHDirective, false>::push_back(llvm_ks::MCLOHDirective&&) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::push_back(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&&) llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, false>::push_back(std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >&&) Line | Count | Source | 236 | 1.98M | void push_back(T &&Elt) { | 237 | 1.98M | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 238 | 47.1k | this->grow(); | 239 | 1.98M | ::new ((void*) this->end()) T(::std::move(Elt)); | 240 | 1.98M | this->setEnd(this->end()+1); | 241 | 1.98M | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmToken, false>::push_back(llvm_ks::AsmToken&&) MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, false>::push_back(std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >&&) Line | Count | Source | 236 | 10.9k | void push_back(T &&Elt) { | 237 | 10.9k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 238 | 4 | this->grow(); | 239 | 10.9k | ::new ((void*) this->end()) T(::std::move(Elt)); | 240 | 10.9k | this->setEnd(this->end()+1); | 241 | 10.9k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, false>::push_back(std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >&&) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, false>::push_back(std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >&&) |
242 | | |
243 | 202M | void pop_back() { |
244 | 202M | this->setEnd(this->end()-1); |
245 | 202M | this->end()->~T(); |
246 | 202M | } llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmToken, false>::pop_back() Line | Count | Source | 243 | 202M | void pop_back() { | 244 | 202M | this->setEnd(this->end()-1); | 245 | 202M | this->end()->~T(); | 246 | 202M | } |
llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, false>::pop_back() Line | Count | Source | 243 | 8.85k | void pop_back() { | 244 | 8.85k | this->setEnd(this->end()-1); | 245 | 8.85k | this->end()->~T(); | 246 | 8.85k | } |
Unexecuted instantiation: MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, false>::pop_back() |
247 | | }; |
248 | | |
249 | | // Define this out-of-line to dissuade the C++ compiler from inlining it. |
250 | | template <typename T, bool isPodLike> |
251 | 251k | void SmallVectorTemplateBase<T, isPodLike>::grow(size_t MinSize) { |
252 | 251k | size_t CurCapacity = this->capacity(); |
253 | 251k | size_t CurSize = this->size(); |
254 | | // Always grow, even from zero. |
255 | 251k | size_t NewCapacity = size_t(NextPowerOf2(CurCapacity+2)); |
256 | 251k | if (NewCapacity < MinSize) |
257 | 0 | NewCapacity = MinSize; |
258 | 251k | T *NewElts = static_cast<T*>(malloc(NewCapacity*sizeof(T))); |
259 | | |
260 | | // Move the elements over. |
261 | 251k | this->uninitialized_move(this->begin(), this->end(), NewElts); |
262 | | |
263 | | // Destroy the original elements. |
264 | 251k | destroy_range(this->begin(), this->end()); |
265 | | |
266 | | // If this wasn't grown from the inline copy, deallocate the old space. |
267 | 251k | if (!this->isSmall()) |
268 | 178k | free(this->begin()); |
269 | | |
270 | 251k | this->setEnd(NewElts+CurSize); |
271 | 251k | this->BeginX = NewElts; |
272 | 251k | this->CapacityX = this->begin()+NewCapacity; |
273 | 251k | } Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::MCLOHDirective, false>::grow(unsigned long) llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmToken, false>::grow(unsigned long) Line | Count | Source | 251 | 204k | void SmallVectorTemplateBase<T, isPodLike>::grow(size_t MinSize) { | 252 | 204k | size_t CurCapacity = this->capacity(); | 253 | 204k | size_t CurSize = this->size(); | 254 | | // Always grow, even from zero. | 255 | 204k | size_t NewCapacity = size_t(NextPowerOf2(CurCapacity+2)); | 256 | 204k | if (NewCapacity < MinSize) | 257 | 0 | NewCapacity = MinSize; | 258 | 204k | T *NewElts = static_cast<T*>(malloc(NewCapacity*sizeof(T))); | 259 | | | 260 | | // Move the elements over. | 261 | 204k | this->uninitialized_move(this->begin(), this->end(), NewElts); | 262 | | | 263 | | // Destroy the original elements. | 264 | 204k | destroy_range(this->begin(), this->end()); | 265 | | | 266 | | // If this wasn't grown from the inline copy, deallocate the old space. | 267 | 204k | if (!this->isSmall()) | 268 | 154k | free(this->begin()); | 269 | | | 270 | 204k | this->setEnd(NewElts+CurSize); | 271 | 204k | this->BeginX = NewElts; | 272 | 204k | this->CapacityX = this->begin()+NewCapacity; | 273 | 204k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::SMFixIt, false>::grow(unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::grow(unsigned long) llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, false>::grow(unsigned long) Line | Count | Source | 251 | 47.1k | void SmallVectorTemplateBase<T, isPodLike>::grow(size_t MinSize) { | 252 | 47.1k | size_t CurCapacity = this->capacity(); | 253 | 47.1k | size_t CurSize = this->size(); | 254 | | // Always grow, even from zero. | 255 | 47.1k | size_t NewCapacity = size_t(NextPowerOf2(CurCapacity+2)); | 256 | 47.1k | if (NewCapacity < MinSize) | 257 | 0 | NewCapacity = MinSize; | 258 | 47.1k | T *NewElts = static_cast<T*>(malloc(NewCapacity*sizeof(T))); | 259 | | | 260 | | // Move the elements over. | 261 | 47.1k | this->uninitialized_move(this->begin(), this->end(), NewElts); | 262 | | | 263 | | // Destroy the original elements. | 264 | 47.1k | destroy_range(this->begin(), this->end()); | 265 | | | 266 | | // If this wasn't grown from the inline copy, deallocate the old space. | 267 | 47.1k | if (!this->isSmall()) | 268 | 23.9k | free(this->begin()); | 269 | | | 270 | 47.1k | this->setEnd(NewElts+CurSize); | 271 | 47.1k | this->BeginX = NewElts; | 272 | 47.1k | this->CapacityX = this->begin()+NewCapacity; | 273 | 47.1k | } |
MipsAsmParser.cpp:llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, false>::grow(unsigned long) Line | Count | Source | 251 | 4 | void SmallVectorTemplateBase<T, isPodLike>::grow(size_t MinSize) { | 252 | 4 | size_t CurCapacity = this->capacity(); | 253 | 4 | size_t CurSize = this->size(); | 254 | | // Always grow, even from zero. | 255 | 4 | size_t NewCapacity = size_t(NextPowerOf2(CurCapacity+2)); | 256 | 4 | if (NewCapacity < MinSize) | 257 | 0 | NewCapacity = MinSize; | 258 | 4 | T *NewElts = static_cast<T*>(malloc(NewCapacity*sizeof(T))); | 259 | | | 260 | | // Move the elements over. | 261 | 4 | this->uninitialized_move(this->begin(), this->end(), NewElts); | 262 | | | 263 | | // Destroy the original elements. | 264 | 4 | destroy_range(this->begin(), this->end()); | 265 | | | 266 | | // If this wasn't grown from the inline copy, deallocate the old space. | 267 | 4 | if (!this->isSmall()) | 268 | 0 | free(this->begin()); | 269 | | | 270 | 4 | this->setEnd(NewElts+CurSize); | 271 | 4 | this->BeginX = NewElts; | 272 | 4 | this->CapacityX = this->begin()+NewCapacity; | 273 | 4 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::MCInst, false>::grow(unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::unique_ptr<llvm_ks::MipsOptionRecord, std::__1::default_delete<llvm_ks::MipsOptionRecord> >, false>::grow(unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, false>::grow(unsigned long) |
274 | | |
275 | | |
276 | | /// SmallVectorTemplateBase<isPodLike = true> - This is where we put method |
277 | | /// implementations that are designed to work with POD-like T's. |
278 | | template <typename T> |
279 | | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> { |
280 | | protected: |
281 | 27.0M | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} llvm_ks::SmallVectorTemplateBase<char, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 14.2M | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<void*, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 774k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<std::__1::pair<void*, unsigned long>, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 774k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCDataFragment*, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 129k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCFixup, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 340k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCSection*, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 56.5k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCOperand, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 350k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCSymbol*, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 129k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::SMLoc, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 671k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<unsigned int, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 776k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<bool, true>::SmallVectorTemplateBase(unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmRewrite, true>::SmallVectorTemplateBase(unsigned long) llvm_ks::SmallVectorTemplateBase<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 5.60M | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::StringRef, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 1.57M | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 129k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<unsigned long, true>::SmallVectorTemplateBase(unsigned long) llvm_ks::SmallVectorTemplateBase<std::__1::pair<unsigned int, unsigned int>, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 1.28M | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<unsigned char, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 341 | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::HexagonMCChecker::NewSense, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 626 | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::DuplexCandidate, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 9.68k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::HexagonInstr, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 16.6k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateBase<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 34.5k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateBase<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 58.6k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::RISCVMatInt::Inst, true>::SmallVectorTemplateBase(unsigned long) llvm_ks::SmallVectorTemplateBase<llvm_ks::FeatureBitset, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 25.0k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::ConstantPoolEntry, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 1.54k | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
llvm_ks::SmallVectorTemplateBase<llvm_regmatch_t, true>::SmallVectorTemplateBase(unsigned long) Line | Count | Source | 281 | 578 | SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {} |
|
282 | | |
283 | | // No need to do a destroy loop for POD's. |
284 | 29.3M | static void destroy_range(T *, T *) {} llvm_ks::SmallVectorTemplateBase<char, true>::destroy_range(char*, char*) Line | Count | Source | 284 | 14.5M | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCOperand, true>::destroy_range(llvm_ks::MCOperand*, llvm_ks::MCOperand*) Line | Count | Source | 284 | 648k | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCFixup, true>::destroy_range(llvm_ks::MCFixup*, llvm_ks::MCFixup*) Line | Count | Source | 284 | 349k | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCSymbol*, true>::destroy_range(llvm_ks::MCSymbol**, llvm_ks::MCSymbol**) Line | Count | Source | 284 | 273k | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<void*, true>::destroy_range(void**, void**) Line | Count | Source | 284 | 1.17M | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<std::__1::pair<void*, unsigned long>, true>::destroy_range(std::__1::pair<void*, unsigned long>*, std::__1::pair<void*, unsigned long>*) Line | Count | Source | 284 | 1.93M | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCDataFragment*, true>::destroy_range(llvm_ks::MCDataFragment**, llvm_ks::MCDataFragment**) Line | Count | Source | 284 | 129k | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCSection*, true>::destroy_range(llvm_ks::MCSection**, llvm_ks::MCSection**) Line | Count | Source | 284 | 56.5k | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::SMLoc, true>::destroy_range(llvm_ks::SMLoc*, llvm_ks::SMLoc*) Line | Count | Source | 284 | 698k | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<unsigned int, true>::destroy_range(unsigned int*, unsigned int*) Line | Count | Source | 284 | 776k | static void destroy_range(T *, T *) {} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::pair<void*, bool>, true>::destroy_range(std::__1::pair<void*, bool>*, std::__1::pair<void*, bool>*) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmRewrite, true>::destroy_range(llvm_ks::AsmRewrite*, llvm_ks::AsmRewrite*) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<bool, true>::destroy_range(bool*, bool*) llvm_ks::SmallVectorTemplateBase<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, true>::destroy_range(std::__1::pair<unsigned int, llvm_ks::MCFragment*>*, std::__1::pair<unsigned int, llvm_ks::MCFragment*>*) Line | Count | Source | 284 | 5.60M | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::StringRef, true>::destroy_range(llvm_ks::StringRef*, llvm_ks::StringRef*) Line | Count | Source | 284 | 1.57M | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, true>::destroy_range(std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >*, std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >*) Line | Count | Source | 284 | 129k | static void destroy_range(T *, T *) {} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<unsigned long, true>::destroy_range(unsigned long*, unsigned long*) llvm_ks::SmallVectorTemplateBase<std::__1::pair<unsigned int, unsigned int>, true>::destroy_range(std::__1::pair<unsigned int, unsigned int>*, std::__1::pair<unsigned int, unsigned int>*) Line | Count | Source | 284 | 1.28M | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::ConstantPoolEntry, true>::destroy_range(llvm_ks::ConstantPoolEntry*, llvm_ks::ConstantPoolEntry*) Line | Count | Source | 284 | 1.91k | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<unsigned char, true>::destroy_range(unsigned char*, unsigned char*) Line | Count | Source | 284 | 341 | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::HexagonMCChecker::NewSense, true>::destroy_range(llvm_ks::HexagonMCChecker::NewSense*, llvm_ks::HexagonMCChecker::NewSense*) Line | Count | Source | 284 | 626 | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::HexagonInstr, true>::destroy_range(llvm_ks::HexagonInstr*, llvm_ks::HexagonInstr*) Line | Count | Source | 284 | 33.3k | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_ks::DuplexCandidate, true>::destroy_range(llvm_ks::DuplexCandidate*, llvm_ks::DuplexCandidate*) Line | Count | Source | 284 | 16.1k | static void destroy_range(T *, T *) {} |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateBase<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, true>::destroy_range((anonymous namespace)::X86AsmParser::InfixCalculatorTok*, (anonymous namespace)::X86AsmParser::InfixCalculatorTok*) Line | Count | Source | 284 | 34.5k | static void destroy_range(T *, T *) {} |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateBase<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, true>::destroy_range(std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>*, std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>*) Line | Count | Source | 284 | 58.6k | static void destroy_range(T *, T *) {} |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::RISCVMatInt::Inst, true>::destroy_range(llvm_ks::RISCVMatInt::Inst*, llvm_ks::RISCVMatInt::Inst*) llvm_ks::SmallVectorTemplateBase<llvm_ks::FeatureBitset, true>::destroy_range(llvm_ks::FeatureBitset*, llvm_ks::FeatureBitset*) Line | Count | Source | 284 | 25.0k | static void destroy_range(T *, T *) {} |
llvm_ks::SmallVectorTemplateBase<llvm_regmatch_t, true>::destroy_range(llvm_regmatch_t*, llvm_regmatch_t*) Line | Count | Source | 284 | 578 | static void destroy_range(T *, T *) {} |
|
285 | | |
286 | | /// Use move-assignment to move the range [I, E) onto the |
287 | | /// objects starting with "Dest". For PODs, this is just memcpy. |
288 | | template<typename It1, typename It2> |
289 | 404k | static It2 move(It1 I, It1 E, It2 Dest) { |
290 | 404k | return ::std::copy(I, E, Dest); |
291 | 404k | } llvm_ks::MCOperand* llvm_ks::SmallVectorTemplateBase<llvm_ks::MCOperand, true>::move<llvm_ks::MCOperand*, llvm_ks::MCOperand*>(llvm_ks::MCOperand*, llvm_ks::MCOperand*, llvm_ks::MCOperand*) Line | Count | Source | 289 | 35 | static It2 move(It1 I, It1 E, It2 Dest) { | 290 | 35 | return ::std::copy(I, E, Dest); | 291 | 35 | } |
Unexecuted instantiation: llvm_ks::MCSymbol** llvm_ks::SmallVectorTemplateBase<llvm_ks::MCSymbol*, true>::move<llvm_ks::MCSymbol**, llvm_ks::MCSymbol**>(llvm_ks::MCSymbol**, llvm_ks::MCSymbol**, llvm_ks::MCSymbol**) void** llvm_ks::SmallVectorTemplateBase<void*, true>::move<void**, void**>(void**, void**, void**) Line | Count | Source | 289 | 404k | static It2 move(It1 I, It1 E, It2 Dest) { | 290 | 404k | return ::std::copy(I, E, Dest); | 291 | 404k | } |
Unexecuted instantiation: char* llvm_ks::SmallVectorTemplateBase<char, true>::move<char*, char*>(char*, char*, char*) Unexecuted instantiation: unsigned int* llvm_ks::SmallVectorTemplateBase<unsigned int, true>::move<unsigned int*, unsigned int*>(unsigned int*, unsigned int*, unsigned int*) Unexecuted instantiation: llvm_ks::SMLoc* llvm_ks::SmallVectorTemplateBase<llvm_ks::SMLoc, true>::move<llvm_ks::SMLoc*, llvm_ks::SMLoc*>(llvm_ks::SMLoc*, llvm_ks::SMLoc*, llvm_ks::SMLoc*) Unexecuted instantiation: llvm_ks::HexagonMCChecker::NewSense* llvm_ks::SmallVectorTemplateBase<llvm_ks::HexagonMCChecker::NewSense, true>::move<llvm_ks::HexagonMCChecker::NewSense*, llvm_ks::HexagonMCChecker::NewSense*>(llvm_ks::HexagonMCChecker::NewSense*, llvm_ks::HexagonMCChecker::NewSense*, llvm_ks::HexagonMCChecker::NewSense*) Unexecuted instantiation: llvm_ks::DuplexCandidate* llvm_ks::SmallVectorTemplateBase<llvm_ks::DuplexCandidate, true>::move<llvm_ks::DuplexCandidate*, llvm_ks::DuplexCandidate*>(llvm_ks::DuplexCandidate*, llvm_ks::DuplexCandidate*, llvm_ks::DuplexCandidate*) Unexecuted instantiation: llvm_ks::ConstantPoolEntry* llvm_ks::SmallVectorTemplateBase<llvm_ks::ConstantPoolEntry, true>::move<llvm_ks::ConstantPoolEntry*, llvm_ks::ConstantPoolEntry*>(llvm_ks::ConstantPoolEntry*, llvm_ks::ConstantPoolEntry*, llvm_ks::ConstantPoolEntry*) |
292 | | |
293 | | /// Use move-assignment to move the range [I, E) onto the objects ending at |
294 | | /// "Dest", moving objects in reverse order. |
295 | | template<typename It1, typename It2> |
296 | 0 | static It2 move_backward(It1 I, It1 E, It2 Dest) { |
297 | 0 | return ::std::copy_backward(I, E, Dest); |
298 | 0 | } Unexecuted instantiation: llvm_ks::MCOperand* llvm_ks::SmallVectorTemplateBase<llvm_ks::MCOperand, true>::move_backward<llvm_ks::MCOperand*, llvm_ks::MCOperand*>(llvm_ks::MCOperand*, llvm_ks::MCOperand*, llvm_ks::MCOperand*) Unexecuted instantiation: unsigned int* llvm_ks::SmallVectorTemplateBase<unsigned int, true>::move_backward<unsigned int*, unsigned int*>(unsigned int*, unsigned int*, unsigned int*) Unexecuted instantiation: std::__1::pair<unsigned int, llvm_ks::MCFragment*>* llvm_ks::SmallVectorTemplateBase<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, true>::move_backward<std::__1::pair<unsigned int, llvm_ks::MCFragment*>*, std::__1::pair<unsigned int, llvm_ks::MCFragment*>*>(std::__1::pair<unsigned int, llvm_ks::MCFragment*>*, std::__1::pair<unsigned int, llvm_ks::MCFragment*>*, std::__1::pair<unsigned int, llvm_ks::MCFragment*>*) |
299 | | |
300 | | /// Move the range [I, E) onto the uninitialized memory |
301 | | /// starting with "Dest", constructing elements into it as needed. |
302 | | template<typename It1, typename It2> |
303 | 264 | static void uninitialized_move(It1 I, It1 E, It2 Dest) { |
304 | | // Just do a copy. |
305 | 264 | uninitialized_copy(I, E, Dest); |
306 | 264 | } Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<llvm_ks::MCSymbol*, true>::uninitialized_move<llvm_ks::MCSymbol**, llvm_ks::MCSymbol**>(llvm_ks::MCSymbol**, llvm_ks::MCSymbol**, llvm_ks::MCSymbol**) Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<char, true>::uninitialized_move<char*, char*>(char*, char*, char*) Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<unsigned int, true>::uninitialized_move<unsigned int*, unsigned int*>(unsigned int*, unsigned int*, unsigned int*) Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<llvm_ks::SMLoc, true>::uninitialized_move<llvm_ks::SMLoc*, llvm_ks::SMLoc*>(llvm_ks::SMLoc*, llvm_ks::SMLoc*, llvm_ks::SMLoc*) void llvm_ks::SmallVectorTemplateBase<llvm_ks::MCOperand, true>::uninitialized_move<llvm_ks::MCOperand*, llvm_ks::MCOperand*>(llvm_ks::MCOperand*, llvm_ks::MCOperand*, llvm_ks::MCOperand*) Line | Count | Source | 303 | 263 | static void uninitialized_move(It1 I, It1 E, It2 Dest) { | 304 | | // Just do a copy. | 305 | 263 | uninitialized_copy(I, E, Dest); | 306 | 263 | } |
Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<llvm_ks::HexagonMCChecker::NewSense, true>::uninitialized_move<llvm_ks::HexagonMCChecker::NewSense*, llvm_ks::HexagonMCChecker::NewSense*>(llvm_ks::HexagonMCChecker::NewSense*, llvm_ks::HexagonMCChecker::NewSense*, llvm_ks::HexagonMCChecker::NewSense*) void llvm_ks::SmallVectorTemplateBase<llvm_ks::DuplexCandidate, true>::uninitialized_move<llvm_ks::DuplexCandidate*, llvm_ks::DuplexCandidate*>(llvm_ks::DuplexCandidate*, llvm_ks::DuplexCandidate*, llvm_ks::DuplexCandidate*) Line | Count | Source | 303 | 1 | static void uninitialized_move(It1 I, It1 E, It2 Dest) { | 304 | | // Just do a copy. | 305 | 1 | uninitialized_copy(I, E, Dest); | 306 | 1 | } |
Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<llvm_ks::ConstantPoolEntry, true>::uninitialized_move<llvm_ks::ConstantPoolEntry*, llvm_ks::ConstantPoolEntry*>(llvm_ks::ConstantPoolEntry*, llvm_ks::ConstantPoolEntry*, llvm_ks::ConstantPoolEntry*) |
307 | | |
308 | | /// Copy the range [I, E) onto the uninitialized memory |
309 | | /// starting with "Dest", constructing elements into it as needed. |
310 | | template<typename It1, typename It2> |
311 | 0 | static void uninitialized_copy(It1 I, It1 E, It2 Dest) { |
312 | | // Arbitrary iterator types; just use the basic implementation. |
313 | 0 | std::uninitialized_copy(I, E, Dest); |
314 | 0 | } Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<unsigned int, true>::uninitialized_copy<std::__1::move_iterator<unsigned int*>, unsigned int*>(std::__1::move_iterator<unsigned int*>, std::__1::move_iterator<unsigned int*>, unsigned int*) Unexecuted instantiation: void llvm_ks::SmallVectorTemplateBase<unsigned int, true>::uninitialized_copy<unsigned short const*, unsigned int*>(unsigned short const*, unsigned short const*, unsigned int*) |
315 | | |
316 | | /// Copy the range [I, E) onto the uninitialized memory |
317 | | /// starting with "Dest", constructing elements into it as needed. |
318 | | template <typename T1, typename T2> |
319 | | static void uninitialized_copy( |
320 | | T1 *I, T1 *E, T2 *Dest, |
321 | | typename std::enable_if<std::is_same<typename std::remove_const<T1>::type, |
322 | 2.07G | T2>::value>::type * = nullptr) { |
323 | | // Use memcpy for PODs iterated by pointers (which includes SmallVector |
324 | | // iterators): std::uninitialized_copy optimizes to memmove, but we can |
325 | | // use memcpy here. Note that I and E are iterators and thus might be |
326 | | // invalid for memcpy if they are equal. |
327 | 2.07G | if (I != E) |
328 | 2.07G | memcpy(Dest, I, (E - I) * sizeof(T)); |
329 | 2.07G | } _ZN7llvm_ks23SmallVectorTemplateBaseINS_9MCOperandELb1EE18uninitialized_copyIKS1_S1_EEvPT_S6_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS9_12remove_constIS5_E4typeES7_EE5valueEvE4typeE Line | Count | Source | 322 | 92.4k | T2>::value>::type * = nullptr) { | 323 | | // Use memcpy for PODs iterated by pointers (which includes SmallVector | 324 | | // iterators): std::uninitialized_copy optimizes to memmove, but we can | 325 | | // use memcpy here. Note that I and E are iterators and thus might be | 326 | | // invalid for memcpy if they are equal. | 327 | 92.4k | if (I != E) | 328 | 92.4k | memcpy(Dest, I, (E - I) * sizeof(T)); | 329 | 92.4k | } |
Unexecuted instantiation: _ZN7llvm_ks23SmallVectorTemplateBaseIPNS_8MCSymbolELb1EE18uninitialized_copyIKS2_S2_EEvPT_S7_PT0_PNSt3__19enable_ifIXsr3std7is_sameINSA_12remove_constIS6_E4typeES8_EE5valueEvE4typeE Unexecuted instantiation: _ZN7llvm_ks23SmallVectorTemplateBaseIPNS_8MCSymbolELb1EE18uninitialized_copyIS2_S2_EEvPT_S6_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS9_12remove_constIS5_E4typeES7_EE5valueEvE4typeE _ZN7llvm_ks23SmallVectorTemplateBaseIcLb1EE18uninitialized_copyIKccEEvPT_S5_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS8_12remove_constIS4_E4typeES6_EE5valueEvE4typeE Line | Count | Source | 322 | 2.07G | T2>::value>::type * = nullptr) { | 323 | | // Use memcpy for PODs iterated by pointers (which includes SmallVector | 324 | | // iterators): std::uninitialized_copy optimizes to memmove, but we can | 325 | | // use memcpy here. Note that I and E are iterators and thus might be | 326 | | // invalid for memcpy if they are equal. | 327 | 2.07G | if (I != E) | 328 | 2.07G | memcpy(Dest, I, (E - I) * sizeof(T)); | 329 | 2.07G | } |
_ZN7llvm_ks23SmallVectorTemplateBaseIcLb1EE18uninitialized_copyIccEEvPT_S4_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS7_12remove_constIS3_E4typeES5_EE5valueEvE4typeE Line | Count | Source | 322 | 195k | T2>::value>::type * = nullptr) { | 323 | | // Use memcpy for PODs iterated by pointers (which includes SmallVector | 324 | | // iterators): std::uninitialized_copy optimizes to memmove, but we can | 325 | | // use memcpy here. Note that I and E are iterators and thus might be | 326 | | // invalid for memcpy if they are equal. | 327 | 195k | if (I != E) | 328 | 195k | memcpy(Dest, I, (E - I) * sizeof(T)); | 329 | 195k | } |
Unexecuted instantiation: _ZN7llvm_ks23SmallVectorTemplateBaseIjLb1EE18uninitialized_copyIjjEEvPT_S4_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS7_12remove_constIS3_E4typeES5_EE5valueEvE4typeE Unexecuted instantiation: _ZN7llvm_ks23SmallVectorTemplateBaseIjLb1EE18uninitialized_copyIKjjEEvPT_S5_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS8_12remove_constIS4_E4typeES6_EE5valueEvE4typeE Unexecuted instantiation: _ZN7llvm_ks23SmallVectorTemplateBaseINS_5SMLocELb1EE18uninitialized_copyIS1_S1_EEvPT_S5_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS8_12remove_constIS4_E4typeES6_EE5valueEvE4typeE _ZN7llvm_ks23SmallVectorTemplateBaseINS_9MCOperandELb1EE18uninitialized_copyIS1_S1_EEvPT_S5_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS8_12remove_constIS4_E4typeES6_EE5valueEvE4typeE Line | Count | Source | 322 | 263 | T2>::value>::type * = nullptr) { | 323 | | // Use memcpy for PODs iterated by pointers (which includes SmallVector | 324 | | // iterators): std::uninitialized_copy optimizes to memmove, but we can | 325 | | // use memcpy here. Note that I and E are iterators and thus might be | 326 | | // invalid for memcpy if they are equal. | 327 | 263 | if (I != E) | 328 | 263 | memcpy(Dest, I, (E - I) * sizeof(T)); | 329 | 263 | } |
Unexecuted instantiation: _ZN7llvm_ks23SmallVectorTemplateBaseINS_16HexagonMCChecker8NewSenseELb1EE18uninitialized_copyIS2_S2_EEvPT_S6_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS9_12remove_constIS5_E4typeES7_EE5valueEvE4typeE _ZN7llvm_ks23SmallVectorTemplateBaseINS_15DuplexCandidateELb1EE18uninitialized_copyIS1_S1_EEvPT_S5_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS8_12remove_constIS4_E4typeES6_EE5valueEvE4typeE Line | Count | Source | 322 | 1 | T2>::value>::type * = nullptr) { | 323 | | // Use memcpy for PODs iterated by pointers (which includes SmallVector | 324 | | // iterators): std::uninitialized_copy optimizes to memmove, but we can | 325 | | // use memcpy here. Note that I and E are iterators and thus might be | 326 | | // invalid for memcpy if they are equal. | 327 | 1 | if (I != E) | 328 | 1 | memcpy(Dest, I, (E - I) * sizeof(T)); | 329 | 1 | } |
_ZN7llvm_ks23SmallVectorTemplateBaseINS_15DuplexCandidateELb1EE18uninitialized_copyIKS1_S1_EEvPT_S6_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS9_12remove_constIS5_E4typeES7_EE5valueEvE4typeE Line | Count | Source | 322 | 1 | T2>::value>::type * = nullptr) { | 323 | | // Use memcpy for PODs iterated by pointers (which includes SmallVector | 324 | | // iterators): std::uninitialized_copy optimizes to memmove, but we can | 325 | | // use memcpy here. Note that I and E are iterators and thus might be | 326 | | // invalid for memcpy if they are equal. | 327 | 1 | if (I != E) | 328 | 1 | memcpy(Dest, I, (E - I) * sizeof(T)); | 329 | 1 | } |
Unexecuted instantiation: _ZN7llvm_ks23SmallVectorTemplateBaseINS_17ConstantPoolEntryELb1EE18uninitialized_copyIS1_S1_EEvPT_S5_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS8_12remove_constIS4_E4typeES6_EE5valueEvE4typeE _ZN7llvm_ks23SmallVectorTemplateBaseINS_17ConstantPoolEntryELb1EE18uninitialized_copyIKS1_S1_EEvPT_S6_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS9_12remove_constIS5_E4typeES7_EE5valueEvE4typeE Line | Count | Source | 322 | 12 | T2>::value>::type * = nullptr) { | 323 | | // Use memcpy for PODs iterated by pointers (which includes SmallVector | 324 | | // iterators): std::uninitialized_copy optimizes to memmove, but we can | 325 | | // use memcpy here. Note that I and E are iterators and thus might be | 326 | | // invalid for memcpy if they are equal. | 327 | 12 | if (I != E) | 328 | 12 | memcpy(Dest, I, (E - I) * sizeof(T)); | 329 | 12 | } |
_ZN7llvm_ks23SmallVectorTemplateBaseINS_7MCFixupELb1EE18uninitialized_copyIKS1_S1_EEvPT_S6_PT0_PNSt3__19enable_ifIXsr3std7is_sameINS9_12remove_constIS5_E4typeES7_EE5valueEvE4typeE Line | Count | Source | 322 | 123 | T2>::value>::type * = nullptr) { | 323 | | // Use memcpy for PODs iterated by pointers (which includes SmallVector | 324 | | // iterators): std::uninitialized_copy optimizes to memmove, but we can | 325 | | // use memcpy here. Note that I and E are iterators and thus might be | 326 | | // invalid for memcpy if they are equal. | 327 | 123 | if (I != E) | 328 | 123 | memcpy(Dest, I, (E - I) * sizeof(T)); | 329 | 123 | } |
|
330 | | |
331 | | /// Double the size of the allocated memory, guaranteeing space for at |
332 | | /// least one more element or MinSize if specified. |
333 | 147k | void grow(size_t MinSize = 0) { |
334 | 147k | this->grow_pod(MinSize*sizeof(T), sizeof(T)); |
335 | 147k | } llvm_ks::SmallVectorTemplateBase<llvm_ks::MCOperand, true>::grow(unsigned long) Line | Count | Source | 333 | 121 | void grow(size_t MinSize = 0) { | 334 | 121 | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 121 | } |
llvm_ks::SmallVectorTemplateBase<char, true>::grow(unsigned long) Line | Count | Source | 333 | 69.2k | void grow(size_t MinSize = 0) { | 334 | 69.2k | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 69.2k | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCSymbol*, true>::grow(unsigned long) Line | Count | Source | 333 | 9.00k | void grow(size_t MinSize = 0) { | 334 | 9.00k | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 9.00k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, true>::grow(unsigned long) llvm_ks::SmallVectorTemplateBase<std::__1::pair<void*, unsigned long>, true>::grow(unsigned long) Line | Count | Source | 333 | 132 | void grow(size_t MinSize = 0) { | 334 | 132 | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 132 | } |
llvm_ks::SmallVectorTemplateBase<void*, true>::grow(unsigned long) Line | Count | Source | 333 | 4.26k | void grow(size_t MinSize = 0) { | 334 | 4.26k | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 4.26k | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCFixup, true>::grow(unsigned long) Line | Count | Source | 333 | 16.0k | void grow(size_t MinSize = 0) { | 334 | 16.0k | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 16.0k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::MCDataFragment*, true>::grow(unsigned long) llvm_ks::SmallVectorTemplateBase<llvm_ks::MCSection*, true>::grow(unsigned long) Line | Count | Source | 333 | 1 | void grow(size_t MinSize = 0) { | 334 | 1 | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 1 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::AsmRewrite, true>::grow(unsigned long) llvm_ks::SmallVectorTemplateBase<llvm_ks::SMLoc, true>::grow(unsigned long) Line | Count | Source | 333 | 28.8k | void grow(size_t MinSize = 0) { | 334 | 28.8k | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 28.8k | } |
llvm_ks::SmallVectorTemplateBase<unsigned int, true>::grow(unsigned long) Line | Count | Source | 333 | 104 | void grow(size_t MinSize = 0) { | 334 | 104 | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 104 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<bool, true>::grow(unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::pair<void*, bool>, true>::grow(unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, true>::grow(unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<unsigned long, true>::grow(unsigned long) llvm_ks::SmallVectorTemplateBase<llvm_ks::StringRef, true>::grow(unsigned long) Line | Count | Source | 333 | 8.78k | void grow(size_t MinSize = 0) { | 334 | 8.78k | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 8.78k | } |
llvm_ks::SmallVectorTemplateBase<std::__1::pair<unsigned int, unsigned int>, true>::grow(unsigned long) Line | Count | Source | 333 | 203 | void grow(size_t MinSize = 0) { | 334 | 203 | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 203 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<unsigned char, true>::grow(unsigned long) llvm_ks::SmallVectorTemplateBase<llvm_ks::HexagonMCChecker::NewSense, true>::grow(unsigned long) Line | Count | Source | 333 | 120 | void grow(size_t MinSize = 0) { | 334 | 120 | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 120 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::DuplexCandidate, true>::grow(unsigned long) llvm_ks::SmallVectorTemplateBase<llvm_ks::HexagonInstr, true>::grow(unsigned long) Line | Count | Source | 333 | 172 | void grow(size_t MinSize = 0) { | 334 | 172 | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 172 | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateBase<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, true>::grow(unsigned long) Line | Count | Source | 333 | 9.14k | void grow(size_t MinSize = 0) { | 334 | 9.14k | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 9.14k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateBase<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, true>::grow(unsigned long) Line | Count | Source | 333 | 384 | void grow(size_t MinSize = 0) { | 334 | 384 | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 384 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::FeatureBitset, true>::grow(unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::RISCVMatInt::Inst, true>::grow(unsigned long) llvm_ks::SmallVectorTemplateBase<llvm_ks::ConstantPoolEntry, true>::grow(unsigned long) Line | Count | Source | 333 | 429 | void grow(size_t MinSize = 0) { | 334 | 429 | this->grow_pod(MinSize*sizeof(T), sizeof(T)); | 335 | 429 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_regmatch_t, true>::grow(unsigned long) |
336 | | public: |
337 | 6.22M | void push_back(const T &Elt) { |
338 | 6.22M | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) |
339 | 49.3k | this->grow(); |
340 | 6.22M | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); |
341 | 6.22M | this->setEnd(this->end()+1); |
342 | 6.22M | } llvm_ks::SmallVectorTemplateBase<llvm_ks::MCOperand, true>::push_back(llvm_ks::MCOperand const&) Line | Count | Source | 337 | 812k | void push_back(const T &Elt) { | 338 | 812k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 121 | this->grow(); | 340 | 812k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 812k | this->setEnd(this->end()+1); | 342 | 812k | } |
llvm_ks::SmallVectorTemplateBase<char, true>::push_back(char const&) Line | Count | Source | 337 | 1.05M | void push_back(const T &Elt) { | 338 | 1.05M | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 47 | this->grow(); | 340 | 1.05M | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 1.05M | this->setEnd(this->end()+1); | 342 | 1.05M | } |
llvm_ks::SmallVectorTemplateBase<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, true>::push_back(std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> > const&) Line | Count | Source | 337 | 129k | void push_back(const T &Elt) { | 338 | 129k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 0 | this->grow(); | 340 | 129k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 129k | this->setEnd(this->end()+1); | 342 | 129k | } |
llvm_ks::SmallVectorTemplateBase<std::__1::pair<void*, unsigned long>, true>::push_back(std::__1::pair<void*, unsigned long> const&) Line | Count | Source | 337 | 132 | void push_back(const T &Elt) { | 338 | 132 | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 132 | this->grow(); | 340 | 132 | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 132 | this->setEnd(this->end()+1); | 342 | 132 | } |
llvm_ks::SmallVectorTemplateBase<void*, true>::push_back(void* const&) Line | Count | Source | 337 | 572k | void push_back(const T &Elt) { | 338 | 572k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 4.26k | this->grow(); | 340 | 572k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 572k | this->setEnd(this->end()+1); | 342 | 572k | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCFixup, true>::push_back(llvm_ks::MCFixup const&) Line | Count | Source | 337 | 676k | void push_back(const T &Elt) { | 338 | 676k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 15.9k | this->grow(); | 340 | 676k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 676k | this->setEnd(this->end()+1); | 342 | 676k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::MCDataFragment*, true>::push_back(llvm_ks::MCDataFragment* const&) llvm_ks::SmallVectorTemplateBase<llvm_ks::MCSection*, true>::push_back(llvm_ks::MCSection* const&) Line | Count | Source | 337 | 58.5k | void push_back(const T &Elt) { | 338 | 58.5k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 1 | this->grow(); | 340 | 58.5k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 58.5k | this->setEnd(this->end()+1); | 342 | 58.5k | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::MCSymbol*, true>::push_back(llvm_ks::MCSymbol* const&) Line | Count | Source | 337 | 373k | void push_back(const T &Elt) { | 338 | 373k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 9.00k | this->grow(); | 340 | 373k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 373k | this->setEnd(this->end()+1); | 342 | 373k | } |
llvm_ks::SmallVectorTemplateBase<unsigned int, true>::push_back(unsigned int const&) Line | Count | Source | 337 | 46.6k | void push_back(const T &Elt) { | 338 | 46.6k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 104 | this->grow(); | 340 | 46.6k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 46.6k | this->setEnd(this->end()+1); | 342 | 46.6k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<bool, true>::push_back(bool const&) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, true>::push_back(std::__1::pair<unsigned int, llvm_ks::MCFragment*> const&) llvm_ks::SmallVectorTemplateBase<llvm_ks::StringRef, true>::push_back(llvm_ks::StringRef const&) Line | Count | Source | 337 | 2.15M | void push_back(const T &Elt) { | 338 | 2.15M | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 8.78k | this->grow(); | 340 | 2.15M | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 2.15M | this->setEnd(this->end()+1); | 342 | 2.15M | } |
llvm_ks::SmallVectorTemplateBase<std::__1::pair<unsigned int, unsigned int>, true>::push_back(std::__1::pair<unsigned int, unsigned int> const&) Line | Count | Source | 337 | 11.2k | void push_back(const T &Elt) { | 338 | 11.2k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 203 | this->grow(); | 340 | 11.2k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 11.2k | this->setEnd(this->end()+1); | 342 | 11.2k | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::SMLoc, true>::push_back(llvm_ks::SMLoc const&) Line | Count | Source | 337 | 9.17k | void push_back(const T &Elt) { | 338 | 9.17k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 436 | this->grow(); | 340 | 9.17k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 9.17k | this->setEnd(this->end()+1); | 342 | 9.17k | } |
llvm_ks::SmallVectorTemplateBase<unsigned char, true>::push_back(unsigned char const&) Line | Count | Source | 337 | 130 | void push_back(const T &Elt) { | 338 | 130 | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 0 | this->grow(); | 340 | 130 | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 130 | this->setEnd(this->end()+1); | 342 | 130 | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::HexagonMCChecker::NewSense, true>::push_back(llvm_ks::HexagonMCChecker::NewSense const&) Line | Count | Source | 337 | 2.12k | void push_back(const T &Elt) { | 338 | 2.12k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 120 | this->grow(); | 340 | 2.12k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 2.12k | this->setEnd(this->end()+1); | 342 | 2.12k | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::HexagonInstr, true>::push_back(llvm_ks::HexagonInstr const&) Line | Count | Source | 337 | 20.1k | void push_back(const T &Elt) { | 338 | 20.1k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 172 | this->grow(); | 340 | 20.1k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 20.1k | this->setEnd(this->end()+1); | 342 | 20.1k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateBase<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, true>::push_back(std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long> const&) Line | Count | Source | 337 | 242k | void push_back(const T &Elt) { | 338 | 242k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 9.14k | this->grow(); | 340 | 242k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 242k | this->setEnd(this->end()+1); | 342 | 242k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateBase<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, true>::push_back((anonymous namespace)::X86AsmParser::InfixCalculatorTok const&) Line | Count | Source | 337 | 59.8k | void push_back(const T &Elt) { | 338 | 59.8k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 384 | this->grow(); | 340 | 59.8k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 59.8k | this->setEnd(this->end()+1); | 342 | 59.8k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::FeatureBitset, true>::push_back(llvm_ks::FeatureBitset const&) Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::RISCVMatInt::Inst, true>::push_back(llvm_ks::RISCVMatInt::Inst const&) llvm_ks::SmallVectorTemplateBase<llvm_ks::ConstantPoolEntry, true>::push_back(llvm_ks::ConstantPoolEntry const&) Line | Count | Source | 337 | 6.51k | void push_back(const T &Elt) { | 338 | 6.51k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 429 | this->grow(); | 340 | 6.51k | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 6.51k | this->setEnd(this->end()+1); | 342 | 6.51k | } |
llvm_ks::SmallVectorTemplateBase<llvm_ks::DuplexCandidate, true>::push_back(llvm_ks::DuplexCandidate const&) Line | Count | Source | 337 | 1 | void push_back(const T &Elt) { | 338 | 1 | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 339 | 0 | this->grow(); | 340 | 1 | memcpy(reinterpret_cast<void *>(this->end()), &Elt, sizeof(T)); | 341 | 1 | this->setEnd(this->end()+1); | 342 | 1 | } |
|
343 | | |
344 | 175k | void pop_back() { |
345 | 175k | this->setEnd(this->end()-1); |
346 | 175k | } llvm_ks::SmallVectorTemplateBase<llvm_ks::MCOperand, true>::pop_back() Line | Count | Source | 344 | 18 | void pop_back() { | 345 | 18 | this->setEnd(this->end()-1); | 346 | 18 | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, true>::pop_back() Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::MCDataFragment*, true>::pop_back() Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::StringRef, true>::pop_back() Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<char, true>::pop_back() llvm_ks::SmallVectorTemplateBase<llvm_ks::DuplexCandidate, true>::pop_back() Line | Count | Source | 344 | 1 | void pop_back() { | 345 | 1 | this->setEnd(this->end()-1); | 346 | 1 | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateBase<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, true>::pop_back() Line | Count | Source | 344 | 117k | void pop_back() { | 345 | 117k | this->setEnd(this->end()-1); | 346 | 117k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorTemplateBase<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, true>::pop_back() Line | Count | Source | 344 | 57.4k | void pop_back() { | 345 | 57.4k | this->setEnd(this->end()-1); | 346 | 57.4k | } |
Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::FeatureBitset, true>::pop_back() Unexecuted instantiation: llvm_ks::SmallVectorTemplateBase<llvm_ks::MCFixup, true>::pop_back() |
347 | | }; |
348 | | |
349 | | |
350 | | /// This class consists of common code factored out of the SmallVector class to |
351 | | /// reduce code duplication based on the SmallVector 'N' template parameter. |
352 | | template <typename T> |
353 | | class SmallVectorImpl : public SmallVectorTemplateBase<T, isPodLike<T>::value> { |
354 | | typedef SmallVectorTemplateBase<T, isPodLike<T>::value > SuperClass; |
355 | | |
356 | | SmallVectorImpl(const SmallVectorImpl&) = delete; |
357 | | public: |
358 | | typedef typename SuperClass::iterator iterator; |
359 | | typedef typename SuperClass::size_type size_type; |
360 | | |
361 | | protected: |
362 | | // Default ctor - Initialize to empty. |
363 | | explicit SmallVectorImpl(unsigned N) |
364 | 133M | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { |
365 | 133M | } llvm_ks::SmallVectorImpl<char>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 14.2M | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 14.2M | } |
llvm_ks::SmallVectorImpl<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 377 | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 377 | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCDwarfFile>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 377 | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 377 | } |
llvm_ks::SmallVectorImpl<void*>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 774k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 774k | } |
llvm_ks::SmallVectorImpl<std::__1::pair<void*, unsigned long> >::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 774k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 774k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCDataFragment*>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 129k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 129k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCFixup>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 340k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 340k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCSection*>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 56.5k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 56.5k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCOperand>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 350k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 350k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCSymbol*>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 129k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 129k | } |
llvm_ks::SmallVectorImpl<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> > >::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 104M | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 104M | } |
llvm_ks::SmallVectorImpl<llvm_ks::SMLoc>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 671k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 671k | } |
llvm_ks::SmallVectorImpl<unsigned int>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 776k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 776k | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<bool>::SmallVectorImpl(unsigned int) Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::SmallVectorImpl(unsigned int) llvm_ks::SmallVectorImpl<llvm_ks::AsmToken>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 1.04M | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 1.04M | } |
llvm_ks::SmallVectorImpl<std::__1::pair<unsigned int, llvm_ks::MCFragment*> >::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 5.60M | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 5.60M | } |
llvm_ks::SmallVectorImpl<llvm_ks::StringRef>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 1.57M | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 1.57M | } |
llvm_ks::SmallVectorImpl<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> > >::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 129k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 129k | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<unsigned long>::SmallVectorImpl(unsigned int) llvm_ks::SmallVectorImpl<std::__1::pair<unsigned int, unsigned int> >::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 1.28M | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 1.28M | } |
llvm_ks::SmallVectorImpl<llvm_ks::SMFixIt>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 1.30M | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 1.30M | } |
llvm_ks::SmallVectorImpl<unsigned char>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 341 | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 341 | } |
llvm_ks::SmallVectorImpl<llvm_ks::HexagonMCChecker::NewSense>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 626 | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 626 | } |
llvm_ks::SmallVectorImpl<llvm_ks::DuplexCandidate>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 9.68k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 9.68k | } |
llvm_ks::SmallVectorImpl<llvm_ks::HexagonInstr>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 16.6k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 16.6k | } |
MipsAsmParser.cpp:llvm_ks::SmallVectorImpl<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> > >::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 5.46k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 5.46k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCInst>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 16.4k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 16.4k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorImpl<(anonymous namespace)::X86AsmParser::InfixCalculatorTok>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 34.5k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 34.5k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorImpl<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long> >::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 58.6k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 58.6k | } |
llvm_ks::SmallVectorImpl<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 25 | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 25 | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::RISCVMatInt::Inst>::SmallVectorImpl(unsigned int) llvm_ks::SmallVectorImpl<llvm_ks::FeatureBitset>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 25.0k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 25.0k | } |
llvm_ks::SmallVectorImpl<llvm_ks::ConstantPoolEntry>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 1.54k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 1.54k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCLOHDirective>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 129k | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 129k | } |
llvm_ks::SmallVectorImpl<llvm_regmatch_t>::SmallVectorImpl(unsigned int) Line | Count | Source | 364 | 578 | : SmallVectorTemplateBase<T, isPodLike<T>::value>(N*sizeof(T)) { | 365 | 578 | } |
|
366 | | |
367 | | public: |
368 | 133M | ~SmallVectorImpl() { |
369 | | // Destroy the constructed elements in the vector. |
370 | 133M | this->destroy_range(this->begin(), this->end()); |
371 | | |
372 | | // If this wasn't grown from the inline copy, deallocate the old space. |
373 | 133M | if (!this->isSmall()) |
374 | 144k | free(this->begin()); |
375 | 133M | } llvm_ks::SmallVectorImpl<char>::~SmallVectorImpl() Line | Count | Source | 368 | 14.2M | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 14.2M | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 14.2M | if (!this->isSmall()) | 374 | 26.1k | free(this->begin()); | 375 | 14.2M | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCDwarfFile>::~SmallVectorImpl() Line | Count | Source | 368 | 377 | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 377 | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 377 | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 377 | } |
llvm_ks::SmallVectorImpl<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::~SmallVectorImpl() Line | Count | Source | 368 | 377 | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 377 | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 377 | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 377 | } |
llvm_ks::SmallVectorImpl<void*>::~SmallVectorImpl() Line | Count | Source | 368 | 774k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 774k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 774k | if (!this->isSmall()) | 374 | 2.43k | free(this->begin()); | 375 | 774k | } |
llvm_ks::SmallVectorImpl<std::__1::pair<void*, unsigned long> >::~SmallVectorImpl() Line | Count | Source | 368 | 774k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 774k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 774k | if (!this->isSmall()) | 374 | 85 | free(this->begin()); | 375 | 774k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCDataFragment*>::~SmallVectorImpl() Line | Count | Source | 368 | 129k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 129k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 129k | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 129k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCFixup>::~SmallVectorImpl() Line | Count | Source | 368 | 340k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 340k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 340k | if (!this->isSmall()) | 374 | 8.10k | free(this->begin()); | 375 | 340k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCSection*>::~SmallVectorImpl() Line | Count | Source | 368 | 56.5k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 56.5k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 56.5k | if (!this->isSmall()) | 374 | 1 | free(this->begin()); | 375 | 56.5k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCOperand>::~SmallVectorImpl() Line | Count | Source | 368 | 341k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 341k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 341k | if (!this->isSmall()) | 374 | 42 | free(this->begin()); | 375 | 341k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCSymbol*>::~SmallVectorImpl() Line | Count | Source | 368 | 129k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 129k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 129k | if (!this->isSmall()) | 374 | 4.00k | free(this->begin()); | 375 | 129k | } |
llvm_ks::SmallVectorImpl<llvm_ks::SMFixIt>::~SmallVectorImpl() Line | Count | Source | 368 | 1.30M | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 1.30M | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 1.30M | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 1.30M | } |
llvm_ks::SmallVectorImpl<llvm_ks::SMLoc>::~SmallVectorImpl() Line | Count | Source | 368 | 671k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 671k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 671k | if (!this->isSmall()) | 374 | 18.3k | free(this->begin()); | 375 | 671k | } |
llvm_ks::SmallVectorImpl<unsigned int>::~SmallVectorImpl() Line | Count | Source | 368 | 776k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 776k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 776k | if (!this->isSmall()) | 374 | 55 | free(this->begin()); | 375 | 776k | } |
llvm_ks::SmallVectorImpl<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> > >::~SmallVectorImpl() Line | Count | Source | 368 | 104M | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 104M | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 104M | if (!this->isSmall()) | 374 | 23.1k | free(this->begin()); | 375 | 104M | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::~SmallVectorImpl() Unexecuted instantiation: llvm_ks::SmallVectorImpl<bool>::~SmallVectorImpl() llvm_ks::SmallVectorImpl<llvm_ks::AsmToken>::~SmallVectorImpl() Line | Count | Source | 368 | 1.04M | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 1.04M | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 1.04M | if (!this->isSmall()) | 374 | 49.8k | free(this->begin()); | 375 | 1.04M | } |
llvm_ks::SmallVectorImpl<std::__1::pair<unsigned int, llvm_ks::MCFragment*> >::~SmallVectorImpl() Line | Count | Source | 368 | 5.60M | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 5.60M | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 5.60M | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 5.60M | } |
llvm_ks::SmallVectorImpl<llvm_ks::StringRef>::~SmallVectorImpl() Line | Count | Source | 368 | 1.57M | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 1.57M | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 1.57M | if (!this->isSmall()) | 374 | 4.02k | free(this->begin()); | 375 | 1.57M | } |
llvm_ks::SmallVectorImpl<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> > >::~SmallVectorImpl() Line | Count | Source | 368 | 129k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 129k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 129k | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 129k | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<unsigned long>::~SmallVectorImpl() llvm_ks::SmallVectorImpl<std::__1::pair<unsigned int, unsigned int> >::~SmallVectorImpl() Line | Count | Source | 368 | 1.28M | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 1.28M | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 1.28M | if (!this->isSmall()) | 374 | 105 | free(this->begin()); | 375 | 1.28M | } |
llvm_ks::SmallVectorImpl<llvm_ks::ConstantPoolEntry>::~SmallVectorImpl() Line | Count | Source | 368 | 1.54k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 1.54k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 1.54k | if (!this->isSmall()) | 374 | 167 | free(this->begin()); | 375 | 1.54k | } |
llvm_ks::SmallVectorImpl<unsigned char>::~SmallVectorImpl() Line | Count | Source | 368 | 341 | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 341 | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 341 | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 341 | } |
llvm_ks::SmallVectorImpl<llvm_ks::HexagonMCChecker::NewSense>::~SmallVectorImpl() Line | Count | Source | 368 | 626 | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 626 | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 626 | if (!this->isSmall()) | 374 | 37 | free(this->begin()); | 375 | 626 | } |
llvm_ks::SmallVectorImpl<llvm_ks::HexagonInstr>::~SmallVectorImpl() Line | Count | Source | 368 | 16.6k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 16.6k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 16.6k | if (!this->isSmall()) | 374 | 57 | free(this->begin()); | 375 | 16.6k | } |
llvm_ks::SmallVectorImpl<llvm_ks::DuplexCandidate>::~SmallVectorImpl() Line | Count | Source | 368 | 9.68k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 9.68k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 9.68k | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 9.68k | } |
MipsAsmParser.cpp:llvm_ks::SmallVectorImpl<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> > >::~SmallVectorImpl() Line | Count | Source | 368 | 5.46k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 5.46k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 5.46k | if (!this->isSmall()) | 374 | 4 | free(this->begin()); | 375 | 5.46k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCInst>::~SmallVectorImpl() Line | Count | Source | 368 | 16.4k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 16.4k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 16.4k | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 16.4k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorImpl<(anonymous namespace)::X86AsmParser::InfixCalculatorTok>::~SmallVectorImpl() Line | Count | Source | 368 | 34.5k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 34.5k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 34.5k | if (!this->isSmall()) | 374 | 141 | free(this->begin()); | 375 | 34.5k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorImpl<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long> >::~SmallVectorImpl() Line | Count | Source | 368 | 58.6k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 58.6k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 58.6k | if (!this->isSmall()) | 374 | 7.57k | free(this->begin()); | 375 | 58.6k | } |
llvm_ks::SmallVectorImpl<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >::~SmallVectorImpl() Line | Count | Source | 368 | 25 | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 25 | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 25 | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 25 | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::RISCVMatInt::Inst>::~SmallVectorImpl() llvm_ks::SmallVectorImpl<llvm_ks::FeatureBitset>::~SmallVectorImpl() Line | Count | Source | 368 | 25.0k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 25.0k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 25.0k | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 25.0k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCLOHDirective>::~SmallVectorImpl() Line | Count | Source | 368 | 129k | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 129k | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 129k | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 129k | } |
llvm_ks::SmallVectorImpl<llvm_regmatch_t>::~SmallVectorImpl() Line | Count | Source | 368 | 578 | ~SmallVectorImpl() { | 369 | | // Destroy the constructed elements in the vector. | 370 | 578 | this->destroy_range(this->begin(), this->end()); | 371 | | | 372 | | // If this wasn't grown from the inline copy, deallocate the old space. | 373 | 578 | if (!this->isSmall()) | 374 | 0 | free(this->begin()); | 375 | 578 | } |
|
376 | | |
377 | | |
378 | 1.89M | void clear() { |
379 | 1.89M | this->destroy_range(this->begin(), this->end()); |
380 | 1.89M | this->EndX = this->BeginX; |
381 | 1.89M | } llvm_ks::SmallVectorImpl<llvm_ks::MCOperand>::clear() Line | Count | Source | 378 | 289k | void clear() { | 379 | 289k | this->destroy_range(this->begin(), this->end()); | 380 | 289k | this->EndX = this->BeginX; | 381 | 289k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCSymbol*>::clear() Line | Count | Source | 378 | 144k | void clear() { | 379 | 144k | this->destroy_range(this->begin(), this->end()); | 380 | 144k | this->EndX = this->BeginX; | 381 | 144k | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::MCLOHDirective>::clear() llvm_ks::SmallVectorImpl<char>::clear() Line | Count | Source | 378 | 258k | void clear() { | 379 | 258k | this->destroy_range(this->begin(), this->end()); | 380 | 258k | this->EndX = this->BeginX; | 381 | 258k | } |
llvm_ks::SmallVectorImpl<std::__1::pair<void*, unsigned long> >::clear() Line | Count | Source | 378 | 1.16M | void clear() { | 379 | 1.16M | this->destroy_range(this->begin(), this->end()); | 380 | 1.16M | this->EndX = this->BeginX; | 381 | 1.16M | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::MCDataFragment*>::clear() Unexecuted instantiation: llvm_ks::SmallVectorImpl<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::clear() Unexecuted instantiation: llvm_ks::SmallVectorImpl<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> > >::clear() Unexecuted instantiation: llvm_ks::SmallVectorImpl<unsigned long>::clear() llvm_ks::SmallVectorImpl<unsigned int>::clear() Line | Count | Source | 378 | 112 | void clear() { | 379 | 112 | this->destroy_range(this->begin(), this->end()); | 380 | 112 | this->EndX = this->BeginX; | 381 | 112 | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::SMFixIt>::clear() llvm_ks::SmallVectorImpl<llvm_ks::SMLoc>::clear() Line | Count | Source | 378 | 13.6k | void clear() { | 379 | 13.6k | this->destroy_range(this->begin(), this->end()); | 380 | 13.6k | this->EndX = this->BeginX; | 381 | 13.6k | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::HexagonMCChecker::NewSense>::clear() llvm_ks::SmallVectorImpl<llvm_ks::DuplexCandidate>::clear() Line | Count | Source | 378 | 3.22k | void clear() { | 379 | 3.22k | this->destroy_range(this->begin(), this->end()); | 380 | 3.22k | this->EndX = this->BeginX; | 381 | 3.22k | } |
llvm_ks::SmallVectorImpl<llvm_ks::HexagonInstr>::clear() Line | Count | Source | 378 | 16.6k | void clear() { | 379 | 16.6k | this->destroy_range(this->begin(), this->end()); | 380 | 16.6k | this->EndX = this->BeginX; | 381 | 16.6k | } |
llvm_ks::SmallVectorImpl<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> > >::clear() Line | Count | Source | 378 | 1.78k | void clear() { | 379 | 1.78k | this->destroy_range(this->begin(), this->end()); | 380 | 1.78k | this->EndX = this->BeginX; | 381 | 1.78k | } |
llvm_ks::SmallVectorImpl<llvm_ks::ConstantPoolEntry>::clear() Line | Count | Source | 378 | 377 | void clear() { | 379 | 377 | this->destroy_range(this->begin(), this->end()); | 380 | 377 | this->EndX = this->BeginX; | 381 | 377 | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::StringRef>::clear() |
382 | | |
383 | 1.23M | void resize(size_type N) { |
384 | 1.23M | if (N < this->size()) { |
385 | 0 | this->destroy_range(this->begin()+N, this->end()); |
386 | 0 | this->setEnd(this->begin()+N); |
387 | 1.23M | } else if (N > this->size()) { |
388 | 180k | if (this->capacity() < N) |
389 | 28.4k | this->grow(N); |
390 | 1.02M | for (auto I = this->end(), E = this->begin() + N; I != E; ++I) |
391 | 842k | new (&*I) T(); |
392 | 180k | this->setEnd(this->begin()+N); |
393 | 180k | } |
394 | 1.23M | } llvm_ks::SmallVectorImpl<char>::resize(unsigned long) Line | Count | Source | 383 | 723k | void resize(size_type N) { | 384 | 723k | if (N < this->size()) { | 385 | 0 | this->destroy_range(this->begin()+N, this->end()); | 386 | 0 | this->setEnd(this->begin()+N); | 387 | 723k | } else if (N > this->size()) { | 388 | 0 | if (this->capacity() < N) | 389 | 0 | this->grow(N); | 390 | 0 | for (auto I = this->end(), E = this->begin() + N; I != E; ++I) | 391 | 0 | new (&*I) T(); | 392 | 0 | this->setEnd(this->begin()+N); | 393 | 0 | } | 394 | 723k | } |
llvm_ks::SmallVectorImpl<llvm_ks::SMLoc>::resize(unsigned long) Line | Count | Source | 383 | 514k | void resize(size_type N) { | 384 | 514k | if (N < this->size()) { | 385 | 0 | this->destroy_range(this->begin()+N, this->end()); | 386 | 0 | this->setEnd(this->begin()+N); | 387 | 514k | } else if (N > this->size()) { | 388 | 180k | if (this->capacity() < N) | 389 | 28.4k | this->grow(N); | 390 | 1.01M | for (auto I = this->end(), E = this->begin() + N; I != E; ++I) | 391 | 838k | new (&*I) T(); | 392 | 180k | this->setEnd(this->begin()+N); | 393 | 180k | } | 394 | 514k | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<std::__1::pair<void*, bool> >::resize(unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorImpl<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::resize(unsigned long) Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::StringRef>::resize(unsigned long) llvm_ks::SmallVectorImpl<llvm_regmatch_t>::resize(unsigned long) Line | Count | Source | 383 | 578 | void resize(size_type N) { | 384 | 578 | if (N < this->size()) { | 385 | 0 | this->destroy_range(this->begin()+N, this->end()); | 386 | 0 | this->setEnd(this->begin()+N); | 387 | 578 | } else if (N > this->size()) { | 388 | 578 | if (this->capacity() < N) | 389 | 0 | this->grow(N); | 390 | 4.04k | for (auto I = this->end(), E = this->begin() + N; I != E; ++I) | 391 | 3.46k | new (&*I) T(); | 392 | 578 | this->setEnd(this->begin()+N); | 393 | 578 | } | 394 | 578 | } |
|
395 | | |
396 | 465k | void resize(size_type N, const T &NV) { |
397 | 465k | if (N < this->size()) { |
398 | 0 | this->destroy_range(this->begin()+N, this->end()); |
399 | 0 | this->setEnd(this->begin()+N); |
400 | 465k | } else if (N > this->size()) { |
401 | 465k | if (this->capacity() < N) |
402 | 6.49k | this->grow(N); |
403 | 465k | std::uninitialized_fill(this->end(), this->begin()+N, NV); |
404 | 465k | this->setEnd(this->begin()+N); |
405 | 465k | } |
406 | 465k | } |
407 | | |
408 | 6 | void reserve(size_type N) { |
409 | 6 | if (this->capacity() < N) |
410 | 0 | this->grow(N); |
411 | 6 | } Unexecuted instantiation: llvm_ks::SmallVectorImpl<unsigned int>::reserve(unsigned long) llvm_ks::SmallVectorImpl<char>::reserve(unsigned long) Line | Count | Source | 408 | 6 | void reserve(size_type N) { | 409 | 6 | if (this->capacity() < N) | 410 | 0 | this->grow(N); | 411 | 6 | } |
|
412 | | |
413 | 141k | T LLVM_ATTRIBUTE_UNUSED_RESULT pop_back_val() { |
414 | 141k | T Result = ::std::move(this->back()); |
415 | 141k | this->pop_back(); |
416 | 141k | return Result; |
417 | 141k | } llvm_ks::SmallVectorImpl<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> > >::pop_back_val() Line | Count | Source | 413 | 1.30k | T LLVM_ATTRIBUTE_UNUSED_RESULT pop_back_val() { | 414 | 1.30k | T Result = ::std::move(this->back()); | 415 | 1.30k | this->pop_back(); | 416 | 1.30k | return Result; | 417 | 1.30k | } |
llvm_ks::SmallVectorImpl<llvm_ks::DuplexCandidate>::pop_back_val() Line | Count | Source | 413 | 1 | T LLVM_ATTRIBUTE_UNUSED_RESULT pop_back_val() { | 414 | 1 | T Result = ::std::move(this->back()); | 415 | 1 | this->pop_back(); | 416 | 1 | return Result; | 417 | 1 | } |
X86AsmParser.cpp:llvm_ks::SmallVectorImpl<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long> >::pop_back_val() Line | Count | Source | 413 | 117k | T LLVM_ATTRIBUTE_UNUSED_RESULT pop_back_val() { | 414 | 117k | T Result = ::std::move(this->back()); | 415 | 117k | this->pop_back(); | 416 | 117k | return Result; | 417 | 117k | } |
X86AsmParser.cpp:llvm_ks::SmallVectorImpl<(anonymous namespace)::X86AsmParser::InfixCalculatorTok>::pop_back_val() Line | Count | Source | 413 | 22.6k | T LLVM_ATTRIBUTE_UNUSED_RESULT pop_back_val() { | 414 | 22.6k | T Result = ::std::move(this->back()); | 415 | 22.6k | this->pop_back(); | 416 | 22.6k | return Result; | 417 | 22.6k | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::FeatureBitset>::pop_back_val() |
418 | | |
419 | | void swap(SmallVectorImpl &RHS); |
420 | | |
421 | | /// Add the specified range to the end of the SmallVector. |
422 | | template<typename in_iter> |
423 | 2.07G | void append(in_iter in_start, in_iter in_end) { |
424 | 2.07G | size_type NumInputs = std::distance(in_start, in_end); |
425 | | // Grow allocated space if needed. |
426 | 2.07G | if (NumInputs > size_type(this->capacity_ptr()-this->end())) |
427 | 61.3k | this->grow(this->size()+NumInputs); |
428 | | |
429 | | // Copy the new elements over. |
430 | 2.07G | this->uninitialized_copy(in_start, in_end, this->end()); |
431 | 2.07G | this->setEnd(this->end() + NumInputs); |
432 | 2.07G | } Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::MCSymbol*>::append<llvm_ks::MCSymbol* const*>(llvm_ks::MCSymbol* const*, llvm_ks::MCSymbol* const*) void llvm_ks::SmallVectorImpl<char>::append<char const*>(char const*, char const*) Line | Count | Source | 423 | 2.07G | void append(in_iter in_start, in_iter in_end) { | 424 | 2.07G | size_type NumInputs = std::distance(in_start, in_end); | 425 | | // Grow allocated space if needed. | 426 | 2.07G | if (NumInputs > size_type(this->capacity_ptr()-this->end())) | 427 | 57.2k | this->grow(this->size()+NumInputs); | 428 | | | 429 | | // Copy the new elements over. | 430 | 2.07G | this->uninitialized_copy(in_start, in_end, this->end()); | 431 | 2.07G | this->setEnd(this->end() + NumInputs); | 432 | 2.07G | } |
void llvm_ks::SmallVectorImpl<char>::append<char*>(char*, char*) Line | Count | Source | 423 | 195k | void append(in_iter in_start, in_iter in_end) { | 424 | 195k | size_type NumInputs = std::distance(in_start, in_end); | 425 | | // Grow allocated space if needed. | 426 | 195k | if (NumInputs > size_type(this->capacity_ptr()-this->end())) | 427 | 4.07k | this->grow(this->size()+NumInputs); | 428 | | | 429 | | // Copy the new elements over. | 430 | 195k | this->uninitialized_copy(in_start, in_end, this->end()); | 431 | 195k | this->setEnd(this->end() + NumInputs); | 432 | 195k | } |
Unexecuted instantiation: void llvm_ks::SmallVectorImpl<unsigned int>::append<unsigned short const*>(unsigned short const*, unsigned short const*) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<unsigned int>::append<std::__1::move_iterator<unsigned int*> >(std::__1::move_iterator<unsigned int*>, std::__1::move_iterator<unsigned int*>) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<unsigned int>::append<unsigned int const*>(unsigned int const*, unsigned int const*) void llvm_ks::SmallVectorImpl<llvm_ks::SMFixIt>::append<llvm_ks::SMFixIt const*>(llvm_ks::SMFixIt const*, llvm_ks::SMFixIt const*) Line | Count | Source | 423 | 1.30M | void append(in_iter in_start, in_iter in_end) { | 424 | 1.30M | size_type NumInputs = std::distance(in_start, in_end); | 425 | | // Grow allocated space if needed. | 426 | 1.30M | if (NumInputs > size_type(this->capacity_ptr()-this->end())) | 427 | 0 | this->grow(this->size()+NumInputs); | 428 | | | 429 | | // Copy the new elements over. | 430 | 1.30M | this->uninitialized_copy(in_start, in_end, this->end()); | 431 | 1.30M | this->setEnd(this->end() + NumInputs); | 432 | 1.30M | } |
Unexecuted instantiation: void llvm_ks::SmallVectorImpl<unsigned int>::append<unsigned int*>(unsigned int*, unsigned int*) |
433 | | |
434 | | /// Add the specified range to the end of the SmallVector. |
435 | 0 | void append(size_type NumInputs, const T &Elt) { |
436 | | // Grow allocated space if needed. |
437 | 0 | if (NumInputs > size_type(this->capacity_ptr()-this->end())) |
438 | 0 | this->grow(this->size()+NumInputs); |
439 | | |
440 | | // Copy the new elements over. |
441 | 0 | std::uninitialized_fill_n(this->end(), NumInputs, Elt); |
442 | 0 | this->setEnd(this->end() + NumInputs); |
443 | 0 | } |
444 | | |
445 | | void append(std::initializer_list<T> IL) { |
446 | | append(IL.begin(), IL.end()); |
447 | | } |
448 | | |
449 | 0 | void assign(size_type NumElts, const T &Elt) { |
450 | 0 | clear(); |
451 | 0 | if (this->capacity() < NumElts) |
452 | 0 | this->grow(NumElts); |
453 | 0 | this->setEnd(this->begin()+NumElts); |
454 | 0 | std::uninitialized_fill(this->begin(), this->end(), Elt); |
455 | 0 | } Unexecuted instantiation: llvm_ks::SmallVectorImpl<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::assign(unsigned long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) Unexecuted instantiation: llvm_ks::SmallVectorImpl<unsigned long>::assign(unsigned long, unsigned long const&) |
456 | | |
457 | | void assign(std::initializer_list<T> IL) { |
458 | | clear(); |
459 | | append(IL); |
460 | | } |
461 | | |
462 | 197M | iterator erase(iterator I) { |
463 | 197M | assert(I >= this->begin() && "Iterator to erase is out of bounds."); |
464 | 197M | assert(I < this->end() && "Erasing at past-the-end iterator."); |
465 | | |
466 | 197M | iterator N = I; |
467 | | // Shift all elts down one. |
468 | 197M | this->move(I+1, this->end(), I); |
469 | | // Drop the last elt. |
470 | 197M | this->pop_back(); |
471 | 197M | return(N); |
472 | 197M | } llvm_ks::SmallVectorImpl<llvm_ks::MCOperand>::erase(llvm_ks::MCOperand*) Line | Count | Source | 462 | 18 | iterator erase(iterator I) { | 463 | 18 | assert(I >= this->begin() && "Iterator to erase is out of bounds."); | 464 | 18 | assert(I < this->end() && "Erasing at past-the-end iterator."); | 465 | | | 466 | 18 | iterator N = I; | 467 | | // Shift all elts down one. | 468 | 18 | this->move(I+1, this->end(), I); | 469 | | // Drop the last elt. | 470 | 18 | this->pop_back(); | 471 | 18 | return(N); | 472 | 18 | } |
llvm_ks::SmallVectorImpl<llvm_ks::AsmToken>::erase(llvm_ks::AsmToken*) Line | Count | Source | 462 | 197M | iterator erase(iterator I) { | 463 | 197M | assert(I >= this->begin() && "Iterator to erase is out of bounds."); | 464 | 197M | assert(I < this->end() && "Erasing at past-the-end iterator."); | 465 | | | 466 | 197M | iterator N = I; | 467 | | // Shift all elts down one. | 468 | 197M | this->move(I+1, this->end(), I); | 469 | | // Drop the last elt. | 470 | 197M | this->pop_back(); | 471 | 197M | return(N); | 472 | 197M | } |
llvm_ks::SmallVectorImpl<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> > >::erase(std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*) Line | Count | Source | 462 | 7.45k | iterator erase(iterator I) { | 463 | 7.45k | assert(I >= this->begin() && "Iterator to erase is out of bounds."); | 464 | 7.45k | assert(I < this->end() && "Erasing at past-the-end iterator."); | 465 | | | 466 | 7.45k | iterator N = I; | 467 | | // Shift all elts down one. | 468 | 7.45k | this->move(I+1, this->end(), I); | 469 | | // Drop the last elt. | 470 | 7.45k | this->pop_back(); | 471 | 7.45k | return(N); | 472 | 7.45k | } |
|
473 | | |
474 | 404k | iterator erase(iterator S, iterator E) { |
475 | 404k | assert(S >= this->begin() && "Range to erase is out of bounds."); |
476 | 404k | assert(S <= E && "Trying to erase invalid range."); |
477 | 404k | assert(E <= this->end() && "Trying to erase past the end."); |
478 | | |
479 | 404k | iterator N = S; |
480 | | // Shift all elts down. |
481 | 404k | iterator I = this->move(E, this->end(), S); |
482 | | // Drop the last elts. |
483 | 404k | this->destroy_range(I, this->end()); |
484 | 404k | this->setEnd(I); |
485 | 404k | return(N); |
486 | 404k | } llvm_ks::SmallVectorImpl<void*>::erase(void**, void**) Line | Count | Source | 474 | 404k | iterator erase(iterator S, iterator E) { | 475 | 404k | assert(S >= this->begin() && "Range to erase is out of bounds."); | 476 | 404k | assert(S <= E && "Trying to erase invalid range."); | 477 | 404k | assert(E <= this->end() && "Trying to erase past the end."); | 478 | | | 479 | 404k | iterator N = S; | 480 | | // Shift all elts down. | 481 | 404k | iterator I = this->move(E, this->end(), S); | 482 | | // Drop the last elts. | 483 | 404k | this->destroy_range(I, this->end()); | 484 | 404k | this->setEnd(I); | 485 | 404k | return(N); | 486 | 404k | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<unsigned int>::erase(unsigned int*, unsigned int*) Unexecuted instantiation: llvm_ks::SmallVectorImpl<char>::erase(char*, char*) |
487 | | |
488 | 1.81k | iterator insert(iterator I, T &&Elt) { |
489 | 1.81k | if (I == this->end()) { // Important special case for empty vector. |
490 | 0 | this->push_back(::std::move(Elt)); |
491 | 0 | return this->end()-1; |
492 | 0 | } |
493 | | |
494 | 1.81k | assert(I >= this->begin() && "Insertion iterator is out of bounds."); |
495 | 1.81k | assert(I <= this->end() && "Inserting past the end of the vector."); |
496 | | |
497 | 1.81k | if (this->EndX >= this->CapacityX) { |
498 | 63 | size_t EltNo = I-this->begin(); |
499 | 63 | this->grow(); |
500 | 63 | I = this->begin()+EltNo; |
501 | 63 | } |
502 | | |
503 | 1.81k | ::new ((void*) this->end()) T(::std::move(this->back())); |
504 | | // Push everything else over. |
505 | 1.81k | this->move_backward(I, this->end()-1, this->end()); |
506 | 1.81k | this->setEnd(this->end()+1); |
507 | | |
508 | | // If we just moved the element we're inserting, be sure to update |
509 | | // the reference. |
510 | 1.81k | T *EltPtr = &Elt; |
511 | 1.81k | if (I <= EltPtr && EltPtr < this->EndX) |
512 | 0 | ++EltPtr; |
513 | | |
514 | 1.81k | *I = ::std::move(*EltPtr); |
515 | 1.81k | return I; |
516 | 1.81k | } Unexecuted instantiation: llvm_ks::SmallVectorImpl<std::__1::pair<unsigned int, llvm_ks::MCFragment*> >::insert(std::__1::pair<unsigned int, llvm_ks::MCFragment*>*, std::__1::pair<unsigned int, llvm_ks::MCFragment*>&&) llvm_ks::SmallVectorImpl<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> > >::insert(std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >*, std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >&&) Line | Count | Source | 488 | 789 | iterator insert(iterator I, T &&Elt) { | 489 | 789 | if (I == this->end()) { // Important special case for empty vector. | 490 | 0 | this->push_back(::std::move(Elt)); | 491 | 0 | return this->end()-1; | 492 | 0 | } | 493 | | | 494 | 789 | assert(I >= this->begin() && "Insertion iterator is out of bounds."); | 495 | 789 | assert(I <= this->end() && "Inserting past the end of the vector."); | 496 | | | 497 | 789 | if (this->EndX >= this->CapacityX) { | 498 | 18 | size_t EltNo = I-this->begin(); | 499 | 18 | this->grow(); | 500 | 18 | I = this->begin()+EltNo; | 501 | 18 | } | 502 | | | 503 | 789 | ::new ((void*) this->end()) T(::std::move(this->back())); | 504 | | // Push everything else over. | 505 | 789 | this->move_backward(I, this->end()-1, this->end()); | 506 | 789 | this->setEnd(this->end()+1); | 507 | | | 508 | | // If we just moved the element we're inserting, be sure to update | 509 | | // the reference. | 510 | 789 | T *EltPtr = &Elt; | 511 | 789 | if (I <= EltPtr && EltPtr < this->EndX) | 512 | 0 | ++EltPtr; | 513 | | | 514 | 789 | *I = ::std::move(*EltPtr); | 515 | 789 | return I; | 516 | 789 | } |
llvm_ks::SmallVectorImpl<llvm_ks::AsmToken>::insert(llvm_ks::AsmToken*, llvm_ks::AsmToken&&) Line | Count | Source | 488 | 1.02k | iterator insert(iterator I, T &&Elt) { | 489 | 1.02k | if (I == this->end()) { // Important special case for empty vector. | 490 | 0 | this->push_back(::std::move(Elt)); | 491 | 0 | return this->end()-1; | 492 | 0 | } | 493 | | | 494 | 1.02k | assert(I >= this->begin() && "Insertion iterator is out of bounds."); | 495 | 1.02k | assert(I <= this->end() && "Inserting past the end of the vector."); | 496 | | | 497 | 1.02k | if (this->EndX >= this->CapacityX) { | 498 | 45 | size_t EltNo = I-this->begin(); | 499 | 45 | this->grow(); | 500 | 45 | I = this->begin()+EltNo; | 501 | 45 | } | 502 | | | 503 | 1.02k | ::new ((void*) this->end()) T(::std::move(this->back())); | 504 | | // Push everything else over. | 505 | 1.02k | this->move_backward(I, this->end()-1, this->end()); | 506 | 1.02k | this->setEnd(this->end()+1); | 507 | | | 508 | | // If we just moved the element we're inserting, be sure to update | 509 | | // the reference. | 510 | 1.02k | T *EltPtr = &Elt; | 511 | 1.02k | if (I <= EltPtr && EltPtr < this->EndX) | 512 | 0 | ++EltPtr; | 513 | | | 514 | 1.02k | *I = ::std::move(*EltPtr); | 515 | 1.02k | return I; | 516 | 1.02k | } |
|
517 | | |
518 | 4.94M | iterator insert(iterator I, const T &Elt) { |
519 | 4.94M | if (I == this->end()) { // Important special case for empty vector. |
520 | 0 | this->push_back(Elt); |
521 | 0 | return this->end()-1; |
522 | 0 | } |
523 | | |
524 | 4.94M | assert(I >= this->begin() && "Insertion iterator is out of bounds."); |
525 | 4.94M | assert(I <= this->end() && "Inserting past the end of the vector."); |
526 | | |
527 | 4.94M | if (this->EndX >= this->CapacityX) { |
528 | 6.73k | size_t EltNo = I-this->begin(); |
529 | 6.73k | this->grow(); |
530 | 6.73k | I = this->begin()+EltNo; |
531 | 6.73k | } |
532 | 4.94M | ::new ((void*) this->end()) T(std::move(this->back())); |
533 | | // Push everything else over. |
534 | 4.94M | this->move_backward(I, this->end()-1, this->end()); |
535 | 4.94M | this->setEnd(this->end()+1); |
536 | | |
537 | | // If we just moved the element we're inserting, be sure to update |
538 | | // the reference. |
539 | 4.94M | const T *EltPtr = &Elt; |
540 | 4.94M | if (I <= EltPtr && EltPtr < this->EndX) |
541 | 0 | ++EltPtr; |
542 | | |
543 | 4.94M | *I = *EltPtr; |
544 | 4.94M | return I; |
545 | 4.94M | } Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::MCOperand>::insert(llvm_ks::MCOperand*, llvm_ks::MCOperand const&) llvm_ks::SmallVectorImpl<llvm_ks::AsmToken>::insert(llvm_ks::AsmToken*, llvm_ks::AsmToken const&) Line | Count | Source | 518 | 4.94M | iterator insert(iterator I, const T &Elt) { | 519 | 4.94M | if (I == this->end()) { // Important special case for empty vector. | 520 | 0 | this->push_back(Elt); | 521 | 0 | return this->end()-1; | 522 | 0 | } | 523 | | | 524 | 4.94M | assert(I >= this->begin() && "Insertion iterator is out of bounds."); | 525 | 4.94M | assert(I <= this->end() && "Inserting past the end of the vector."); | 526 | | | 527 | 4.94M | if (this->EndX >= this->CapacityX) { | 528 | 6.73k | size_t EltNo = I-this->begin(); | 529 | 6.73k | this->grow(); | 530 | 6.73k | I = this->begin()+EltNo; | 531 | 6.73k | } | 532 | 4.94M | ::new ((void*) this->end()) T(std::move(this->back())); | 533 | | // Push everything else over. | 534 | 4.94M | this->move_backward(I, this->end()-1, this->end()); | 535 | 4.94M | this->setEnd(this->end()+1); | 536 | | | 537 | | // If we just moved the element we're inserting, be sure to update | 538 | | // the reference. | 539 | 4.94M | const T *EltPtr = &Elt; | 540 | 4.94M | if (I <= EltPtr && EltPtr < this->EndX) | 541 | 0 | ++EltPtr; | 542 | | | 543 | 4.94M | *I = *EltPtr; | 544 | 4.94M | return I; | 545 | 4.94M | } |
|
546 | | |
547 | | iterator insert(iterator I, size_type NumToInsert, const T &Elt) { |
548 | | // Convert iterator to elt# to avoid invalidating iterator when we reserve() |
549 | | size_t InsertElt = I - this->begin(); |
550 | | |
551 | | if (I == this->end()) { // Important special case for empty vector. |
552 | | append(NumToInsert, Elt); |
553 | | return this->begin()+InsertElt; |
554 | | } |
555 | | |
556 | | assert(I >= this->begin() && "Insertion iterator is out of bounds."); |
557 | | assert(I <= this->end() && "Inserting past the end of the vector."); |
558 | | |
559 | | // Ensure there is enough space. |
560 | | reserve(this->size() + NumToInsert); |
561 | | |
562 | | // Uninvalidate the iterator. |
563 | | I = this->begin()+InsertElt; |
564 | | |
565 | | // If there are more elements between the insertion point and the end of the |
566 | | // range than there are being inserted, we can use a simple approach to |
567 | | // insertion. Since we already reserved space, we know that this won't |
568 | | // reallocate the vector. |
569 | | if (size_t(this->end()-I) >= NumToInsert) { |
570 | | T *OldEnd = this->end(); |
571 | | append(std::move_iterator<iterator>(this->end() - NumToInsert), |
572 | | std::move_iterator<iterator>(this->end())); |
573 | | |
574 | | // Copy the existing elements that get replaced. |
575 | | this->move_backward(I, OldEnd-NumToInsert, OldEnd); |
576 | | |
577 | | std::fill_n(I, NumToInsert, Elt); |
578 | | return I; |
579 | | } |
580 | | |
581 | | // Otherwise, we're inserting more elements than exist already, and we're |
582 | | // not inserting at the end. |
583 | | |
584 | | // Move over the elements that we're about to overwrite. |
585 | | T *OldEnd = this->end(); |
586 | | this->setEnd(this->end() + NumToInsert); |
587 | | size_t NumOverwritten = OldEnd-I; |
588 | | this->uninitialized_move(I, OldEnd, this->end()-NumOverwritten); |
589 | | |
590 | | // Replace the overwritten part. |
591 | | std::fill_n(I, NumOverwritten, Elt); |
592 | | |
593 | | // Insert the non-overwritten middle part. |
594 | | std::uninitialized_fill_n(OldEnd, NumToInsert-NumOverwritten, Elt); |
595 | | return I; |
596 | | } |
597 | | |
598 | | template<typename ItTy> |
599 | 0 | iterator insert(iterator I, ItTy From, ItTy To) { |
600 | | // Convert iterator to elt# to avoid invalidating iterator when we reserve() |
601 | 0 | size_t InsertElt = I - this->begin(); |
602 | |
|
603 | 0 | if (I == this->end()) { // Important special case for empty vector. |
604 | 0 | append(From, To); |
605 | 0 | return this->begin()+InsertElt; |
606 | 0 | } |
607 | | |
608 | 0 | assert(I >= this->begin() && "Insertion iterator is out of bounds."); |
609 | 0 | assert(I <= this->end() && "Inserting past the end of the vector."); |
610 | | |
611 | 0 | size_t NumToInsert = std::distance(From, To); |
612 | | |
613 | | // Ensure there is enough space. |
614 | 0 | reserve(this->size() + NumToInsert); |
615 | | |
616 | | // Uninvalidate the iterator. |
617 | 0 | I = this->begin()+InsertElt; |
618 | | |
619 | | // If there are more elements between the insertion point and the end of the |
620 | | // range than there are being inserted, we can use a simple approach to |
621 | | // insertion. Since we already reserved space, we know that this won't |
622 | | // reallocate the vector. |
623 | 0 | if (size_t(this->end()-I) >= NumToInsert) { |
624 | 0 | T *OldEnd = this->end(); |
625 | 0 | append(std::move_iterator<iterator>(this->end() - NumToInsert), |
626 | 0 | std::move_iterator<iterator>(this->end())); |
627 | | |
628 | | // Copy the existing elements that get replaced. |
629 | 0 | this->move_backward(I, OldEnd-NumToInsert, OldEnd); |
630 | |
|
631 | 0 | std::copy(From, To, I); |
632 | 0 | return I; |
633 | 0 | } |
634 | | |
635 | | // Otherwise, we're inserting more elements than exist already, and we're |
636 | | // not inserting at the end. |
637 | | |
638 | | // Move over the elements that we're about to overwrite. |
639 | 0 | T *OldEnd = this->end(); |
640 | 0 | this->setEnd(this->end() + NumToInsert); |
641 | 0 | size_t NumOverwritten = OldEnd-I; |
642 | 0 | this->uninitialized_move(I, OldEnd, this->end()-NumOverwritten); |
643 | | |
644 | | // Replace the overwritten part. |
645 | 0 | for (T *J = I; NumOverwritten > 0; --NumOverwritten) { |
646 | 0 | *J = *From; |
647 | 0 | ++J; ++From; |
648 | 0 | } |
649 | | |
650 | | // Insert the non-overwritten middle part. |
651 | 0 | this->uninitialized_copy(From, To, OldEnd); |
652 | 0 | return I; |
653 | 0 | } |
654 | | |
655 | | void insert(iterator I, std::initializer_list<T> IL) { |
656 | | insert(I, IL.begin(), IL.end()); |
657 | | } |
658 | | |
659 | 197M | template <typename... ArgTypes> void emplace_back(ArgTypes &&... Args) { |
660 | 197M | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) |
661 | 194k | this->grow(); |
662 | 197M | ::new ((void *)this->end()) T(std::forward<ArgTypes>(Args)...); |
663 | 197M | this->setEnd(this->end() + 1); |
664 | 197M | } void llvm_ks::SmallVectorImpl<llvm_ks::AsmToken>::emplace_back<llvm_ks::AsmToken>(llvm_ks::AsmToken&&) Line | Count | Source | 659 | 192M | template <typename... ArgTypes> void emplace_back(ArgTypes &&... Args) { | 660 | 192M | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 661 | 0 | this->grow(); | 662 | 192M | ::new ((void *)this->end()) T(std::forward<ArgTypes>(Args)...); | 663 | 192M | this->setEnd(this->end() + 1); | 664 | 192M | } |
Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc&, unsigned long, llvm_ks::StringRef&>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&, unsigned long&&, llvm_ks::StringRef&) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc&, unsigned long&>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&, unsigned long&) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc&, int, unsigned int>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&, int&&, unsigned int&&) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc&, int>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&, int&&) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc&, unsigned long>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&, unsigned long&&) void llvm_ks::SmallVectorImpl<llvm_ks::AsmToken>::emplace_back<llvm_ks::AsmToken::TokenKind, llvm_ks::StringRef>(llvm_ks::AsmToken::TokenKind&&, llvm_ks::StringRef&&) Line | Count | Source | 659 | 129k | template <typename... ArgTypes> void emplace_back(ArgTypes &&... Args) { | 660 | 129k | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 661 | 0 | this->grow(); | 662 | 129k | ::new ((void *)this->end()) T(std::forward<ArgTypes>(Args)...); | 663 | 129k | this->setEnd(this->end() + 1); | 664 | 129k | } |
Unexecuted instantiation: AArch64AsmParser.cpp:void llvm_ks::SmallVectorImpl<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> > >::emplace_back<std::__1::unique_ptr<(anonymous namespace)::AArch64Operand, std::__1::default_delete<(anonymous namespace)::AArch64Operand> > >(std::__1::unique_ptr<(anonymous namespace)::AArch64Operand, std::__1::default_delete<(anonymous namespace)::AArch64Operand> >&&) void llvm_ks::SmallVectorImpl<llvm_ks::AsmToken>::emplace_back<llvm_ks::AsmToken const&>(llvm_ks::AsmToken const&) Line | Count | Source | 659 | 4.63M | template <typename... ArgTypes> void emplace_back(ArgTypes &&... Args) { | 660 | 4.63M | if (LLVM_UNLIKELY(this->EndX >= this->CapacityX)) | 661 | 194k | this->grow(); | 662 | 4.63M | ::new ((void *)this->end()) T(std::forward<ArgTypes>(Args)...); | 663 | 4.63M | this->setEnd(this->end() + 1); | 664 | 4.63M | } |
Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc&, unsigned int&, unsigned int&>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&, unsigned int&, unsigned int&) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&&) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc&>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc&, unsigned int&, long&>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&, unsigned int&, long&) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc&, int, long&>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&, int&&, long&) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc&, unsigned int&>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&, unsigned int&) Unexecuted instantiation: void llvm_ks::SmallVectorImpl<llvm_ks::AsmRewrite>::emplace_back<llvm_ks::AsmRewriteKind, llvm_ks::SMLoc&, int, unsigned int&>(llvm_ks::AsmRewriteKind&&, llvm_ks::SMLoc&, int&&, unsigned int&) |
665 | | |
666 | | SmallVectorImpl &operator=(const SmallVectorImpl &RHS); |
667 | | |
668 | | SmallVectorImpl &operator=(SmallVectorImpl &&RHS); |
669 | | |
670 | 0 | bool operator==(const SmallVectorImpl &RHS) const { |
671 | 0 | if (this->size() != RHS.size()) return false; |
672 | 0 | return std::equal(this->begin(), this->end(), RHS.begin()); |
673 | 0 | } |
674 | | bool operator!=(const SmallVectorImpl &RHS) const { |
675 | | return !(*this == RHS); |
676 | | } |
677 | | |
678 | | bool operator<(const SmallVectorImpl &RHS) const { |
679 | | return std::lexicographical_compare(this->begin(), this->end(), |
680 | | RHS.begin(), RHS.end()); |
681 | | } |
682 | | |
683 | | /// Set the array size to \p N, which the current array must have enough |
684 | | /// capacity for. |
685 | | /// |
686 | | /// This does not construct or destroy any elements in the vector. |
687 | | /// |
688 | | /// Clients can use this in conjunction with capacity() to write past the end |
689 | | /// of the buffer when they know that more elements are available, and only |
690 | | /// update the size later. This avoids the cost of value initializing elements |
691 | | /// which will only be overwritten. |
692 | 0 | void set_size(size_type N) { |
693 | 0 | assert(N <= this->capacity()); |
694 | 0 | this->setEnd(this->begin() + N); |
695 | 0 | } |
696 | | }; |
697 | | |
698 | | |
699 | | template <typename T> |
700 | 0 | void SmallVectorImpl<T>::swap(SmallVectorImpl<T> &RHS) { |
701 | 0 | if (this == &RHS) return; |
702 | | |
703 | | // We can only avoid copying elements if neither vector is small. |
704 | 0 | if (!this->isSmall() && !RHS.isSmall()) { |
705 | 0 | std::swap(this->BeginX, RHS.BeginX); |
706 | 0 | std::swap(this->EndX, RHS.EndX); |
707 | 0 | std::swap(this->CapacityX, RHS.CapacityX); |
708 | 0 | return; |
709 | 0 | } |
710 | 0 | if (RHS.size() > this->capacity()) |
711 | 0 | this->grow(RHS.size()); |
712 | 0 | if (this->size() > RHS.capacity()) |
713 | 0 | RHS.grow(this->size()); |
714 | | |
715 | | // Swap the shared elements. |
716 | 0 | size_t NumShared = this->size(); |
717 | 0 | if (NumShared > RHS.size()) NumShared = RHS.size(); |
718 | 0 | for (size_type i = 0; i != NumShared; ++i) |
719 | 0 | std::swap((*this)[i], RHS[i]); |
720 | | |
721 | | // Copy over the extra elts. |
722 | 0 | if (this->size() > RHS.size()) { |
723 | 0 | size_t EltDiff = this->size() - RHS.size(); |
724 | 0 | this->uninitialized_copy(this->begin()+NumShared, this->end(), RHS.end()); |
725 | 0 | RHS.setEnd(RHS.end()+EltDiff); |
726 | 0 | this->destroy_range(this->begin()+NumShared, this->end()); |
727 | 0 | this->setEnd(this->begin()+NumShared); |
728 | 0 | } else if (RHS.size() > this->size()) { |
729 | 0 | size_t EltDiff = RHS.size() - this->size(); |
730 | 0 | this->uninitialized_copy(RHS.begin()+NumShared, RHS.end(), this->end()); |
731 | 0 | this->setEnd(this->end() + EltDiff); |
732 | 0 | this->destroy_range(RHS.begin()+NumShared, RHS.end()); |
733 | 0 | RHS.setEnd(RHS.begin()+NumShared); |
734 | 0 | } |
735 | 0 | } |
736 | | |
737 | | template <typename T> |
738 | | SmallVectorImpl<T> &SmallVectorImpl<T>:: |
739 | 2.28M | operator=(const SmallVectorImpl<T> &RHS) { |
740 | | // Avoid self-assignment. |
741 | 2.28M | if (this == &RHS) return *this; |
742 | | |
743 | | // If we already have sufficient space, assign the common elements, then |
744 | | // destroy any excess. |
745 | 2.28M | size_t RHSSize = RHS.size(); |
746 | 2.28M | size_t CurSize = this->size(); |
747 | 2.28M | if (CurSize >= RHSSize) { |
748 | | // Assign common elements. |
749 | 26.1k | iterator NewEnd; |
750 | 26.1k | if (RHSSize) |
751 | 25.5k | NewEnd = std::copy(RHS.begin(), RHS.begin()+RHSSize, this->begin()); |
752 | 537 | else |
753 | 537 | NewEnd = this->begin(); |
754 | | |
755 | | // Destroy excess elements. |
756 | 26.1k | this->destroy_range(NewEnd, this->end()); |
757 | | |
758 | | // Trim. |
759 | 26.1k | this->setEnd(NewEnd); |
760 | 26.1k | return *this; |
761 | 26.1k | } |
762 | | |
763 | | // If we have to grow to have enough elements, destroy the current elements. |
764 | | // This allows us to avoid copying them during the grow. |
765 | | // FIXME: don't do this if they're efficiently moveable. |
766 | 2.25M | if (this->capacity() < RHSSize) { |
767 | | // Destroy current elements. |
768 | 1.43k | this->destroy_range(this->begin(), this->end()); |
769 | 1.43k | this->setEnd(this->begin()); |
770 | 1.43k | CurSize = 0; |
771 | 1.43k | this->grow(RHSSize); |
772 | 2.25M | } else if (CurSize) { |
773 | | // Otherwise, use assignment for the already-constructed elements. |
774 | 9.79k | std::copy(RHS.begin(), RHS.begin()+CurSize, this->begin()); |
775 | 9.79k | } |
776 | | |
777 | | // Copy construct the new elements in place. |
778 | 2.25M | this->uninitialized_copy(RHS.begin()+CurSize, RHS.end(), |
779 | 2.25M | this->begin()+CurSize); |
780 | | |
781 | | // Set end. |
782 | 2.25M | this->setEnd(this->begin()+RHSSize); |
783 | 2.25M | return *this; |
784 | 2.28M | } llvm_ks::SmallVectorImpl<llvm_ks::MCOperand>::operator=(llvm_ks::SmallVectorImpl<llvm_ks::MCOperand> const&) Line | Count | Source | 739 | 109k | operator=(const SmallVectorImpl<T> &RHS) { | 740 | | // Avoid self-assignment. | 741 | 109k | if (this == &RHS) return *this; | 742 | | | 743 | | // If we already have sufficient space, assign the common elements, then | 744 | | // destroy any excess. | 745 | 109k | size_t RHSSize = RHS.size(); | 746 | 109k | size_t CurSize = this->size(); | 747 | 109k | if (CurSize >= RHSSize) { | 748 | | // Assign common elements. | 749 | 17.4k | iterator NewEnd; | 750 | 17.4k | if (RHSSize) | 751 | 16.9k | NewEnd = std::copy(RHS.begin(), RHS.begin()+RHSSize, this->begin()); | 752 | 529 | else | 753 | 529 | NewEnd = this->begin(); | 754 | | | 755 | | // Destroy excess elements. | 756 | 17.4k | this->destroy_range(NewEnd, this->end()); | 757 | | | 758 | | // Trim. | 759 | 17.4k | this->setEnd(NewEnd); | 760 | 17.4k | return *this; | 761 | 17.4k | } | 762 | | | 763 | | // If we have to grow to have enough elements, destroy the current elements. | 764 | | // This allows us to avoid copying them during the grow. | 765 | | // FIXME: don't do this if they're efficiently moveable. | 766 | 92.4k | if (this->capacity() < RHSSize) { | 767 | | // Destroy current elements. | 768 | 0 | this->destroy_range(this->begin(), this->end()); | 769 | 0 | this->setEnd(this->begin()); | 770 | 0 | CurSize = 0; | 771 | 0 | this->grow(RHSSize); | 772 | 92.4k | } else if (CurSize) { | 773 | | // Otherwise, use assignment for the already-constructed elements. | 774 | 1.05k | std::copy(RHS.begin(), RHS.begin()+CurSize, this->begin()); | 775 | 1.05k | } | 776 | | | 777 | | // Copy construct the new elements in place. | 778 | 92.4k | this->uninitialized_copy(RHS.begin()+CurSize, RHS.end(), | 779 | 92.4k | this->begin()+CurSize); | 780 | | | 781 | | // Set end. | 782 | 92.4k | this->setEnd(this->begin()+RHSSize); | 783 | 92.4k | return *this; | 784 | 109k | } |
llvm_ks::SmallVectorImpl<char>::operator=(llvm_ks::SmallVectorImpl<char> const&) Line | Count | Source | 739 | 2.16M | operator=(const SmallVectorImpl<T> &RHS) { | 740 | | // Avoid self-assignment. | 741 | 2.16M | if (this == &RHS) return *this; | 742 | | | 743 | | // If we already have sufficient space, assign the common elements, then | 744 | | // destroy any excess. | 745 | 2.16M | size_t RHSSize = RHS.size(); | 746 | 2.16M | size_t CurSize = this->size(); | 747 | 2.16M | if (CurSize >= RHSSize) { | 748 | | // Assign common elements. | 749 | 8 | iterator NewEnd; | 750 | 8 | if (RHSSize) | 751 | 8 | NewEnd = std::copy(RHS.begin(), RHS.begin()+RHSSize, this->begin()); | 752 | 0 | else | 753 | 0 | NewEnd = this->begin(); | 754 | | | 755 | | // Destroy excess elements. | 756 | 8 | this->destroy_range(NewEnd, this->end()); | 757 | | | 758 | | // Trim. | 759 | 8 | this->setEnd(NewEnd); | 760 | 8 | return *this; | 761 | 8 | } | 762 | | | 763 | | // If we have to grow to have enough elements, destroy the current elements. | 764 | | // This allows us to avoid copying them during the grow. | 765 | | // FIXME: don't do this if they're efficiently moveable. | 766 | 2.16M | if (this->capacity() < RHSSize) { | 767 | | // Destroy current elements. | 768 | 1.30k | this->destroy_range(this->begin(), this->end()); | 769 | 1.30k | this->setEnd(this->begin()); | 770 | 1.30k | CurSize = 0; | 771 | 1.30k | this->grow(RHSSize); | 772 | 2.16M | } else if (CurSize) { | 773 | | // Otherwise, use assignment for the already-constructed elements. | 774 | 8.74k | std::copy(RHS.begin(), RHS.begin()+CurSize, this->begin()); | 775 | 8.74k | } | 776 | | | 777 | | // Copy construct the new elements in place. | 778 | 2.16M | this->uninitialized_copy(RHS.begin()+CurSize, RHS.end(), | 779 | 2.16M | this->begin()+CurSize); | 780 | | | 781 | | // Set end. | 782 | 2.16M | this->setEnd(this->begin()+RHSSize); | 783 | 2.16M | return *this; | 784 | 2.16M | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<unsigned int>::operator=(llvm_ks::SmallVectorImpl<unsigned int> const&) llvm_ks::SmallVectorImpl<llvm_ks::DuplexCandidate>::operator=(llvm_ks::SmallVectorImpl<llvm_ks::DuplexCandidate> const&) Line | Count | Source | 739 | 1 | operator=(const SmallVectorImpl<T> &RHS) { | 740 | | // Avoid self-assignment. | 741 | 1 | if (this == &RHS) return *this; | 742 | | | 743 | | // If we already have sufficient space, assign the common elements, then | 744 | | // destroy any excess. | 745 | 1 | size_t RHSSize = RHS.size(); | 746 | 1 | size_t CurSize = this->size(); | 747 | 1 | if (CurSize >= RHSSize) { | 748 | | // Assign common elements. | 749 | 0 | iterator NewEnd; | 750 | 0 | if (RHSSize) | 751 | 0 | NewEnd = std::copy(RHS.begin(), RHS.begin()+RHSSize, this->begin()); | 752 | 0 | else | 753 | 0 | NewEnd = this->begin(); | 754 | | | 755 | | // Destroy excess elements. | 756 | 0 | this->destroy_range(NewEnd, this->end()); | 757 | | | 758 | | // Trim. | 759 | 0 | this->setEnd(NewEnd); | 760 | 0 | return *this; | 761 | 0 | } | 762 | | | 763 | | // If we have to grow to have enough elements, destroy the current elements. | 764 | | // This allows us to avoid copying them during the grow. | 765 | | // FIXME: don't do this if they're efficiently moveable. | 766 | 1 | if (this->capacity() < RHSSize) { | 767 | | // Destroy current elements. | 768 | 0 | this->destroy_range(this->begin(), this->end()); | 769 | 0 | this->setEnd(this->begin()); | 770 | 0 | CurSize = 0; | 771 | 0 | this->grow(RHSSize); | 772 | 1 | } else if (CurSize) { | 773 | | // Otherwise, use assignment for the already-constructed elements. | 774 | 0 | std::copy(RHS.begin(), RHS.begin()+CurSize, this->begin()); | 775 | 0 | } | 776 | | | 777 | | // Copy construct the new elements in place. | 778 | 1 | this->uninitialized_copy(RHS.begin()+CurSize, RHS.end(), | 779 | 1 | this->begin()+CurSize); | 780 | | | 781 | | // Set end. | 782 | 1 | this->setEnd(this->begin()+RHSSize); | 783 | 1 | return *this; | 784 | 1 | } |
llvm_ks::SmallVectorImpl<llvm_ks::ConstantPoolEntry>::operator=(llvm_ks::SmallVectorImpl<llvm_ks::ConstantPoolEntry> const&) Line | Count | Source | 739 | 12 | operator=(const SmallVectorImpl<T> &RHS) { | 740 | | // Avoid self-assignment. | 741 | 12 | if (this == &RHS) return *this; | 742 | | | 743 | | // If we already have sufficient space, assign the common elements, then | 744 | | // destroy any excess. | 745 | 12 | size_t RHSSize = RHS.size(); | 746 | 12 | size_t CurSize = this->size(); | 747 | 12 | if (CurSize >= RHSSize) { | 748 | | // Assign common elements. | 749 | 0 | iterator NewEnd; | 750 | 0 | if (RHSSize) | 751 | 0 | NewEnd = std::copy(RHS.begin(), RHS.begin()+RHSSize, this->begin()); | 752 | 0 | else | 753 | 0 | NewEnd = this->begin(); | 754 | | | 755 | | // Destroy excess elements. | 756 | 0 | this->destroy_range(NewEnd, this->end()); | 757 | | | 758 | | // Trim. | 759 | 0 | this->setEnd(NewEnd); | 760 | 0 | return *this; | 761 | 0 | } | 762 | | | 763 | | // If we have to grow to have enough elements, destroy the current elements. | 764 | | // This allows us to avoid copying them during the grow. | 765 | | // FIXME: don't do this if they're efficiently moveable. | 766 | 12 | if (this->capacity() < RHSSize) { | 767 | | // Destroy current elements. | 768 | 0 | this->destroy_range(this->begin(), this->end()); | 769 | 0 | this->setEnd(this->begin()); | 770 | 0 | CurSize = 0; | 771 | 0 | this->grow(RHSSize); | 772 | 12 | } else if (CurSize) { | 773 | | // Otherwise, use assignment for the already-constructed elements. | 774 | 0 | std::copy(RHS.begin(), RHS.begin()+CurSize, this->begin()); | 775 | 0 | } | 776 | | | 777 | | // Copy construct the new elements in place. | 778 | 12 | this->uninitialized_copy(RHS.begin()+CurSize, RHS.end(), | 779 | 12 | this->begin()+CurSize); | 780 | | | 781 | | // Set end. | 782 | 12 | this->setEnd(this->begin()+RHSSize); | 783 | 12 | return *this; | 784 | 12 | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCFixup>::operator=(llvm_ks::SmallVectorImpl<llvm_ks::MCFixup> const&) Line | Count | Source | 739 | 8.75k | operator=(const SmallVectorImpl<T> &RHS) { | 740 | | // Avoid self-assignment. | 741 | 8.75k | if (this == &RHS) return *this; | 742 | | | 743 | | // If we already have sufficient space, assign the common elements, then | 744 | | // destroy any excess. | 745 | 8.75k | size_t RHSSize = RHS.size(); | 746 | 8.75k | size_t CurSize = this->size(); | 747 | 8.75k | if (CurSize >= RHSSize) { | 748 | | // Assign common elements. | 749 | 8.62k | iterator NewEnd; | 750 | 8.62k | if (RHSSize) | 751 | 8.62k | NewEnd = std::copy(RHS.begin(), RHS.begin()+RHSSize, this->begin()); | 752 | 8 | else | 753 | 8 | NewEnd = this->begin(); | 754 | | | 755 | | // Destroy excess elements. | 756 | 8.62k | this->destroy_range(NewEnd, this->end()); | 757 | | | 758 | | // Trim. | 759 | 8.62k | this->setEnd(NewEnd); | 760 | 8.62k | return *this; | 761 | 8.62k | } | 762 | | | 763 | | // If we have to grow to have enough elements, destroy the current elements. | 764 | | // This allows us to avoid copying them during the grow. | 765 | | // FIXME: don't do this if they're efficiently moveable. | 766 | 123 | if (this->capacity() < RHSSize) { | 767 | | // Destroy current elements. | 768 | 123 | this->destroy_range(this->begin(), this->end()); | 769 | 123 | this->setEnd(this->begin()); | 770 | 123 | CurSize = 0; | 771 | 123 | this->grow(RHSSize); | 772 | 123 | } else if (CurSize) { | 773 | | // Otherwise, use assignment for the already-constructed elements. | 774 | 0 | std::copy(RHS.begin(), RHS.begin()+CurSize, this->begin()); | 775 | 0 | } | 776 | | | 777 | | // Copy construct the new elements in place. | 778 | 123 | this->uninitialized_copy(RHS.begin()+CurSize, RHS.end(), | 779 | 123 | this->begin()+CurSize); | 780 | | | 781 | | // Set end. | 782 | 123 | this->setEnd(this->begin()+RHSSize); | 783 | 123 | return *this; | 784 | 8.75k | } |
|
785 | | |
786 | | template <typename T> |
787 | 17.2k | SmallVectorImpl<T> &SmallVectorImpl<T>::operator=(SmallVectorImpl<T> &&RHS) { |
788 | | // Avoid self-assignment. |
789 | 17.2k | if (this == &RHS) return *this; |
790 | | |
791 | | // If the RHS isn't small, clear this vector and then steal its buffer. |
792 | 17.2k | if (!RHS.isSmall()) { |
793 | 0 | this->destroy_range(this->begin(), this->end()); |
794 | 0 | if (!this->isSmall()) free(this->begin()); |
795 | 0 | this->BeginX = RHS.BeginX; |
796 | 0 | this->EndX = RHS.EndX; |
797 | 0 | this->CapacityX = RHS.CapacityX; |
798 | 0 | RHS.resetToSmall(); |
799 | 0 | return *this; |
800 | 0 | } |
801 | | |
802 | | // If we already have sufficient space, assign the common elements, then |
803 | | // destroy any excess. |
804 | 17.2k | size_t RHSSize = RHS.size(); |
805 | 17.2k | size_t CurSize = this->size(); |
806 | 17.2k | if (CurSize >= RHSSize) { |
807 | | // Assign common elements. |
808 | 17.0k | iterator NewEnd = this->begin(); |
809 | 17.0k | if (RHSSize) |
810 | 0 | NewEnd = this->move(RHS.begin(), RHS.end(), NewEnd); |
811 | | |
812 | | // Destroy excess elements and trim the bounds. |
813 | 17.0k | this->destroy_range(NewEnd, this->end()); |
814 | 17.0k | this->setEnd(NewEnd); |
815 | | |
816 | | // Clear the RHS. |
817 | 17.0k | RHS.clear(); |
818 | | |
819 | 17.0k | return *this; |
820 | 17.0k | } |
821 | | |
822 | | // If we have to grow to have enough elements, destroy the current elements. |
823 | | // This allows us to avoid copying them during the grow. |
824 | | // FIXME: this may not actually make any sense if we can efficiently move |
825 | | // elements. |
826 | 264 | if (this->capacity() < RHSSize) { |
827 | | // Destroy current elements. |
828 | 0 | this->destroy_range(this->begin(), this->end()); |
829 | 0 | this->setEnd(this->begin()); |
830 | 0 | CurSize = 0; |
831 | 0 | this->grow(RHSSize); |
832 | 264 | } else if (CurSize) { |
833 | | // Otherwise, use assignment for the already-constructed elements. |
834 | 17 | this->move(RHS.begin(), RHS.begin()+CurSize, this->begin()); |
835 | 17 | } |
836 | | |
837 | | // Move-construct the new elements in place. |
838 | 264 | this->uninitialized_move(RHS.begin()+CurSize, RHS.end(), |
839 | 264 | this->begin()+CurSize); |
840 | | |
841 | | // Set end. |
842 | 264 | this->setEnd(this->begin()+RHSSize); |
843 | | |
844 | 264 | RHS.clear(); |
845 | 264 | return *this; |
846 | 17.2k | } Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::MCSymbol*>::operator=(llvm_ks::SmallVectorImpl<llvm_ks::MCSymbol*>&&) Unexecuted instantiation: llvm_ks::SmallVectorImpl<char>::operator=(llvm_ks::SmallVectorImpl<char>&&) Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::SMFixIt>::operator=(llvm_ks::SmallVectorImpl<llvm_ks::SMFixIt>&&) llvm_ks::SmallVectorImpl<unsigned int>::operator=(llvm_ks::SmallVectorImpl<unsigned int>&&) Line | Count | Source | 787 | 112 | SmallVectorImpl<T> &SmallVectorImpl<T>::operator=(SmallVectorImpl<T> &&RHS) { | 788 | | // Avoid self-assignment. | 789 | 112 | if (this == &RHS) return *this; | 790 | | | 791 | | // If the RHS isn't small, clear this vector and then steal its buffer. | 792 | 112 | if (!RHS.isSmall()) { | 793 | 0 | this->destroy_range(this->begin(), this->end()); | 794 | 0 | if (!this->isSmall()) free(this->begin()); | 795 | 0 | this->BeginX = RHS.BeginX; | 796 | 0 | this->EndX = RHS.EndX; | 797 | 0 | this->CapacityX = RHS.CapacityX; | 798 | 0 | RHS.resetToSmall(); | 799 | 0 | return *this; | 800 | 0 | } | 801 | | | 802 | | // If we already have sufficient space, assign the common elements, then | 803 | | // destroy any excess. | 804 | 112 | size_t RHSSize = RHS.size(); | 805 | 112 | size_t CurSize = this->size(); | 806 | 112 | if (CurSize >= RHSSize) { | 807 | | // Assign common elements. | 808 | 112 | iterator NewEnd = this->begin(); | 809 | 112 | if (RHSSize) | 810 | 0 | NewEnd = this->move(RHS.begin(), RHS.end(), NewEnd); | 811 | | | 812 | | // Destroy excess elements and trim the bounds. | 813 | 112 | this->destroy_range(NewEnd, this->end()); | 814 | 112 | this->setEnd(NewEnd); | 815 | | | 816 | | // Clear the RHS. | 817 | 112 | RHS.clear(); | 818 | | | 819 | 112 | return *this; | 820 | 112 | } | 821 | | | 822 | | // If we have to grow to have enough elements, destroy the current elements. | 823 | | // This allows us to avoid copying them during the grow. | 824 | | // FIXME: this may not actually make any sense if we can efficiently move | 825 | | // elements. | 826 | 0 | if (this->capacity() < RHSSize) { | 827 | | // Destroy current elements. | 828 | 0 | this->destroy_range(this->begin(), this->end()); | 829 | 0 | this->setEnd(this->begin()); | 830 | 0 | CurSize = 0; | 831 | 0 | this->grow(RHSSize); | 832 | 0 | } else if (CurSize) { | 833 | | // Otherwise, use assignment for the already-constructed elements. | 834 | 0 | this->move(RHS.begin(), RHS.begin()+CurSize, this->begin()); | 835 | 0 | } | 836 | | | 837 | | // Move-construct the new elements in place. | 838 | 0 | this->uninitialized_move(RHS.begin()+CurSize, RHS.end(), | 839 | 0 | this->begin()+CurSize); | 840 | | | 841 | | // Set end. | 842 | 0 | this->setEnd(this->begin()+RHSSize); | 843 | |
| 844 | 0 | RHS.clear(); | 845 | 0 | return *this; | 846 | 112 | } |
llvm_ks::SmallVectorImpl<llvm_ks::SMLoc>::operator=(llvm_ks::SmallVectorImpl<llvm_ks::SMLoc>&&) Line | Count | Source | 787 | 13.6k | SmallVectorImpl<T> &SmallVectorImpl<T>::operator=(SmallVectorImpl<T> &&RHS) { | 788 | | // Avoid self-assignment. | 789 | 13.6k | if (this == &RHS) return *this; | 790 | | | 791 | | // If the RHS isn't small, clear this vector and then steal its buffer. | 792 | 13.6k | if (!RHS.isSmall()) { | 793 | 0 | this->destroy_range(this->begin(), this->end()); | 794 | 0 | if (!this->isSmall()) free(this->begin()); | 795 | 0 | this->BeginX = RHS.BeginX; | 796 | 0 | this->EndX = RHS.EndX; | 797 | 0 | this->CapacityX = RHS.CapacityX; | 798 | 0 | RHS.resetToSmall(); | 799 | 0 | return *this; | 800 | 0 | } | 801 | | | 802 | | // If we already have sufficient space, assign the common elements, then | 803 | | // destroy any excess. | 804 | 13.6k | size_t RHSSize = RHS.size(); | 805 | 13.6k | size_t CurSize = this->size(); | 806 | 13.6k | if (CurSize >= RHSSize) { | 807 | | // Assign common elements. | 808 | 13.6k | iterator NewEnd = this->begin(); | 809 | 13.6k | if (RHSSize) | 810 | 0 | NewEnd = this->move(RHS.begin(), RHS.end(), NewEnd); | 811 | | | 812 | | // Destroy excess elements and trim the bounds. | 813 | 13.6k | this->destroy_range(NewEnd, this->end()); | 814 | 13.6k | this->setEnd(NewEnd); | 815 | | | 816 | | // Clear the RHS. | 817 | 13.6k | RHS.clear(); | 818 | | | 819 | 13.6k | return *this; | 820 | 13.6k | } | 821 | | | 822 | | // If we have to grow to have enough elements, destroy the current elements. | 823 | | // This allows us to avoid copying them during the grow. | 824 | | // FIXME: this may not actually make any sense if we can efficiently move | 825 | | // elements. | 826 | 0 | if (this->capacity() < RHSSize) { | 827 | | // Destroy current elements. | 828 | 0 | this->destroy_range(this->begin(), this->end()); | 829 | 0 | this->setEnd(this->begin()); | 830 | 0 | CurSize = 0; | 831 | 0 | this->grow(RHSSize); | 832 | 0 | } else if (CurSize) { | 833 | | // Otherwise, use assignment for the already-constructed elements. | 834 | 0 | this->move(RHS.begin(), RHS.begin()+CurSize, this->begin()); | 835 | 0 | } | 836 | | | 837 | | // Move-construct the new elements in place. | 838 | 0 | this->uninitialized_move(RHS.begin()+CurSize, RHS.end(), | 839 | 0 | this->begin()+CurSize); | 840 | | | 841 | | // Set end. | 842 | 0 | this->setEnd(this->begin()+RHSSize); | 843 | |
| 844 | 0 | RHS.clear(); | 845 | 0 | return *this; | 846 | 13.6k | } |
llvm_ks::SmallVectorImpl<llvm_ks::MCOperand>::operator=(llvm_ks::SmallVectorImpl<llvm_ks::MCOperand>&&) Line | Count | Source | 787 | 263 | SmallVectorImpl<T> &SmallVectorImpl<T>::operator=(SmallVectorImpl<T> &&RHS) { | 788 | | // Avoid self-assignment. | 789 | 263 | if (this == &RHS) return *this; | 790 | | | 791 | | // If the RHS isn't small, clear this vector and then steal its buffer. | 792 | 263 | if (!RHS.isSmall()) { | 793 | 0 | this->destroy_range(this->begin(), this->end()); | 794 | 0 | if (!this->isSmall()) free(this->begin()); | 795 | 0 | this->BeginX = RHS.BeginX; | 796 | 0 | this->EndX = RHS.EndX; | 797 | 0 | this->CapacityX = RHS.CapacityX; | 798 | 0 | RHS.resetToSmall(); | 799 | 0 | return *this; | 800 | 0 | } | 801 | | | 802 | | // If we already have sufficient space, assign the common elements, then | 803 | | // destroy any excess. | 804 | 263 | size_t RHSSize = RHS.size(); | 805 | 263 | size_t CurSize = this->size(); | 806 | 263 | if (CurSize >= RHSSize) { | 807 | | // Assign common elements. | 808 | 0 | iterator NewEnd = this->begin(); | 809 | 0 | if (RHSSize) | 810 | 0 | NewEnd = this->move(RHS.begin(), RHS.end(), NewEnd); | 811 | | | 812 | | // Destroy excess elements and trim the bounds. | 813 | 0 | this->destroy_range(NewEnd, this->end()); | 814 | 0 | this->setEnd(NewEnd); | 815 | | | 816 | | // Clear the RHS. | 817 | 0 | RHS.clear(); | 818 | |
| 819 | 0 | return *this; | 820 | 0 | } | 821 | | | 822 | | // If we have to grow to have enough elements, destroy the current elements. | 823 | | // This allows us to avoid copying them during the grow. | 824 | | // FIXME: this may not actually make any sense if we can efficiently move | 825 | | // elements. | 826 | 263 | if (this->capacity() < RHSSize) { | 827 | | // Destroy current elements. | 828 | 0 | this->destroy_range(this->begin(), this->end()); | 829 | 0 | this->setEnd(this->begin()); | 830 | 0 | CurSize = 0; | 831 | 0 | this->grow(RHSSize); | 832 | 263 | } else if (CurSize) { | 833 | | // Otherwise, use assignment for the already-constructed elements. | 834 | 17 | this->move(RHS.begin(), RHS.begin()+CurSize, this->begin()); | 835 | 17 | } | 836 | | | 837 | | // Move-construct the new elements in place. | 838 | 263 | this->uninitialized_move(RHS.begin()+CurSize, RHS.end(), | 839 | 263 | this->begin()+CurSize); | 840 | | | 841 | | // Set end. | 842 | 263 | this->setEnd(this->begin()+RHSSize); | 843 | | | 844 | 263 | RHS.clear(); | 845 | 263 | return *this; | 846 | 263 | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::HexagonMCChecker::NewSense>::operator=(llvm_ks::SmallVectorImpl<llvm_ks::HexagonMCChecker::NewSense>&&) llvm_ks::SmallVectorImpl<llvm_ks::DuplexCandidate>::operator=(llvm_ks::SmallVectorImpl<llvm_ks::DuplexCandidate>&&) Line | Count | Source | 787 | 3.22k | SmallVectorImpl<T> &SmallVectorImpl<T>::operator=(SmallVectorImpl<T> &&RHS) { | 788 | | // Avoid self-assignment. | 789 | 3.22k | if (this == &RHS) return *this; | 790 | | | 791 | | // If the RHS isn't small, clear this vector and then steal its buffer. | 792 | 3.22k | if (!RHS.isSmall()) { | 793 | 0 | this->destroy_range(this->begin(), this->end()); | 794 | 0 | if (!this->isSmall()) free(this->begin()); | 795 | 0 | this->BeginX = RHS.BeginX; | 796 | 0 | this->EndX = RHS.EndX; | 797 | 0 | this->CapacityX = RHS.CapacityX; | 798 | 0 | RHS.resetToSmall(); | 799 | 0 | return *this; | 800 | 0 | } | 801 | | | 802 | | // If we already have sufficient space, assign the common elements, then | 803 | | // destroy any excess. | 804 | 3.22k | size_t RHSSize = RHS.size(); | 805 | 3.22k | size_t CurSize = this->size(); | 806 | 3.22k | if (CurSize >= RHSSize) { | 807 | | // Assign common elements. | 808 | 3.22k | iterator NewEnd = this->begin(); | 809 | 3.22k | if (RHSSize) | 810 | 0 | NewEnd = this->move(RHS.begin(), RHS.end(), NewEnd); | 811 | | | 812 | | // Destroy excess elements and trim the bounds. | 813 | 3.22k | this->destroy_range(NewEnd, this->end()); | 814 | 3.22k | this->setEnd(NewEnd); | 815 | | | 816 | | // Clear the RHS. | 817 | 3.22k | RHS.clear(); | 818 | | | 819 | 3.22k | return *this; | 820 | 3.22k | } | 821 | | | 822 | | // If we have to grow to have enough elements, destroy the current elements. | 823 | | // This allows us to avoid copying them during the grow. | 824 | | // FIXME: this may not actually make any sense if we can efficiently move | 825 | | // elements. | 826 | 1 | if (this->capacity() < RHSSize) { | 827 | | // Destroy current elements. | 828 | 0 | this->destroy_range(this->begin(), this->end()); | 829 | 0 | this->setEnd(this->begin()); | 830 | 0 | CurSize = 0; | 831 | 0 | this->grow(RHSSize); | 832 | 1 | } else if (CurSize) { | 833 | | // Otherwise, use assignment for the already-constructed elements. | 834 | 0 | this->move(RHS.begin(), RHS.begin()+CurSize, this->begin()); | 835 | 0 | } | 836 | | | 837 | | // Move-construct the new elements in place. | 838 | 1 | this->uninitialized_move(RHS.begin()+CurSize, RHS.end(), | 839 | 1 | this->begin()+CurSize); | 840 | | | 841 | | // Set end. | 842 | 1 | this->setEnd(this->begin()+RHSSize); | 843 | | | 844 | 1 | RHS.clear(); | 845 | 1 | return *this; | 846 | 3.22k | } |
Unexecuted instantiation: llvm_ks::SmallVectorImpl<llvm_ks::ConstantPoolEntry>::operator=(llvm_ks::SmallVectorImpl<llvm_ks::ConstantPoolEntry>&&) |
847 | | |
848 | | /// Storage for the SmallVector elements which aren't contained in |
849 | | /// SmallVectorTemplateCommon. There are 'N-1' elements here. The remaining '1' |
850 | | /// element is in the base class. This is specialized for the N=1 and N=0 cases |
851 | | /// to avoid allocating unnecessary storage. |
852 | | template <typename T, unsigned N> |
853 | | struct SmallVectorStorage { |
854 | | typename SmallVectorTemplateCommon<T>::U InlineElts[N - 1]; |
855 | | }; |
856 | | template <typename T> struct SmallVectorStorage<T, 1> {}; |
857 | | template <typename T> struct SmallVectorStorage<T, 0> {}; |
858 | | |
859 | | /// This is a 'vector' (really, a variable-sized array), optimized |
860 | | /// for the case when the array is small. It contains some number of elements |
861 | | /// in-place, which allows it to avoid heap allocation when the actual number of |
862 | | /// elements is below that threshold. This allows normal "small" cases to be |
863 | | /// fast without losing generality for large inputs. |
864 | | /// |
865 | | /// Note that this does not attempt to be exception safe. |
866 | | /// |
867 | | template <typename T, unsigned N> |
868 | | class SmallVector : public SmallVectorImpl<T> { |
869 | | /// Inline space for elements which aren't stored in the base class. |
870 | | SmallVectorStorage<T, N> Storage; |
871 | | public: |
872 | 127M | SmallVector() : SmallVectorImpl<T>(N) { |
873 | 127M | } llvm_ks::SmallVector<char, 1024u>::SmallVector() Line | Count | Source | 872 | 129k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 129k | } |
llvm_ks::SmallVector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, 3u>::SmallVector() Line | Count | Source | 872 | 377 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 377 | } |
llvm_ks::SmallVector<llvm_ks::MCDwarfFile, 3u>::SmallVector() Line | Count | Source | 872 | 377 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 377 | } |
llvm_ks::SmallVector<char, 128u>::SmallVector() Line | Count | Source | 872 | 5.51M | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 5.51M | } |
llvm_ks::SmallVector<void*, 4u>::SmallVector() Line | Count | Source | 872 | 774k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 774k | } |
llvm_ks::SmallVector<std::__1::pair<void*, unsigned long>, 0u>::SmallVector() Line | Count | Source | 872 | 774k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 774k | } |
llvm_ks::SmallVector<char, 64u>::SmallVector() Line | Count | Source | 872 | 1.05M | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 1.05M | } |
llvm_ks::SmallVector<char, 32u>::SmallVector() Line | Count | Source | 872 | 136k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 136k | } |
Unexecuted instantiation: llvm_ks::SmallVector<char, 4u>::SmallVector() llvm_ks::SmallVector<llvm_ks::MCDataFragment*, 4u>::SmallVector() Line | Count | Source | 872 | 129k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 129k | } |
llvm_ks::SmallVector<char, 256u>::SmallVector() Line | Count | Source | 872 | 3.08M | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 3.08M | } |
llvm_ks::SmallVector<llvm_ks::MCFixup, 4u>::SmallVector() Line | Count | Source | 872 | 309k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 309k | } |
llvm_ks::SmallVector<llvm_ks::MCSection*, 16u>::SmallVector() Line | Count | Source | 872 | 56.5k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 56.5k | } |
llvm_ks::SmallVector<char, 8u>::SmallVector() Line | Count | Source | 872 | 31.5k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 31.5k | } |
llvm_ks::SmallVector<llvm_ks::MCOperand, 8u>::SmallVector() Line | Count | Source | 872 | 267k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 267k | } |
llvm_ks::SmallVector<llvm_ks::MCFixup, 1u>::SmallVector() Line | Count | Source | 872 | 31.5k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 31.5k | } |
llvm_ks::SmallVector<llvm_ks::MCSymbol*, 2u>::SmallVector() Line | Count | Source | 872 | 129k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 129k | } |
llvm_ks::SmallVector<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, 8u>::SmallVector() Line | Count | Source | 872 | 104M | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 104M | } |
llvm_ks::SmallVector<llvm_ks::SMLoc, 4u>::SmallVector() Line | Count | Source | 872 | 670k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 670k | } |
llvm_ks::SmallVector<unsigned int, 8u>::SmallVector() Line | Count | Source | 872 | 775k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 775k | } |
Unexecuted instantiation: llvm_ks::SmallVector<bool, 4u>::SmallVector() Unexecuted instantiation: llvm_ks::SmallVector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, 4u>::SmallVector() Unexecuted instantiation: llvm_ks::SmallVector<unsigned int, 4u>::SmallVector() Unexecuted instantiation: llvm_ks::SmallVector<llvm_ks::AsmRewrite, 4u>::SmallVector() llvm_ks::SmallVector<llvm_ks::AsmToken, 1u>::SmallVector() Line | Count | Source | 872 | 129k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 129k | } |
llvm_ks::SmallVector<std::__1::pair<unsigned int, llvm_ks::MCFragment*>, 1u>::SmallVector() Line | Count | Source | 872 | 5.60M | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 5.60M | } |
llvm_ks::SmallVector<llvm_ks::StringRef, 5u>::SmallVector() Line | Count | Source | 872 | 7.09k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 7.09k | } |
llvm_ks::SmallVector<llvm_ks::StringRef, 1u>::SmallVector() Line | Count | Source | 872 | 162 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 162 | } |
llvm_ks::SmallVector<std::__1::pair<std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*>, std::__1::pair<llvm_ks::MCSection*, llvm_ks::MCExpr const*> >, 4u>::SmallVector() Line | Count | Source | 872 | 129k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 129k | } |
Unexecuted instantiation: llvm_ks::SmallVector<char, 6u>::SmallVector() Unexecuted instantiation: llvm_ks::SmallVector<char, 40u>::SmallVector() llvm_ks::SmallVector<char, 16384u>::SmallVector() Line | Count | Source | 872 | 6 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 6 | } |
Unexecuted instantiation: llvm_ks::SmallVector<llvm_ks::StringRef, 16u>::SmallVector() llvm_ks::SmallVector<llvm_ks::StringRef, 4u>::SmallVector() Line | Count | Source | 872 | 1.29M | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 1.29M | } |
llvm_ks::SmallVector<std::__1::pair<unsigned int, unsigned int>, 4u>::SmallVector() Line | Count | Source | 872 | 1.28M | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 1.28M | } |
llvm_ks::SmallVector<llvm_ks::MCSymbol*, 3u>::SmallVector() Line | Count | Source | 872 | 33 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 33 | } |
llvm_ks::SmallVector<llvm_ks::SMLoc, 8u>::SmallVector() Line | Count | Source | 872 | 1.42k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 1.42k | } |
llvm_ks::SmallVector<std::__1::pair<unsigned int, unsigned int>, 16u>::SmallVector() Line | Count | Source | 872 | 789 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 789 | } |
llvm_ks::SmallVector<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, 1u>::SmallVector() Line | Count | Source | 872 | 7.63k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 7.63k | } |
llvm_ks::SmallVector<unsigned char, 16u>::SmallVector() Line | Count | Source | 872 | 341 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 341 | } |
llvm_ks::SmallVector<llvm_ks::AsmToken, 5u>::SmallVector() Line | Count | Source | 872 | 845k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 845k | } |
llvm_ks::SmallVector<llvm_ks::AsmToken, 4u>::SmallVector() Line | Count | Source | 872 | 70.8k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 70.8k | } |
llvm_ks::SmallVector<llvm_ks::HexagonMCChecker::NewSense, 2u>::SmallVector() Line | Count | Source | 872 | 313 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 313 | } |
llvm_ks::SmallVector<llvm_ks::DuplexCandidate, 8u>::SmallVector() Line | Count | Source | 872 | 6.45k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 6.45k | } |
llvm_ks::SmallVector<llvm_ks::HexagonInstr, 7u>::SmallVector() Line | Count | Source | 872 | 16.6k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 16.6k | } |
MipsAsmParser.cpp:llvm_ks::SmallVector<std::__1::unique_ptr<(anonymous namespace)::MipsAssemblerOptions, std::__1::default_delete<(anonymous namespace)::MipsAssemblerOptions> >, 2u>::SmallVector() Line | Count | Source | 872 | 5.46k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 5.46k | } |
Unexecuted instantiation: llvm_ks::SmallVector<unsigned int, 10u>::SmallVector() llvm_ks::SmallVector<llvm_ks::MCInst, 3u>::SmallVector() Line | Count | Source | 872 | 5 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 5 | } |
llvm_ks::SmallVector<llvm_ks::MCInst, 8u>::SmallVector() Line | Count | Source | 872 | 16.4k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 16.4k | } |
X86AsmParser.cpp:llvm_ks::SmallVector<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, 4u>::SmallVector() Line | Count | Source | 872 | 34.5k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 34.5k | } |
X86AsmParser.cpp:llvm_ks::SmallVector<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, 4u>::SmallVector() Line | Count | Source | 872 | 34.5k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 34.5k | } |
X86AsmParser.cpp:llvm_ks::SmallVector<std::__1::pair<(anonymous namespace)::X86AsmParser::InfixCalculatorTok, long>, 16u>::SmallVector() Line | Count | Source | 872 | 24.1k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 24.1k | } |
llvm_ks::SmallVector<std::__1::unique_ptr<llvm_ks::MCParsedAsmOperand, std::__1::default_delete<llvm_ks::MCParsedAsmOperand> >, 2u>::SmallVector() Line | Count | Source | 872 | 44.4k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 44.4k | } |
llvm_ks::SmallVector<std::__1::pair<llvm_ks::SMLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, 2u>::SmallVector() Line | Count | Source | 872 | 25 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 25 | } |
llvm_ks::SmallVector<char, 126u>::SmallVector() Line | Count | Source | 872 | 3 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 3 | } |
llvm_ks::SmallVector<char, 16u>::SmallVector() Line | Count | Source | 872 | 3.25k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 3.25k | } |
Unexecuted instantiation: llvm_ks::SmallVector<llvm_ks::RISCVMatInt::Inst, 8u>::SmallVector() llvm_ks::SmallVector<llvm_ks::FeatureBitset, 4u>::SmallVector() Line | Count | Source | 872 | 25.0k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 25.0k | } |
llvm_ks::SmallVector<llvm_ks::ConstantPoolEntry, 4u>::SmallVector() Line | Count | Source | 872 | 508 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 508 | } |
llvm_ks::SmallVector<llvm_ks::MCLOHDirective, 32u>::SmallVector() Line | Count | Source | 872 | 129k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 129k | } |
llvm_ks::SmallVector<llvm_ks::StringRef, 3u>::SmallVector() Line | Count | Source | 872 | 274k | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 274k | } |
llvm_ks::SmallVector<llvm_regmatch_t, 8u>::SmallVector() Line | Count | Source | 872 | 578 | SmallVector() : SmallVectorImpl<T>(N) { | 873 | 578 | } |
Unexecuted instantiation: llvm_ks::SmallVector<llvm_ks::StringRef, 8u>::SmallVector() |
874 | | |
875 | | explicit SmallVector(size_t Size, const T &Value = T()) |
876 | 0 | : SmallVectorImpl<T>(N) { |
877 | 0 | this->assign(Size, Value); |
878 | 0 | } |
879 | | |
880 | | template<typename ItTy> |
881 | 3.46M | SmallVector(ItTy S, ItTy E) : SmallVectorImpl<T>(N) { |
882 | 3.46M | this->append(S, E); |
883 | 3.46M | } llvm_ks::SmallVector<char, 128u>::SmallVector<char const*>(char const*, char const*) Line | Count | Source | 881 | 2.15M | SmallVector(ItTy S, ItTy E) : SmallVectorImpl<T>(N) { | 882 | 2.15M | this->append(S, E); | 883 | 2.15M | } |
Unexecuted instantiation: llvm_ks::SmallVector<char, 256u>::SmallVector<char const*>(char const*, char const*) llvm_ks::SmallVector<llvm_ks::SMFixIt, 4u>::SmallVector<llvm_ks::SMFixIt const*>(llvm_ks::SMFixIt const*, llvm_ks::SMFixIt const*) Line | Count | Source | 881 | 1.30M | SmallVector(ItTy S, ItTy E) : SmallVectorImpl<T>(N) { | 882 | 1.30M | this->append(S, E); | 883 | 1.30M | } |
Unexecuted instantiation: llvm_ks::SmallVector<unsigned int, 10u>::SmallVector<unsigned int*>(unsigned int*, unsigned int*) |
884 | | |
885 | | template <typename RangeTy> |
886 | | explicit SmallVector(const llvm_ks::iterator_range<RangeTy> R) |
887 | | : SmallVectorImpl<T>(N) { |
888 | | this->append(R.begin(), R.end()); |
889 | | } |
890 | | |
891 | | SmallVector(std::initializer_list<T> IL) : SmallVectorImpl<T>(N) { |
892 | | this->assign(IL); |
893 | | } |
894 | | |
895 | 2.24M | SmallVector(const SmallVector &RHS) : SmallVectorImpl<T>(N) { |
896 | 2.24M | if (!RHS.empty()) |
897 | 2.23M | SmallVectorImpl<T>::operator=(RHS); |
898 | 2.24M | } llvm_ks::SmallVector<char, 128u>::SmallVector(llvm_ks::SmallVector<char, 128u> const&) Line | Count | Source | 895 | 2.15M | SmallVector(const SmallVector &RHS) : SmallVectorImpl<T>(N) { | 896 | 2.15M | if (!RHS.empty()) | 897 | 2.15M | SmallVectorImpl<T>::operator=(RHS); | 898 | 2.15M | } |
llvm_ks::SmallVector<llvm_ks::MCOperand, 8u>::SmallVector(llvm_ks::SmallVector<llvm_ks::MCOperand, 8u> const&) Line | Count | Source | 895 | 83.3k | SmallVector(const SmallVector &RHS) : SmallVectorImpl<T>(N) { | 896 | 83.3k | if (!RHS.empty()) | 897 | 82.6k | SmallVectorImpl<T>::operator=(RHS); | 898 | 83.3k | } |
llvm_ks::SmallVector<llvm_ks::DuplexCandidate, 8u>::SmallVector(llvm_ks::SmallVector<llvm_ks::DuplexCandidate, 8u> const&) Line | Count | Source | 895 | 3.22k | SmallVector(const SmallVector &RHS) : SmallVectorImpl<T>(N) { | 896 | 3.22k | if (!RHS.empty()) | 897 | 1 | SmallVectorImpl<T>::operator=(RHS); | 898 | 3.22k | } |
llvm_ks::SmallVector<llvm_ks::ConstantPoolEntry, 4u>::SmallVector(llvm_ks::SmallVector<llvm_ks::ConstantPoolEntry, 4u> const&) Line | Count | Source | 895 | 16 | SmallVector(const SmallVector &RHS) : SmallVectorImpl<T>(N) { | 896 | 16 | if (!RHS.empty()) | 897 | 12 | SmallVectorImpl<T>::operator=(RHS); | 898 | 16 | } |
|
899 | | |
900 | 27.1k | const SmallVector &operator=(const SmallVector &RHS) { |
901 | 27.1k | SmallVectorImpl<T>::operator=(RHS); |
902 | 27.1k | return *this; |
903 | 27.1k | } |
904 | | |
905 | 1.38k | SmallVector(SmallVector &&RHS) : SmallVectorImpl<T>(N) { |
906 | 1.38k | if (!RHS.empty()) |
907 | 0 | SmallVectorImpl<T>::operator=(::std::move(RHS)); |
908 | 1.38k | } llvm_ks::SmallVector<unsigned int, 8u>::SmallVector(llvm_ks::SmallVector<unsigned int, 8u>&&) Line | Count | Source | 905 | 56 | SmallVector(SmallVector &&RHS) : SmallVectorImpl<T>(N) { | 906 | 56 | if (!RHS.empty()) | 907 | 0 | SmallVectorImpl<T>::operator=(::std::move(RHS)); | 908 | 56 | } |
llvm_ks::SmallVector<llvm_ks::HexagonMCChecker::NewSense, 2u>::SmallVector(llvm_ks::SmallVector<llvm_ks::HexagonMCChecker::NewSense, 2u>&&) Line | Count | Source | 905 | 313 | SmallVector(SmallVector &&RHS) : SmallVectorImpl<T>(N) { | 906 | 313 | if (!RHS.empty()) | 907 | 0 | SmallVectorImpl<T>::operator=(::std::move(RHS)); | 908 | 313 | } |
Unexecuted instantiation: llvm_ks::SmallVector<llvm_ks::MCOperand, 8u>::SmallVector(llvm_ks::SmallVector<llvm_ks::MCOperand, 8u>&&) llvm_ks::SmallVector<llvm_ks::ConstantPoolEntry, 4u>::SmallVector(llvm_ks::SmallVector<llvm_ks::ConstantPoolEntry, 4u>&&) Line | Count | Source | 905 | 1.01k | SmallVector(SmallVector &&RHS) : SmallVectorImpl<T>(N) { | 906 | 1.01k | if (!RHS.empty()) | 907 | 0 | SmallVectorImpl<T>::operator=(::std::move(RHS)); | 908 | 1.01k | } |
|
909 | | |
910 | 17.2k | const SmallVector &operator=(SmallVector &&RHS) { |
911 | 17.2k | SmallVectorImpl<T>::operator=(::std::move(RHS)); |
912 | 17.2k | return *this; |
913 | 17.2k | } llvm_ks::SmallVector<unsigned int, 8u>::operator=(llvm_ks::SmallVector<unsigned int, 8u>&&) Line | Count | Source | 910 | 112 | const SmallVector &operator=(SmallVector &&RHS) { | 911 | 112 | SmallVectorImpl<T>::operator=(::std::move(RHS)); | 912 | 112 | return *this; | 913 | 112 | } |
llvm_ks::SmallVector<llvm_ks::SMLoc, 4u>::operator=(llvm_ks::SmallVector<llvm_ks::SMLoc, 4u>&&) Line | Count | Source | 910 | 13.6k | const SmallVector &operator=(SmallVector &&RHS) { | 911 | 13.6k | SmallVectorImpl<T>::operator=(::std::move(RHS)); | 912 | 13.6k | return *this; | 913 | 13.6k | } |
llvm_ks::SmallVector<llvm_ks::MCOperand, 8u>::operator=(llvm_ks::SmallVector<llvm_ks::MCOperand, 8u>&&) Line | Count | Source | 910 | 263 | const SmallVector &operator=(SmallVector &&RHS) { | 911 | 263 | SmallVectorImpl<T>::operator=(::std::move(RHS)); | 912 | 263 | return *this; | 913 | 263 | } |
llvm_ks::SmallVector<llvm_ks::DuplexCandidate, 8u>::operator=(llvm_ks::SmallVector<llvm_ks::DuplexCandidate, 8u>&&) Line | Count | Source | 910 | 3.22k | const SmallVector &operator=(SmallVector &&RHS) { | 911 | 3.22k | SmallVectorImpl<T>::operator=(::std::move(RHS)); | 912 | 3.22k | return *this; | 913 | 3.22k | } |
|
914 | | |
915 | | SmallVector(SmallVectorImpl<T> &&RHS) : SmallVectorImpl<T>(N) { |
916 | | if (!RHS.empty()) |
917 | | SmallVectorImpl<T>::operator=(::std::move(RHS)); |
918 | | } |
919 | | |
920 | | const SmallVector &operator=(SmallVectorImpl<T> &&RHS) { |
921 | | SmallVectorImpl<T>::operator=(::std::move(RHS)); |
922 | | return *this; |
923 | | } |
924 | | |
925 | | const SmallVector &operator=(std::initializer_list<T> IL) { |
926 | | this->assign(IL); |
927 | | return *this; |
928 | | } |
929 | | }; |
930 | | |
931 | | template<typename T, unsigned N> |
932 | | static inline size_t capacity_in_bytes(const SmallVector<T, N> &X) { |
933 | | return X.capacity_in_bytes(); |
934 | | } |
935 | | |
936 | | } // End llvm namespace |
937 | | |
938 | | namespace std { |
939 | | /// Implement std::swap in terms of SmallVector swap. |
940 | | template<typename T> |
941 | | inline void |
942 | | swap(llvm_ks::SmallVectorImpl<T> &LHS, llvm_ks::SmallVectorImpl<T> &RHS) { |
943 | | LHS.swap(RHS); |
944 | | } |
945 | | |
946 | | /// Implement std::swap in terms of SmallVector swap. |
947 | | template<typename T, unsigned N> |
948 | | inline void |
949 | | swap(llvm_ks::SmallVector<T, N> &LHS, llvm_ks::SmallVector<T, N> &RHS) { |
950 | | LHS.swap(RHS); |
951 | | } |
952 | | } |
953 | | |
954 | | #endif |