/home/andy/git/oilshell/oil/mycpp/gc_alloc.h
Line | Count | Source (jump to first uncovered line) |
1 | | // gc_alloc.h: Functions that wrap gHeap.Allocate() |
2 | | |
3 | | #ifndef MYCPP_GC_ALLOC_H |
4 | | #define MYCPP_GC_ALLOC_H |
5 | | |
6 | | #include <string.h> // strlen |
7 | | |
8 | | #include <new> // placement new |
9 | | #include <utility> // std::forward |
10 | | |
11 | | #include "mycpp/gc_slab.h" // for NewSlab() |
12 | | #include "mycpp/gc_str.h" // for NewStr() |
13 | | |
14 | | #if defined(BUMP_LEAK) |
15 | | #include "mycpp/bump_leak_heap.h" |
16 | | extern BumpLeakHeap gHeap; |
17 | | #elif defined(MARK_SWEEP) |
18 | | #include "mycpp/mark_sweep_heap.h" |
19 | | extern MarkSweepHeap gHeap; |
20 | | #elif defined(CHENEY_GC) |
21 | | #include "mycpp/cheney_heap.h" |
22 | | extern CheneyHeap gHeap; |
23 | | #endif |
24 | | |
25 | | #define VALIDATE_ROOTS 0 |
26 | | |
27 | | // mycpp generates code that keeps track of the root set |
28 | | class StackRoots { |
29 | | public: |
30 | | // Note: void** seems logical, because these are pointers to pointers, but |
31 | | // the C++ compiler doesn't like it. |
32 | 109k | StackRoots(std::initializer_list<void*> roots) { |
33 | 109k | n_ = roots.size(); |
34 | | |
35 | | #if VALIDATE_ROOTS |
36 | | int i = 0; |
37 | | #endif |
38 | | |
39 | 110k | for (auto root : roots) { // can't use roots[i] |
40 | | |
41 | | #if VALIDATE_ROOTS |
42 | | RawObject* obj = *(reinterpret_cast<RawObject**>(root)); |
43 | | if (obj) { |
44 | | RawObject* header = FindObjHeader(obj); |
45 | | log("obj %p header %p", obj, header); |
46 | | |
47 | | switch (header->heap_tag) { |
48 | | case HeapTag::Global: |
49 | | case HeapTag::Opaque: |
50 | | case HeapTag::Scanned: |
51 | | case HeapTag::FixedSize: |
52 | | break; |
53 | | |
54 | | default: |
55 | | log("root %d heap %d type %d mask %d len %d", i, header->heap_tag, |
56 | | header->type_tag, header->field_mask, header->obj_len); |
57 | | FAIL(kShouldNotGetHere); |
58 | | break; |
59 | | } |
60 | | } |
61 | | i++; |
62 | | #endif |
63 | | |
64 | 110k | gHeap.PushRoot(reinterpret_cast<RawObject**>(root)); |
65 | 110k | } |
66 | 109k | } |
67 | | |
68 | 109k | ~StackRoots() { |
69 | 220k | for (int i = 0; i < n_; ++i) { |
70 | 110k | gHeap.PopRoot(); |
71 | 110k | } |
72 | 109k | } |
73 | | |
74 | | private: |
75 | | int n_; |
76 | | }; |
77 | | |
78 | | // Note: |
79 | | // - This function causes code bloat due to template expansion on hundreds of |
80 | | // types. Could switch to a GC_NEW() macro |
81 | | // - GCC generates slightly larger code if you factor out void* place and new |
82 | | // (place) T() |
83 | | // |
84 | | // Variadic templates: |
85 | | // https://eli.thegreenplace.net/2014/variadic-templates-in-c/ |
86 | | template <typename T, typename... Args> |
87 | 1.61k | T* Alloc(Args&&... args) { |
88 | 1.61k | DCHECK(gHeap.is_initialized_); |
89 | | |
90 | 0 | void* place = gHeap.Allocate(sizeof(T)); |
91 | 1.61k | #if MARK_SWEEP |
92 | | // IMPORTANT: save the object ID before calling placement new, which can |
93 | | // invoke Allocate() again! |
94 | 1.61k | int obj_id = gHeap.UnusedObjectId(); |
95 | 1.61k | #endif |
96 | | |
97 | 1.61k | T* obj = new (place) T(std::forward<Args>(args)...); |
98 | | |
99 | 1.61k | #if MARK_SWEEP |
100 | | // Hack for now: find the header |
101 | 1.61k | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); |
102 | 1.61k | header->obj_id = obj_id; |
103 | 1.61k | #endif |
104 | 1.61k | return obj; |
105 | 1.61k | } _Z5AllocIN5mylib15CFileLineReaderEJRP8_IO_FILEEEPT_DpOT0_ Line | Count | Source | 87 | 8 | T* Alloc(Args&&... args) { | 88 | 8 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 8 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 8 | int obj_id = gHeap.UnusedObjectId(); | 95 | 8 | #endif | 96 | | | 97 | 8 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 8 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 8 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 8 | header->obj_id = obj_id; | 103 | 8 | #endif | 104 | 8 | return obj; | 105 | 8 | } |
_Z5AllocI10ValueErrorJEEPT_DpOT0_ Line | Count | Source | 87 | 15 | T* Alloc(Args&&... args) { | 88 | 15 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 15 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 15 | int obj_id = gHeap.UnusedObjectId(); | 95 | 15 | #endif | 96 | | | 97 | 15 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 15 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 15 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 15 | header->obj_id = obj_id; | 103 | 15 | #endif | 104 | 15 | return obj; | 105 | 15 | } |
_Z5AllocI10IndexErrorJEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
Unexecuted instantiation: _Z5AllocI8EOFErrorJEEPT_DpOT0_ _Z5AllocI7IOErrorJRiEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocI4ListIP3StrEJEEPT_DpOT0_ Line | Count | Source | 87 | 165 | T* Alloc(Args&&... args) { | 88 | 165 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 165 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 165 | int obj_id = gHeap.UnusedObjectId(); | 95 | 165 | #endif | 96 | | | 97 | 165 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 165 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 165 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 165 | header->obj_id = obj_id; | 103 | 165 | #endif | 104 | 165 | return obj; | 105 | 165 | } |
_Z5AllocIN14asdl_generated17arith_expr__ConstEJiEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
Unexecuted instantiation: _Z5AllocIN14asdl_generated17arith_expr__ConstEJRiEEPT_DpOT0_ _Z5AllocI4DictIP3StrS2_EJEEPT_DpOT0_ Line | Count | Source | 87 | 9 | T* Alloc(Args&&... args) { | 88 | 9 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 9 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 9 | int obj_id = gHeap.UnusedObjectId(); | 95 | 9 | #endif | 96 | | | 97 | 9 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 9 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 9 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 9 | header->obj_id = obj_id; | 103 | 9 | #endif | 104 | 9 | return obj; | 105 | 9 | } |
_Z5AllocIN10classes_gc6OpaqueEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN10classes_gc10OpaqueBaseEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN10classes_gc13OpaqueDerivedEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN10classes_gc8PointersEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN10classes_gc12PointersBaseEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN10classes_gc15PointersDerivedEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN10classes_gc14BaseWithMethodEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN10classes_gc17DerivedWithMethodEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN10classes_gc8WithDictEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
Unexecuted instantiation: _Z5AllocI8KeyErrorJEEPT_DpOT0_ _Z5AllocIN10classes_gc6PrintfEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
Unexecuted instantiation: _Z5AllocI4ListIPN10classes_gc10OpaqueBaseEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN10classes_gc12PointersBaseEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN10classes_gc14BaseWithMethodEEJEEPT_DpOT0_ _Z5AllocIN5mylib11CFileWriterEJRP8_IO_FILEEEPT_DpOT0_ Line | Count | Source | 87 | 9 | T* Alloc(Args&&... args) { | 88 | 9 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 9 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 9 | int obj_id = gHeap.UnusedObjectId(); | 95 | 9 | #endif | 96 | | | 97 | 9 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 9 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 9 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 9 | header->obj_id = obj_id; | 103 | 9 | #endif | 104 | 9 | return obj; | 105 | 9 | } |
_Z5AllocIN7classes10TextOutputEJRPN5mylib6WriterEEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN7classes4BaseEJDnEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN7classes8DerivedIEJDniEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN7classes9DerivedSSEJDnRP3StrS4_EEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN5mylib9BufWriterEJEEPT_DpOT0_ Line | Count | Source | 87 | 42 | T* Alloc(Args&&... args) { | 88 | 42 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 42 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 42 | int obj_id = gHeap.UnusedObjectId(); | 95 | 42 | #endif | 96 | | | 97 | 42 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 42 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 42 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 42 | header->obj_id = obj_id; | 103 | 42 | #endif | 104 | 42 | return obj; | 105 | 42 | } |
Unexecuted instantiation: _Z5AllocIN7classes10TextOutputEJRPN5mylib9BufWriterEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN7classes4NodeEJDniEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN7classes4NodeEJRPS1_RiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN7classes8DerivedIEJRPNS0_4BaseERiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN7classes9DerivedSSEJRPNS0_8DerivedIERP3StrS7_EEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN7classes4BaseEJRPNS0_9DerivedSSEEEPT_DpOT0_ _Z5AllocI4ListIiEJEEPT_DpOT0_ Line | Count | Source | 87 | 659 | T* Alloc(Args&&... args) { | 88 | 659 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 659 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 659 | int obj_id = gHeap.UnusedObjectId(); | 95 | 659 | #endif | 96 | | | 97 | 659 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 659 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 659 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 659 | header->obj_id = obj_id; | 103 | 659 | #endif | 104 | 659 | return obj; | 105 | 659 | } |
_Z5AllocI6Tuple2IiP3StrEJiRS2_EEPT_DpOT0_ Line | Count | Source | 87 | 9 | T* Alloc(Args&&... args) { | 88 | 9 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 9 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 9 | int obj_id = gHeap.UnusedObjectId(); | 95 | 9 | #endif | 96 | | | 97 | 9 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 9 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 9 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 9 | header->obj_id = obj_id; | 103 | 9 | #endif | 104 | 9 | return obj; | 105 | 9 | } |
_Z5AllocIN10containers5PointEJiiEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocI4DictIP3StriEJEEPT_DpOT0_ Line | Count | Source | 87 | 17 | T* Alloc(Args&&... args) { | 88 | 17 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 17 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 17 | int obj_id = gHeap.UnusedObjectId(); | 95 | 17 | #endif | 96 | | | 97 | 17 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 17 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 17 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 17 | header->obj_id = obj_id; | 103 | 17 | #endif | 104 | 17 | return obj; | 105 | 17 | } |
_Z5AllocIN12control_flow10ParseErrorEJRP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocI6Tuple2IiP3StrEJRiS2_EEPT_DpOT0_ Line | Count | Source | 87 | 11 | T* Alloc(Args&&... args) { | 88 | 11 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 11 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 11 | int obj_id = gHeap.UnusedObjectId(); | 95 | 11 | #endif | 96 | | | 97 | 11 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 11 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 11 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 11 | header->obj_id = obj_id; | 103 | 11 | #endif | 104 | 11 | return obj; | 105 | 11 | } |
_Z5AllocI13StopIterationJEEPT_DpOT0_ Line | Count | Source | 87 | 3 | T* Alloc(Args&&... args) { | 88 | 3 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 3 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 3 | int obj_id = gHeap.UnusedObjectId(); | 95 | 3 | #endif | 96 | | | 97 | 3 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 3 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 3 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 3 | header->obj_id = obj_id; | 103 | 3 | #endif | 104 | 3 | return obj; | 105 | 3 | } |
_Z5AllocIN9iterators3FooEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocI6Tuple2IP3StriEJRS2_iEEPT_DpOT0_ Line | Count | Source | 87 | 3 | T* Alloc(Args&&... args) { | 88 | 3 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 3 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 3 | int obj_id = gHeap.UnusedObjectId(); | 95 | 3 | #endif | 96 | | | 97 | 3 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 3 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 3 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 3 | header->obj_id = obj_id; | 103 | 3 | #endif | 104 | 3 | return obj; | 105 | 3 | } |
_Z5AllocI4ListIP6Tuple2IP3StriEEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocI4ListIP6Tuple2IiP3StrEEJEEPT_DpOT0_ Line | Count | Source | 87 | 5 | T* Alloc(Args&&... args) { | 88 | 5 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 5 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 5 | int obj_id = gHeap.UnusedObjectId(); | 95 | 5 | #endif | 96 | | | 97 | 5 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 5 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 5 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 5 | header->obj_id = obj_id; | 103 | 5 | #endif | 104 | 5 | return obj; | 105 | 5 | } |
_Z5AllocIN7modules3DogEJRP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN7module13CatEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN7modules6SphinxEJRP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN9expr_asdl12expr__BinaryEJRP3StrDnDnEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocI4ListIPN10hnode_asdl5fieldEEJEEPT_DpOT0_ Line | Count | Source | 87 | 37 | T* Alloc(Args&&... args) { | 88 | 37 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 37 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 37 | int obj_id = gHeap.UnusedObjectId(); | 95 | 37 | #endif | 96 | | | 97 | 37 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 37 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 37 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 37 | header->obj_id = obj_id; | 103 | 37 | #endif | 104 | 37 | return obj; | 105 | 37 | } |
_Z5AllocI4ListIPN10hnode_asdl7hnode_tEEJEEPT_DpOT0_ Line | Count | Source | 87 | 37 | T* Alloc(Args&&... args) { | 88 | 37 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 37 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 37 | int obj_id = gHeap.UnusedObjectId(); | 95 | 37 | #endif | 96 | | | 97 | 37 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 37 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 37 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 37 | header->obj_id = obj_id; | 103 | 37 | #endif | 104 | 37 | return obj; | 105 | 37 | } |
Unexecuted instantiation: _Z5AllocIN10hnode_asdl11hnode__LeafEJRP3StrNS0_7color_eEEEPT_DpOT0_ _Z5AllocIN9expr_asdl11expr__ConstEJiEEPT_DpOT0_ Line | Count | Source | 87 | 15 | T* Alloc(Args&&... args) { | 88 | 15 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 15 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 15 | int obj_id = gHeap.UnusedObjectId(); | 95 | 15 | #endif | 96 | | | 97 | 15 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 15 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 15 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 15 | header->obj_id = obj_id; | 103 | 15 | #endif | 104 | 15 | return obj; | 105 | 15 | } |
_Z5AllocIN9expr_asdl9expr__VarEJRP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 10 | T* Alloc(Args&&... args) { | 88 | 10 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 10 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 10 | int obj_id = gHeap.UnusedObjectId(); | 95 | 10 | #endif | 96 | | | 97 | 10 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 10 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 10 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 10 | header->obj_id = obj_id; | 103 | 10 | #endif | 104 | 10 | return obj; | 105 | 10 | } |
_Z5AllocIN10hnode_asdl13hnode__RecordEJRP3StrP4ListIPNS0_5fieldEEbS4_S4_PS5_IPNS0_7hnode_tEEEEPT_DpOT0_ Line | Count | Source | 87 | 37 | T* Alloc(Args&&... args) { | 88 | 37 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 37 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 37 | int obj_id = gHeap.UnusedObjectId(); | 95 | 37 | #endif | 96 | | | 97 | 37 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 37 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 37 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 37 | header->obj_id = obj_id; | 103 | 37 | #endif | 104 | 37 | return obj; | 105 | 37 | } |
_Z5AllocIN10hnode_asdl11hnode__LeafEJRP3StrRNS0_7color_eEEEPT_DpOT0_ Line | Count | Source | 87 | 22 | T* Alloc(Args&&... args) { | 88 | 22 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 22 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 22 | int obj_id = gHeap.UnusedObjectId(); | 95 | 22 | #endif | 96 | | | 97 | 22 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 22 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 22 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 22 | header->obj_id = obj_id; | 103 | 22 | #endif | 104 | 22 | return obj; | 105 | 22 | } |
Unexecuted instantiation: _Z5AllocIN6format10AnsiOutputEJRPN5mylib6WriterEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN6format10TextOutputEJRPN5mylib6WriterEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN6format10TextOutputEJPN5mylib9BufWriterEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN6format10HtmlOutputEJPN5mylib9BufWriterEEEPT_DpOT0_ _Z5AllocIN6format10AnsiOutputEJPN5mylib9BufWriterEEEPT_DpOT0_ Line | Count | Source | 87 | 32 | T* Alloc(Args&&... args) { | 88 | 32 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 32 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 32 | int obj_id = gHeap.UnusedObjectId(); | 95 | 32 | #endif | 96 | | | 97 | 32 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 32 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 32 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 32 | header->obj_id = obj_id; | 103 | 32 | #endif | 104 | 32 | return obj; | 105 | 32 | } |
_Z5AllocI6Tuple2IP3StriEJRS2_RiEEPT_DpOT0_ Line | Count | Source | 87 | 23 | T* Alloc(Args&&... args) { | 88 | 23 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 23 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 23 | int obj_id = gHeap.UnusedObjectId(); | 95 | 23 | #endif | 96 | | | 97 | 23 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 23 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 23 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 23 | header->obj_id = obj_id; | 103 | 23 | #endif | 104 | 23 | return obj; | 105 | 23 | } |
_Z5AllocIN6format14_PrettyPrinterEJiEEPT_DpOT0_ Line | Count | Source | 87 | 9 | T* Alloc(Args&&... args) { | 88 | 9 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 9 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 9 | int obj_id = gHeap.UnusedObjectId(); | 95 | 9 | #endif | 96 | | | 97 | 9 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 9 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 9 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 9 | header->obj_id = obj_id; | 103 | 9 | #endif | 104 | 9 | return obj; | 105 | 9 | } |
_Z5AllocIN5parse10ParseErrorEJP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 5 | T* Alloc(Args&&... args) { | 88 | 5 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 5 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 5 | int obj_id = gHeap.UnusedObjectId(); | 95 | 5 | #endif | 96 | | | 97 | 5 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 5 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 5 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 5 | header->obj_id = obj_id; | 103 | 5 | #endif | 104 | 5 | return obj; | 105 | 5 | } |
_Z5AllocIN9expr_asdl12expr__BinaryEJRP3StrRPNS0_6expr_tES7_EEPT_DpOT0_ Line | Count | Source | 87 | 14 | T* Alloc(Args&&... args) { | 88 | 14 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 14 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 14 | int obj_id = gHeap.UnusedObjectId(); | 95 | 14 | #endif | 96 | | | 97 | 14 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 14 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 14 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 14 | header->obj_id = obj_id; | 103 | 14 | #endif | 104 | 14 | return obj; | 105 | 14 | } |
_Z5AllocIN5parse5LexerEJRP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 14 | T* Alloc(Args&&... args) { | 88 | 14 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 14 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 14 | int obj_id = gHeap.UnusedObjectId(); | 95 | 14 | #endif | 96 | | | 97 | 14 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 14 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 14 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 14 | header->obj_id = obj_id; | 103 | 14 | #endif | 104 | 14 | return obj; | 105 | 14 | } |
_Z5AllocIN5parse6ParserEJRPNS0_5LexerEEEPT_DpOT0_ Line | Count | Source | 87 | 13 | T* Alloc(Args&&... args) { | 88 | 13 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 13 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 13 | int obj_id = gHeap.UnusedObjectId(); | 95 | 13 | #endif | 96 | | | 97 | 13 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 13 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 13 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 13 | header->obj_id = obj_id; | 103 | 13 | #endif | 104 | 13 | return obj; | 105 | 13 | } |
_Z5AllocIN6format10AnsiOutputEJPN5mylib6WriterEEEPT_DpOT0_ Line | Count | Source | 87 | 9 | T* Alloc(Args&&... args) { | 88 | 9 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 9 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 9 | int obj_id = gHeap.UnusedObjectId(); | 95 | 9 | #endif | 96 | | | 97 | 9 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 9 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 9 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 9 | header->obj_id = obj_id; | 103 | 9 | #endif | 104 | 9 | return obj; | 105 | 9 | } |
Unexecuted instantiation: _Z5AllocIN10hnode_asdl13hnode__RecordEJDnP4ListIPNS0_5fieldEEbRP3StrS9_PS2_IPNS0_7hnode_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN10hnode_asdl12hnode__ArrayEJP4ListIPNS0_7hnode_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN10hnode_asdl15hnode__ExternalEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN10hnode_asdl5fieldEJRP3StrDnEEPT_DpOT0_ _Z5AllocIN10hnode_asdl11hnode__LeafEJP3StrNS0_7color_eEEEPT_DpOT0_ Line | Count | Source | 87 | 15 | T* Alloc(Args&&... args) { | 88 | 15 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 15 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 15 | int obj_id = gHeap.UnusedObjectId(); | 95 | 15 | #endif | 96 | | | 97 | 15 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 15 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 15 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 15 | header->obj_id = obj_id; | 103 | 15 | #endif | 104 | 15 | return obj; | 105 | 15 | } |
_Z5AllocIN10hnode_asdl5fieldEJP3StrRPNS0_7hnode_tEEEPT_DpOT0_ Line | Count | Source | 87 | 65 | T* Alloc(Args&&... args) { | 88 | 65 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 65 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 65 | int obj_id = gHeap.UnusedObjectId(); | 95 | 65 | #endif | 96 | | | 97 | 65 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 65 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 65 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 65 | header->obj_id = obj_id; | 103 | 65 | #endif | 104 | 65 | return obj; | 105 | 65 | } |
_Z5AllocIN15scoped_resource7MyErrorEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN15scoped_resource8DirStackEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocI4ListIbEJEEPT_DpOT0_ Line | Count | Source | 87 | 3 | T* Alloc(Args&&... args) { | 88 | 3 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 3 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 3 | int obj_id = gHeap.UnusedObjectId(); | 95 | 3 | #endif | 96 | | | 97 | 3 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 3 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 3 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 3 | header->obj_id = obj_id; | 103 | 3 | #endif | 104 | 3 | return obj; | 105 | 3 | } |
_Z5AllocIN7strings3FooEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN9test_cast11ColorOutputEJRPN5mylib9BufWriterEEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN17test_default_args3FooEJiEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN17test_default_args3FooEJiiEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocIN12test_globals7MyClassEJiEEPT_DpOT0_ Line | Count | Source | 87 | 10 | T* Alloc(Args&&... args) { | 88 | 10 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 10 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 10 | int obj_id = gHeap.UnusedObjectId(); | 95 | 10 | #endif | 96 | | | 97 | 10 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 10 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 10 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 10 | header->obj_id = obj_id; | 103 | 10 | #endif | 104 | 10 | return obj; | 105 | 10 | } |
_Z5AllocI6Tuple2IP3StriEJS2_iEEPT_DpOT0_ Line | Count | Source | 87 | 10 | T* Alloc(Args&&... args) { | 88 | 10 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 10 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 10 | int obj_id = gHeap.UnusedObjectId(); | 95 | 10 | #endif | 96 | | | 97 | 10 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 10 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 10 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 10 | header->obj_id = obj_id; | 103 | 10 | #endif | 104 | 10 | return obj; | 105 | 10 | } |
_Z5AllocI10ValueErrorJRP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI7OSErrorJiEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI12RuntimeErrorJRP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI12UnicodeErrorJP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI7IOErrorJiEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI4DictIiP3StrEJEEPT_DpOT0_ Line | Count | Source | 87 | 8 | T* Alloc(Args&&... args) { | 88 | 8 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 8 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 8 | int obj_id = gHeap.UnusedObjectId(); | 95 | 8 | #endif | 96 | | | 97 | 8 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 8 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 8 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 8 | header->obj_id = obj_id; | 103 | 8 | #endif | 104 | 8 | return obj; | 105 | 8 | } |
_Z5AllocI4DictIiiEJEEPT_DpOT0_ Line | Count | Source | 87 | 6 | T* Alloc(Args&&... args) { | 88 | 6 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 6 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 6 | int obj_id = gHeap.UnusedObjectId(); | 95 | 6 | #endif | 96 | | | 97 | 6 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 6 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 6 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 6 | header->obj_id = obj_id; | 103 | 6 | #endif | 104 | 6 | return obj; | 105 | 6 | } |
_Z5AllocI4ListIP6Tuple2IiiEEJEEPT_DpOT0_ Line | Count | Source | 87 | 4 | T* Alloc(Args&&... args) { | 88 | 4 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 4 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 4 | int obj_id = gHeap.UnusedObjectId(); | 95 | 4 | #endif | 96 | | | 97 | 4 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 4 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 4 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 4 | header->obj_id = obj_id; | 103 | 4 | #endif | 104 | 4 | return obj; | 105 | 4 | } |
_Z5AllocI6Tuple2IiiEJiiEEPT_DpOT0_ Line | Count | Source | 87 | 19 | T* Alloc(Args&&... args) { | 88 | 19 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 19 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 19 | int obj_id = gHeap.UnusedObjectId(); | 95 | 19 | #endif | 96 | | | 97 | 19 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 19 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 19 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 19 | header->obj_id = obj_id; | 103 | 19 | #endif | 104 | 19 | return obj; | 105 | 19 | } |
_Z5AllocI4DictIP6Tuple2IiiEiEJEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI4DictIP6Tuple2IP3StriEiEJEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI5PointJiiEEPT_DpOT0_ Line | Count | Source | 87 | 4 | T* Alloc(Args&&... args) { | 88 | 4 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 4 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 4 | int obj_id = gHeap.UnusedObjectId(); | 95 | 4 | #endif | 96 | | | 97 | 4 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 4 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 4 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 4 | header->obj_id = obj_id; | 103 | 4 | #endif | 104 | 4 | return obj; | 105 | 4 | } |
_Z5AllocI4LineJEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI10DerivedObjJEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI4ListIdEJEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocIN5mylib13BufLineReaderEJRP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 6 | T* Alloc(Args&&... args) { | 88 | 6 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 6 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 6 | int obj_id = gHeap.UnusedObjectId(); | 95 | 6 | #endif | 96 | | | 97 | 6 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 6 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 6 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 6 | header->obj_id = obj_id; | 103 | 6 | #endif | 104 | 6 | return obj; | 105 | 6 | } |
_Z5AllocI6Tuple2IiP3StrEJiS2_EEPT_DpOT0_ Line | Count | Source | 87 | 7 | T* Alloc(Args&&... args) { | 88 | 7 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 7 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 7 | int obj_id = gHeap.UnusedObjectId(); | 95 | 7 | #endif | 96 | | | 97 | 7 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 7 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 7 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 7 | header->obj_id = obj_id; | 103 | 7 | #endif | 104 | 7 | return obj; | 105 | 7 | } |
_Z5AllocI6Tuple3IiP3StrS2_EJiS2_S2_EEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI6Tuple4IiP3StrS2_iEJiS2_S2_iEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI6Tuple2IiPS0_IiP3StrEEJiRS4_EEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocI4NodeJEEPT_DpOT0_ Line | Count | Source | 87 | 4 | T* Alloc(Args&&... args) { | 88 | 4 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 4 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 4 | int obj_id = gHeap.UnusedObjectId(); | 95 | 4 | #endif | 96 | | | 97 | 4 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 4 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 4 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 4 | header->obj_id = obj_id; | 103 | 4 | #endif | 104 | 4 | return obj; | 105 | 4 | } |
_Z5AllocIN4pyos9ReadErrorEJiEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocI7OSErrorJRiEEPT_DpOT0_ Line | Count | Source | 87 | 4 | T* Alloc(Args&&... args) { | 88 | 4 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 4 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 4 | int obj_id = gHeap.UnusedObjectId(); | 95 | 4 | #endif | 96 | | | 97 | 4 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 4 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 4 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 4 | header->obj_id = obj_id; | 103 | 4 | #endif | 104 | 4 | return obj; | 105 | 4 | } |
Unexecuted instantiation: _Z5AllocIN10hnode_asdl12hnode__ArrayEJP4ListIPNS0_7hnode_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl18parse_result__NodeEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14source__UnusedEJRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13source__StdinEJRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16source__MainFileEJRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl19source__SourcedFileEJRP3StriEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16source__ArgvWordEJRP3StriEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16source__VariableEJRP3StriEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14source__VarRefEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13source__AliasEJRP3StriEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16source__ReparsedEJRP3StrDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17source__SyntheticEJRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl9loc__SpanEJiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13loc__WordPartEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl9loc__WordEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl10loc__ArithEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl12loc__CommandEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl22bracket_op__WholeArrayEJiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl22bracket_op__ArrayIndexEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16suffix_op__UnaryEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17suffix_op__StaticEJDnRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17suffix_op__PatSubEJDnDniDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16suffix_op__SliceEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl10assoc_pairEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl28word_part__AssocArrayLiteralEJDnP4ListIPNS0_10assoc_pairEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl25word_part__EscapedLiteralEJDnRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl19word_part__TildeSubEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl19word_part__ArithSubEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl13compound_wordEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl22word_part__BracedTupleEJP4ListIPNS0_13compound_wordEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl22word_part__BracedRangeEJiRP3StrS4_iEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl18word_part__ExtGlobEJDnP4ListIPNS0_13compound_wordEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17word_part__SpliceEJDnRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl19word_part__FuncCallEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl18word_part__ExprSubEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl11word_part_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16word__BracedTreeEJP4ListIPNS0_11word_part_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl12word__StringEJiRP3StriEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17sh_lhs_expr__NameEJDnRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl24sh_lhs_expr__IndexedNameEJDnRP3StrDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl26sh_lhs_expr__UnparsedIndexEJDnRP3StrS4_EEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl23arith_expr__UnaryAssignEJiDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl24arith_expr__BinaryAssignEJiDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17arith_expr__UnaryEJiDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl18arith_expr__BinaryEJiDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl21arith_expr__TernaryOpEJDnDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl19bool_expr__WordTestEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17bool_expr__BinaryEJiDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16bool_expr__UnaryEJiDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl21bool_expr__LogicalNotEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl21bool_expr__LogicalAndEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl20bool_expr__LogicalOrEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13redir_loc__FdEJiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl18redir_loc__VarNameEJRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl20redir_param__HereDocEJDniP4ListIPNS0_11word_part_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl9command_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16condition__ShellEJP4ListIPNS0_9command_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14condition__OilEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl6word_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl15for_iter__WordsEJP4ListIPNS0_6word_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13for_iter__OilEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl5redirEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl8env_pairEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl15command__SimpleEJP4ListIPNS0_6word_tEEPS2_IPNS0_5redirEEPS2_IPNS0_8env_pairEEDnDnbEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl22command__ExpandedAliasEJDnP4ListIPNS0_5redirEEPS2_IPNS0_8env_pairEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17command__SentenceEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl11assign_pairEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl21command__ShAssignmentEJP4ListIPNS0_11assign_pairEEPS2_IPNS0_5redirEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl20command__ControlFlowEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17command__PipelineEJP4ListIPNS0_9command_tEEbPS2_IiEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14command__AndOrEJP4ListIiEPS2_IPNS0_9command_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16command__DoGroupEJP4ListIPNS0_9command_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17command__SubshellEJDnP4ListIPNS0_5redirEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl15command__DParenEJDnP4ListIPNS0_5redirEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17command__DBracketEJDnP4ListIPNS0_5redirEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16command__ForEachEJP4ListIP3StrEDnDnPS2_IPNS0_5redirEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16command__ForExprEJDnDnDnDnP4ListIPNS0_5redirEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl19command__WhileUntilEJDnDnDnP4ListIPNS0_5redirEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl6if_armEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11command__IfEJP4ListIPNS0_6if_armEEPS2_IPNS0_9command_tEEPS2_IPNS0_5redirEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl8case_armEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13command__CaseEJDnP4ListIPNS0_8case_armEEPS2_IPNS0_5redirEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl19command__ShFunctionEJRP3StrDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl18command__TimeBlockEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl20command__CommandListEJP4ListIPNS0_9command_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17command__BareDeclEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl9name_typeEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16command__VarDeclEJDnP4ListIPNS0_9name_typeEEDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl12place_expr_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl22command__PlaceMutationEJDnP4ListIPNS0_12place_expr_tEEDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13command__ExprEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13command__ProcEJDnDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl5paramEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl11type_expr_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13command__FuncEJDnP4ListIPNS0_5paramEEDnS6_DnPS2_IPNS0_11type_expr_tEEDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13command__DataEJDnP4ListIPNS0_5paramEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl7variantEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13command__EnumEJDnP4ListIPNS0_7variantEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl12class_item_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14command__ClassEJDnDnP4ListIPNS0_12class_item_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl11import_nameEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl15command__ImportEJDnDnP4ListIPNS0_11import_nameEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl12command__ForEJP4ListIPNS0_9name_typeEEDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14command__WhileEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl15command__ReturnEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl18variant_type__AnonEJP4ListIPNS0_5paramEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17variant_type__RefEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16class_item__DataEJDnP4ListIPNS0_9name_typeEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl12UntypedParamEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl10TypedParamEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16proc_sig__ClosedEJP4ListIPNS0_12UntypedParamEEDnPS2_IPNS0_10TypedParamEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl18glob_part__LiteralEJiRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl19glob_part__OperatorEJiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl20glob_part__CharClassEJbP4ListIP3StrEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl20printf_part__LiteralEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl5TokenEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl20printf_part__PercentEJP4ListIPNS0_5TokenEEDnDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl17type_expr__SimpleEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl19type_expr__CompoundEJDnP4ListIPNS0_11type_expr_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl15place_expr__VarEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl9expr__VarEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11expr__ConstEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl18expr__RegexLiteralEJDnDnP4ListIPNS0_5TokenEEDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl12expr__LambdaEJP4ListIPNS0_9name_typeEEDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11expr__UnaryEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl12expr__BinaryEJDnDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl6expr_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13expr__CompareEJDnP4ListIPNS0_5TokenEEPS2_IPNS0_6expr_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14expr__FuncCallEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11expr__IfExpEJDnDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11expr__TupleEJP4ListIPNS0_6expr_tEENS0_14expr_context_eEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl10expr__ListEJP4ListIPNS0_6expr_tEENS0_14expr_context_eEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl10expr__DictEJP4ListIPNS0_6expr_tEES6_EEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl13comprehensionEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14expr__ListCompEJDnP4ListIPNS0_13comprehensionEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14expr__DictCompEJDnDnP4ListIPNS0_13comprehensionEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl18expr__GeneratorExpEJDnP4ListIPNS0_13comprehensionEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11expr__RangeEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11expr__SliceEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl12expr__SpreadEJDnNS0_14expr_context_eEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl25class_literal_term__RangeEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl31class_literal_term__CharLiteralEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl22char_class_term__RangeEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13re_repeat__OpEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14re_repeat__NumEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16re_repeat__RangeEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl20class_literal_term_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl20re__CharClassLiteralEJbP4ListIPNS0_20class_literal_term_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl17char_class_term_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13re__CharClassEJbP4ListIPNS0_17char_class_term_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl10re__SpliceEJDnRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl10re__RepeatEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl4re_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl7re__SeqEJP4ListIPNS0_4re_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl7re__AltEJP4ListIPNS0_4re_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl9re__GroupEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11re__CaptureEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16re__BacktrackingEJbDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13re__PrimitiveEJiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16re__LiteralCharsEJRP3StriEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl12BoolOutParamEJbEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl10SourceLineEJiRP3StrDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl5TokenEJiiiiDnRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14braced_var_subEJDnDnRP3StrDnDnDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13double_quotedEJDnP4ListIPNS0_11word_part_tEEDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13single_quotedEJDnP4ListIPNS0_5TokenEEDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl14simple_var_subEJDnRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11command_subEJDnDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl16sh_array_literalEJDnP4ListIPNS0_6word_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl9named_argEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl7ArgListEJDnP4ListIPNS0_6expr_tEEPS2_IPNS0_9named_argEEDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl10assoc_pairEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13compound_wordEJP4ListIPNS0_11word_part_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11string_lineEJiP4ListIPNS0_11word_part_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl11string_lineEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13triple_quotedEJiP4ListIPNS0_11string_lineEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl5redirEJDnDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11assign_pairEJDnNS0_11assign_op_eEDnP4ListIiEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl8env_pairEJRP3StrDnP4ListIiEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl8case_armEJP4ListIPNS0_6word_tEEPS2_IPNS0_9command_tEEPS2_IiEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl6if_armEJDnP4ListIPNS0_9command_tEEPS2_IiEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl10BraceGroupEJDnDnP4ListIPNS0_9command_tEEPS2_IPNS0_5redirEEDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN11syntax_asdl10SourceLineEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl8BlockArgEJDnP4ListIPNS0_10SourceLineEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl7variantEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11import_nameEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl12UntypedParamEJDnDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl10TypedParamEJDnDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl5paramEJDnDnDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl9name_typeEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl13comprehensionEJP4ListIPNS0_9name_typeEEDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl9named_argEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl9subscriptEJDnP4ListIPNS0_6expr_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl9attributeEJDnDnDnNS0_14expr_context_eEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl11posix_classEJDnRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl10perl_classEJDnRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN11syntax_asdl8CharCodeEJibiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN10hnode_asdl5fieldEJP3StrRPNS0_12hnode__ArrayEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN10hnode_asdl15hnode__ExternalEJRPvEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl15cmd_value__ArgvEJP4ListIP3StrEPS2_IiEDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN12runtime_asdl10assign_argEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl17cmd_value__AssignEJiP4ListIP3StrEPS2_IiEPS2_IPNS0_10assign_argEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl18part_value__StringEJRP3StrbbEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl17part_value__ArrayEJP4ListIP3StrEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN12runtime_asdl12part_value_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl19part_value__ExtGlobEJP4ListIPNS0_12part_value_tEEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl10value__StrEJRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl10value__IntEJiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl20value__MaybeStrArrayEJP4ListIP3StrEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl17value__AssocArrayEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl11value__BoolEJbEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl12value__FloatEJdEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl12value__EggexEJDnRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl12value__BlockEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl10value__ObjEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl12a_index__StrEJRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl12a_index__IntEJiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl13lvalue__NamedEJRP3StriEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl15lvalue__IndexedEJRP3StriiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl13lvalue__KeyedEJRP3StrS4_iEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl16lvalue__ObjIndexEJDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl15lvalue__ObjAttrEJDnRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl18redirect_arg__PathEJRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl20redirect_arg__CopyFdEJiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl20redirect_arg__MoveFdEJiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl21redirect_arg__HereDocEJRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl17wait_status__ProcEJiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl21wait_status__PipelineEJP4ListIiEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl22wait_status__CancelledEJiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl15trace__ExternalEJP4ListIP3StrEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl10assign_argEJRP3StrDnbiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl10VTestPlaceEJRP3StrDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl11VarSubStateEJbbEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl4cellEJbbbDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl8redirectEJiiDnDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIPN12runtime_asdl7value_tEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl4ProcEJRP3StriDnDnP4ListIPNS0_7value_tEEbEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl11StatusArrayEJP4ListIiES4_EEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl13CommandStatusEJbbP4ListIiES4_bEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl8hay_nodeEJDnEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI17KeyboardInterruptJEEPT_DpOT0_ _Z5AllocI4ListIPN4pyos11PasswdEntryEEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN4pyos11PasswdEntryEJRP6passwdEEPT_DpOT0_ Line | Count | Source | 87 | 75 | T* Alloc(Args&&... args) { | 88 | 75 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 75 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 75 | int obj_id = gHeap.UnusedObjectId(); | 95 | 75 | #endif | 96 | | | 97 | 75 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 75 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 75 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 75 | header->obj_id = obj_id; | 103 | 75 | #endif | 104 | 75 | return obj; | 105 | 75 | } |
_Z5AllocIN4pyos10SignalSafeEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocI6Tuple2IP3StriEJRS2_RlEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN6pyutil15_ResourceLoaderEJEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN9flag_spec16_FlagSpecAndMoreEJEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocIN9flag_spec9_FlagSpecEJEEPT_DpOT0_ Line | Count | Source | 87 | 3 | T* Alloc(Args&&... args) { | 88 | 3 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 3 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 3 | int obj_id = gHeap.UnusedObjectId(); | 95 | 3 | #endif | 96 | | | 97 | 3 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 3 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 3 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 3 | header->obj_id = obj_id; | 103 | 3 | #endif | 104 | 3 | return obj; | 105 | 3 | } |
Unexecuted instantiation: _Z5AllocIN12runtime_asdl10value__StrEJRP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl11value__BoolEJbEEPT_DpOT0_ _Z5AllocIN12runtime_asdl11value__BoolEJRbEEPT_DpOT0_ Line | Count | Source | 87 | 19 | T* Alloc(Args&&... args) { | 88 | 19 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 19 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 19 | int obj_id = gHeap.UnusedObjectId(); | 95 | 19 | #endif | 96 | | | 97 | 19 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 19 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 19 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 19 | header->obj_id = obj_id; | 103 | 19 | #endif | 104 | 19 | return obj; | 105 | 19 | } |
_Z5AllocIN12runtime_asdl10value__IntEJRiEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
Unexecuted instantiation: _Z5AllocIN12runtime_asdl12value__FloatEJRfEEPT_DpOT0_ _Z5AllocIN12runtime_asdl12value__UndefEJEEPT_DpOT0_ Line | Count | Source | 87 | 7 | T* Alloc(Args&&... args) { | 88 | 7 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 7 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 7 | int obj_id = gHeap.UnusedObjectId(); | 95 | 7 | #endif | 96 | | | 97 | 7 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 7 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 7 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 7 | header->obj_id = obj_id; | 103 | 7 | #endif | 104 | 7 | return obj; | 105 | 7 | } |
_Z5AllocIN12runtime_asdl10value__StrEJP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
_Z5AllocIN4args11SetToStringEJP3StrbRP4ListIS3_EEEPT_DpOT0_ Line | Count | Source | 87 | 5 | T* Alloc(Args&&... args) { | 88 | 5 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 5 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 5 | int obj_id = gHeap.UnusedObjectId(); | 95 | 5 | #endif | 96 | | | 97 | 5 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 5 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 5 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 5 | header->obj_id = obj_id; | 103 | 5 | #endif | 104 | 5 | return obj; | 105 | 5 | } |
_Z5AllocIN4args11SetToStringEJP3StrbDnEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
_Z5AllocIN4args8SetToIntEJP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
Unexecuted instantiation: _Z5AllocIN4args10SetToFloatEJP3StrEEPT_DpOT0_ _Z5AllocIN4args9SetToTrueEJP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 9 | T* Alloc(Args&&... args) { | 88 | 9 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 9 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 9 | int obj_id = gHeap.UnusedObjectId(); | 95 | 9 | #endif | 96 | | | 97 | 9 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 9 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 9 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 9 | header->obj_id = obj_id; | 103 | 9 | #endif | 104 | 9 | return obj; | 105 | 9 | } |
Unexecuted instantiation: _Z5AllocIN4args15SetAttachedBoolEJP3StrEEPT_DpOT0_ _Z5AllocIN4args9SetOptionEJP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 8 | T* Alloc(Args&&... args) { | 88 | 8 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 8 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 8 | int obj_id = gHeap.UnusedObjectId(); | 95 | 8 | #endif | 96 | | | 97 | 8 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 8 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 8 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 8 | header->obj_id = obj_id; | 103 | 8 | #endif | 104 | 8 | return obj; | 105 | 8 | } |
_Z5AllocIN4args14SetNamedOptionEJbEEPT_DpOT0_ Line | Count | Source | 87 | 2 | T* Alloc(Args&&... args) { | 88 | 2 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 2 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 2 | int obj_id = gHeap.UnusedObjectId(); | 95 | 2 | #endif | 96 | | | 97 | 2 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 2 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 2 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 2 | header->obj_id = obj_id; | 103 | 2 | #endif | 104 | 2 | return obj; | 105 | 2 | } |
Unexecuted instantiation: _Z5AllocIN4args9SetActionEJP3StrEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN4args14SetNamedActionEJEEPT_DpOT0_ _Z5AllocI4DictIP3StrPN4args7_ActionEEJEEPT_DpOT0_ Line | Count | Source | 87 | 6 | T* Alloc(Args&&... args) { | 88 | 6 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 6 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 6 | int obj_id = gHeap.UnusedObjectId(); | 95 | 6 | #endif | 96 | | | 97 | 6 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 6 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 6 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 6 | header->obj_id = obj_id; | 103 | 6 | #endif | 104 | 6 | return obj; | 105 | 6 | } |
_Z5AllocI4DictIP3StrPN12runtime_asdl7value_tEEJEEPT_DpOT0_ Line | Count | Source | 87 | 3 | T* Alloc(Args&&... args) { | 88 | 3 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 3 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 3 | int obj_id = gHeap.UnusedObjectId(); | 95 | 3 | #endif | 96 | | | 97 | 3 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 3 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 3 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 3 | header->obj_id = obj_id; | 103 | 3 | #endif | 104 | 3 | return obj; | 105 | 3 | } |
Unexecuted instantiation: _Z5AllocIN4args6ReaderEJRP4ListIP3StrERPS2_IiEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN5error5UsageEJRP3StrRiEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN5error6StrictEJRP3StrRPN11syntax_asdl5loc_tEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN5error5ParseEJRP3StrRPN11syntax_asdl5loc_tEEEPT_DpOT0_ _Z5AllocIN5error12FatalRuntimeEJiRP3StrRPN11syntax_asdl5loc_tEEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
Unexecuted instantiation: _Z5AllocIN5error12FatalRuntimeEJRiRP3StrRPN11syntax_asdl5loc_tEEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI4ListIP6Tuple2IP3StrbEEJEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN12runtime_asdl12value__FloatEJRdEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocI6Tuple2IP3StrbEJRS2_RbEEPT_DpOT0_ Unexecuted instantiation: _Z5AllocIN4args11_AttributesEJRP4DictIP3StrPN12runtime_asdl7value_tEEEEPT_DpOT0_ _Z5AllocIN5match11SimpleLexerEJPFvPKhiiPiS4_ERP3StrEEPT_DpOT0_ Line | Count | Source | 87 | 4 | T* Alloc(Args&&... args) { | 88 | 4 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 4 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 4 | int obj_id = gHeap.UnusedObjectId(); | 95 | 4 | #endif | 96 | | | 97 | 4 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 4 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 4 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 4 | header->obj_id = obj_id; | 103 | 4 | #endif | 104 | 4 | return obj; | 105 | 4 | } |
Unexecuted instantiation: _Z5AllocI12RuntimeErrorJP3StrEEPT_DpOT0_ _Z5AllocIN11syntax_asdl9loc__WordEJRPNS0_6word_tEEEPT_DpOT0_ Line | Count | Source | 87 | 1 | T* Alloc(Args&&... args) { | 88 | 1 | DCHECK(gHeap.is_initialized_); | 89 | | | 90 | 0 | void* place = gHeap.Allocate(sizeof(T)); | 91 | 1 | #if MARK_SWEEP | 92 | | // IMPORTANT: save the object ID before calling placement new, which can | 93 | | // invoke Allocate() again! | 94 | 1 | int obj_id = gHeap.UnusedObjectId(); | 95 | 1 | #endif | 96 | | | 97 | 1 | T* obj = new (place) T(std::forward<Args>(args)...); | 98 | | | 99 | 1 | #if MARK_SWEEP | 100 | | // Hack for now: find the header | 101 | 1 | ObjHeader* header = FindObjHeader(reinterpret_cast<RawObject*>(obj)); | 102 | 1 | header->obj_id = obj_id; | 103 | 1 | #endif | 104 | 1 | return obj; | 105 | 1 | } |
|
106 | | |
107 | | // |
108 | | // String "Constructors". We need these because of the "flexible array" |
109 | | // pattern. I don't think "new Str()" can do that, and placement new would |
110 | | // require mycpp to generate 2 statements everywhere. |
111 | | // |
112 | | |
113 | 5.64k | inline Str* NewStr(int len) { |
114 | 5.64k | if (len == 0) { // e.g. BufLineReader::readline() can use this optimization |
115 | 380 | return kEmptyString; |
116 | 380 | } |
117 | | |
118 | 5.26k | int obj_len = kStrHeaderSize + len + 1; |
119 | | |
120 | | // only allocation is unconditionally returned |
121 | 5.26k | void* place = gHeap.Allocate(obj_len); |
122 | | |
123 | 5.26k | auto s = new (place) Str(); |
124 | 5.26k | #if defined(MARK_SWEEP) || defined(BUMP_LEAK) |
125 | 5.26k | s->len_ = len; |
126 | | #else |
127 | | // reversed in len() to derive string length |
128 | | s->header_.obj_len = kStrHeaderSize + len + 1; |
129 | | #endif |
130 | | |
131 | 5.26k | #if MARK_SWEEP |
132 | 5.26k | s->header_.obj_id = gHeap.UnusedObjectId(); |
133 | 5.26k | #endif |
134 | 5.26k | return s; |
135 | 5.64k | } |
136 | | |
137 | | // Call OverAllocatedStr() when you don't know the length of the string up |
138 | | // front, e.g. with snprintf(). CALLER IS RESPONSIBLE for calling |
139 | | // s->MaybeShrink() afterward! |
140 | 102 | inline Str* OverAllocatedStr(int len) { |
141 | 102 | int obj_len = kStrHeaderSize + len + 1; // NUL terminator |
142 | 102 | void* place = gHeap.Allocate(obj_len); |
143 | 102 | auto s = new (place) Str(); |
144 | 102 | #if MARK_SWEEP |
145 | 102 | s->header_.obj_id = gHeap.UnusedObjectId(); |
146 | 102 | #endif |
147 | 102 | return s; |
148 | 102 | } |
149 | | |
150 | | // Copy C string into the managed heap. |
151 | 2.86k | inline Str* StrFromC(const char* data, int len) { |
152 | | // Optimization that could be taken out once we have SmallStr |
153 | 2.86k | if (len == 0) { |
154 | 162 | return kEmptyString; |
155 | 162 | } |
156 | 2.70k | Str* s = NewStr(len); |
157 | 2.70k | memcpy(s->data_, data, len); |
158 | 2.70k | DCHECK(s->data_[len] == '\0'); // should be true because Heap was zeroed |
159 | | |
160 | 0 | return s; |
161 | 2.86k | } |
162 | | |
163 | 1.57k | inline Str* StrFromC(const char* data) { |
164 | 1.57k | return StrFromC(data, strlen(data)); |
165 | 1.57k | } |
166 | | |
167 | | // Create a slab with a number of entries of a certain type. |
168 | | // Note: entries will be zero'd because we use calloc(). TODO: Consider |
169 | | // zeroing them separately. |
170 | | template <typename T> |
171 | 1.17k | inline Slab<T>* NewSlab(int len) { |
172 | 1.17k | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); |
173 | 1.17k | void* place = gHeap.Allocate(obj_len); |
174 | 1.17k | auto slab = new (place) Slab<T>(len); // placement new |
175 | 1.17k | #if MARK_SWEEP |
176 | 1.17k | slab->header_.obj_id = gHeap.UnusedObjectId(); |
177 | 1.17k | #endif |
178 | 1.17k | return slab; |
179 | 1.17k | } _Z7NewSlabIP3StrEP4SlabIT_Ei Line | Count | Source | 171 | 257 | inline Slab<T>* NewSlab(int len) { | 172 | 257 | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); | 173 | 257 | void* place = gHeap.Allocate(obj_len); | 174 | 257 | auto slab = new (place) Slab<T>(len); // placement new | 175 | 257 | #if MARK_SWEEP | 176 | 257 | slab->header_.obj_id = gHeap.UnusedObjectId(); | 177 | 257 | #endif | 178 | 257 | return slab; | 179 | 257 | } |
Line | Count | Source | 171 | 838 | inline Slab<T>* NewSlab(int len) { | 172 | 838 | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); | 173 | 838 | void* place = gHeap.Allocate(obj_len); | 174 | 838 | auto slab = new (place) Slab<T>(len); // placement new | 175 | 838 | #if MARK_SWEEP | 176 | 838 | slab->header_.obj_id = gHeap.UnusedObjectId(); | 177 | 838 | #endif | 178 | 838 | return slab; | 179 | 838 | } |
Unexecuted instantiation: _Z7NewSlabIPN10classes_gc10OpaqueBaseEEP4SlabIT_Ei Unexecuted instantiation: _Z7NewSlabIPN10classes_gc12PointersBaseEEP4SlabIT_Ei Unexecuted instantiation: _Z7NewSlabIPN10classes_gc14BaseWithMethodEEP4SlabIT_Ei _Z7NewSlabIP6Tuple2IiP3StrEEP4SlabIT_Ei Line | Count | Source | 171 | 9 | inline Slab<T>* NewSlab(int len) { | 172 | 9 | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); | 173 | 9 | void* place = gHeap.Allocate(obj_len); | 174 | 9 | auto slab = new (place) Slab<T>(len); // placement new | 175 | 9 | #if MARK_SWEEP | 176 | 9 | slab->header_.obj_id = gHeap.UnusedObjectId(); | 177 | 9 | #endif | 178 | 9 | return slab; | 179 | 9 | } |
_Z7NewSlabIP6Tuple2IP3StriEEP4SlabIT_Ei Line | Count | Source | 171 | 3 | inline Slab<T>* NewSlab(int len) { | 172 | 3 | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); | 173 | 3 | void* place = gHeap.Allocate(obj_len); | 174 | 3 | auto slab = new (place) Slab<T>(len); // placement new | 175 | 3 | #if MARK_SWEEP | 176 | 3 | slab->header_.obj_id = gHeap.UnusedObjectId(); | 177 | 3 | #endif | 178 | 3 | return slab; | 179 | 3 | } |
_Z7NewSlabIPN10hnode_asdl5fieldEEP4SlabIT_Ei Line | Count | Source | 171 | 37 | inline Slab<T>* NewSlab(int len) { | 172 | 37 | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); | 173 | 37 | void* place = gHeap.Allocate(obj_len); | 174 | 37 | auto slab = new (place) Slab<T>(len); // placement new | 175 | 37 | #if MARK_SWEEP | 176 | 37 | slab->header_.obj_id = gHeap.UnusedObjectId(); | 177 | 37 | #endif | 178 | 37 | return slab; | 179 | 37 | } |
Line | Count | Source | 171 | 3 | inline Slab<T>* NewSlab(int len) { | 172 | 3 | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); | 173 | 3 | void* place = gHeap.Allocate(obj_len); | 174 | 3 | auto slab = new (place) Slab<T>(len); // placement new | 175 | 3 | #if MARK_SWEEP | 176 | 3 | slab->header_.obj_id = gHeap.UnusedObjectId(); | 177 | 3 | #endif | 178 | 3 | return slab; | 179 | 3 | } |
_Z7NewSlabIP6Tuple2IiiEEP4SlabIT_Ei Line | Count | Source | 171 | 6 | inline Slab<T>* NewSlab(int len) { | 172 | 6 | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); | 173 | 6 | void* place = gHeap.Allocate(obj_len); | 174 | 6 | auto slab = new (place) Slab<T>(len); // placement new | 175 | 6 | #if MARK_SWEEP | 176 | 6 | slab->header_.obj_id = gHeap.UnusedObjectId(); | 177 | 6 | #endif | 178 | 6 | return slab; | 179 | 6 | } |
Line | Count | Source | 171 | 2 | inline Slab<T>* NewSlab(int len) { | 172 | 2 | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); | 173 | 2 | void* place = gHeap.Allocate(obj_len); | 174 | 2 | auto slab = new (place) Slab<T>(len); // placement new | 175 | 2 | #if MARK_SWEEP | 176 | 2 | slab->header_.obj_id = gHeap.UnusedObjectId(); | 177 | 2 | #endif | 178 | 2 | return slab; | 179 | 2 | } |
Unexecuted instantiation: _Z7NewSlabIPN10hnode_asdl7hnode_tEEP4SlabIT_Ei _Z7NewSlabIPN4pyos11PasswdEntryEEP4SlabIT_Ei Line | Count | Source | 171 | 6 | inline Slab<T>* NewSlab(int len) { | 172 | 6 | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); | 173 | 6 | void* place = gHeap.Allocate(obj_len); | 174 | 6 | auto slab = new (place) Slab<T>(len); // placement new | 175 | 6 | #if MARK_SWEEP | 176 | 6 | slab->header_.obj_id = gHeap.UnusedObjectId(); | 177 | 6 | #endif | 178 | 6 | return slab; | 179 | 6 | } |
_Z7NewSlabIPN12runtime_asdl7value_tEEP4SlabIT_Ei Line | Count | Source | 171 | 9 | inline Slab<T>* NewSlab(int len) { | 172 | 9 | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); | 173 | 9 | void* place = gHeap.Allocate(obj_len); | 174 | 9 | auto slab = new (place) Slab<T>(len); // placement new | 175 | 9 | #if MARK_SWEEP | 176 | 9 | slab->header_.obj_id = gHeap.UnusedObjectId(); | 177 | 9 | #endif | 178 | 9 | return slab; | 179 | 9 | } |
_Z7NewSlabIPN4args7_ActionEEP4SlabIT_Ei Line | Count | Source | 171 | 6 | inline Slab<T>* NewSlab(int len) { | 172 | 6 | int obj_len = RoundUp(kSlabHeaderSize + len * sizeof(T)); | 173 | 6 | void* place = gHeap.Allocate(obj_len); | 174 | 6 | auto slab = new (place) Slab<T>(len); // placement new | 175 | 6 | #if MARK_SWEEP | 176 | 6 | slab->header_.obj_id = gHeap.UnusedObjectId(); | 177 | 6 | #endif | 178 | 6 | return slab; | 179 | 6 | } |
Unexecuted instantiation: _Z7NewSlabIP6Tuple2IP3StrbEEP4SlabIT_Ei |
180 | | |
181 | | #endif // MYCPP_GC_ALLOC_H |