OpenCoverage

qv4mmdefs_p.h

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/qtdeclarative/src/qtdeclarative/src/qml/memory/qv4mmdefs_p.h
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4namespace QV4 {-
5-
6struct MarkStack;-
7-
8typedef void(*ClassDestroyStatsCallback)(const char *);-
9struct HeapItem;-
10struct Chunk {-
11 enum {-
12 ChunkSize = 64*1024,-
13 ChunkShift = 16,-
14 SlotSize = 32,-
15 SlotSizeShift = 5,-
16 NumSlots = ChunkSize/SlotSize,-
17 BitmapSize = NumSlots/8,-
18 HeaderSize = 4*BitmapSize,-
19 DataSize = ChunkSize - HeaderSize,-
20 AvailableSlots = DataSize/SlotSize,-
21-
22 Bits = 64,-
23 BitShift = 6,-
24-
25-
26-
27-
28 EntriesInBitmap = BitmapSize/sizeof(quintptr)-
29 };-
30 quintptr grayBitmap[BitmapSize/sizeof(quintptr)];-
31 quintptr blackBitmap[BitmapSize/sizeof(quintptr)];-
32 quintptr objectBitmap[BitmapSize/sizeof(quintptr)];-
33 quintptr extendsBitmap[BitmapSize/sizeof(quintptr)];-
34 char data[ChunkSize - HeaderSize];-
35-
36 HeapItem *realBase();-
37 HeapItem *first();-
38-
39 static inline __attribute__((always_inline)) size_t bitmapIndex(size_t index) {-
40 return
executed 2147483647 times by 154 tests: return index >> BitShift;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
index >> BitShift;
executed 2147483647 times by 154 tests: return index >> BitShift;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
Inf
41 }-
42 static inline __attribute__((always_inline)) quintptr bitForIndex(size_t index) {-
43 return
executed 2147483647 times by 154 tests: return static_cast<quintptr>(1) << (index & (Bits - 1));
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
static_cast<quintptr>(1) << (index & (Bits - 1));
executed 2147483647 times by 154 tests: return static_cast<quintptr>(1) << (index & (Bits - 1));
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
Inf
44 }-
45-
46 static void setBit(quintptr *bitmap, size_t index) {-
47-
48 bitmap += bitmapIndex(index);-
49 quintptr bit = bitForIndex(index);-
50 *bitmap |= bit;-
51 }
executed 380093966 times by 154 tests: end of block
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
380093966
52 static void clearBit(quintptr *bitmap, size_t index) {-
53-
54 bitmap += bitmapIndex(index);-
55 quintptr bit = bitForIndex(index);-
56 *bitmap &= ~bit;-
57 }
executed 5094499 times by 154 tests: end of block
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
5094499
58 static bool testBit(quintptr *bitmap, size_t index) {-
59-
60 bitmap += bitmapIndex(index);-
61 quintptr bit = bitForIndex(index);-
62 return
executed 2147483647 times by 154 tests: return (*bitmap & bit);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
(*bitmap & bit);
executed 2147483647 times by 154 tests: return (*bitmap & bit);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
Inf
63 }-
64 static void setBits(quintptr *bitmap, size_t index, size_t nBits) {-
65-
66 if (!nBits
!nBitsDescription
TRUEevaluated 177165990 times by 154 tests
Evaluated by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
FALSEevaluated 199107247 times by 154 tests
Evaluated by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
)
177165990-199107247
67 return;
executed 177673117 times by 154 tests: return;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
177673117
68 bitmap += index >> BitShift;-
69 index &= (Bits - 1);-
70 while (1) {-
71 size_t bitsToSet = qMin(nBits, Bits - index);-
72 quintptr mask = static_cast<quintptr>(-1) >> (Bits - bitsToSet) << index;-
73 *bitmap |= mask;-
74 nBits -= bitsToSet;-
75 if (!nBits
!nBitsDescription
TRUEevaluated 199594535 times by 154 tests
Evaluated by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
FALSEevaluated 912592 times by 154 tests
Evaluated by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
)
912592-199594535
76 return;
executed 199369516 times by 154 tests: return;
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
199369516
77 index = 0;-
78 ++bitmap;-
79 }
executed 912410 times by 154 tests: end of block
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
912410
80 }
never executed: end of block
0
81 static bool hasNonZeroBit(quintptr *bitmap) {-
82 for (uint i = 0; i < EntriesInBitmap
i < EntriesInBitmapDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i)
0
83 if (bitmap[i]
bitmap[i]Description
TRUEnever evaluated
FALSEnever evaluated
)
0
84 return
never executed: return true;
true;
never executed: return true;
0
85 return
never executed: return false;
false;
never executed: return false;
0
86 }-
87 static uint lowestNonZeroBit(quintptr *bitmap) {-
88 for (uint i = 0; i < EntriesInBitmap
i < EntriesInBitmapDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
89 if (bitmap[i]
bitmap[i]Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
90 quintptr b = bitmap[i];-
91 return
never executed: return i*Bits + qCountTrailingZeroBits(b);
i*Bits + qCountTrailingZeroBits(b);
never executed: return i*Bits + qCountTrailingZeroBits(b);
0
92 }-
93 }
never executed: end of block
0
94 return
never executed: return 0;
0;
never executed: return 0;
0
95 }-
96-
97 uint nFreeSlots() const {-
98 return
never executed: return AvailableSlots - nUsedSlots();
AvailableSlots - nUsedSlots();
never executed: return AvailableSlots - nUsedSlots();
0
99 }-
100 uint nUsedSlots() const {-
101 uint usedSlots = 0;-
102 for (uint i = 0; i < EntriesInBitmap
i < EntriesInBitmapDescription
TRUEevaluated 3032359 times by 28 tests
Evaluated by:
  • tst_ecmascripttests
  • tst_examples
  • tst_qjsengine
  • tst_qqmlcomponent
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlnotifier
  • tst_qqmlprofilerservice
  • tst_qqmlqt
  • tst_qqmlsqldatabase
  • tst_qqmltypeloader
  • tst_qqmlxmlhttprequest
  • tst_qquickanimationcontroller
  • tst_qquickdrag
  • tst_qquickdroparea
  • tst_qquickgridview
  • tst_qquickitem
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
  • tst_qquickwindow
  • tst_quicktestmainwithsetup
  • ...
FALSEevaluated 94762 times by 28 tests
Evaluated by:
  • tst_ecmascripttests
  • tst_examples
  • tst_qjsengine
  • tst_qqmlcomponent
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlnotifier
  • tst_qqmlprofilerservice
  • tst_qqmlqt
  • tst_qqmlsqldatabase
  • tst_qqmltypeloader
  • tst_qqmlxmlhttprequest
  • tst_qquickanimationcontroller
  • tst_qquickdrag
  • tst_qquickdroparea
  • tst_qquickgridview
  • tst_qquickitem
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
  • tst_qquickwindow
  • tst_quicktestmainwithsetup
  • ...
; ++i) {
94762-3032359
103 quintptr used = objectBitmap[i] | extendsBitmap[i];-
104 usedSlots += qPopulationCount(used);-
105 }
executed 3032357 times by 28 tests: end of block
Executed by:
  • tst_ecmascripttests
  • tst_examples
  • tst_qjsengine
  • tst_qqmlcomponent
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlnotifier
  • tst_qqmlprofilerservice
  • tst_qqmlqt
  • tst_qqmlsqldatabase
  • tst_qqmltypeloader
  • tst_qqmlxmlhttprequest
  • tst_qquickanimationcontroller
  • tst_qquickdrag
  • tst_qquickdroparea
  • tst_qquickgridview
  • tst_qquickitem
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
  • tst_qquickwindow
  • tst_quicktestmainwithsetup
  • ...
3032357
106 return
executed 94762 times by 28 tests: return usedSlots;
Executed by:
  • tst_ecmascripttests
  • tst_examples
  • tst_qjsengine
  • tst_qqmlcomponent
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlnotifier
  • tst_qqmlprofilerservice
  • tst_qqmlqt
  • tst_qqmlsqldatabase
  • tst_qqmltypeloader
  • tst_qqmlxmlhttprequest
  • tst_qquickanimationcontroller
  • tst_qquickdrag
  • tst_qquickdroparea
  • tst_qquickgridview
  • tst_qquickitem
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
  • tst_qquickwindow
  • tst_quicktestmainwithsetup
  • ...
usedSlots;
executed 94762 times by 28 tests: return usedSlots;
Executed by:
  • tst_ecmascripttests
  • tst_examples
  • tst_qjsengine
  • tst_qqmlcomponent
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlnotifier
  • tst_qqmlprofilerservice
  • tst_qqmlqt
  • tst_qqmlsqldatabase
  • tst_qqmltypeloader
  • tst_qqmlxmlhttprequest
  • tst_qquickanimationcontroller
  • tst_qquickdrag
  • tst_qquickdroparea
  • tst_qquickgridview
  • tst_qquickitem
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
  • tst_qquickwindow
  • tst_quicktestmainwithsetup
  • ...
94762
107 }-
108-
109 bool sweep(ClassDestroyStatsCallback classCountPtr);-
110 void resetBlackBits();-
111 void collectGrayItems(QV4::MarkStack *markStack);-
112 bool sweep(ExecutionEngine *engine);-
113 void freeAll(ExecutionEngine *engine);-
114-
115 void sortIntoBins(HeapItem **bins, uint nBins);-
116};-
117-
118struct HeapItem {-
119 union {-
120 struct {-
121 HeapItem *next;-
122 size_t availableSlots;-
123 } freeData;-
124 quint64 payload[Chunk::SlotSize/sizeof(quint64)];-
125 };-
126 operator Heap::Base *() { return
executed 751721189 times by 154 tests: return reinterpret_cast<Heap::Base *>(this);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
reinterpret_cast<Heap::Base *>(this);
executed 751721189 times by 154 tests: return reinterpret_cast<Heap::Base *>(this);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
}
751721189
127-
128 template<typename T>-
129 T *as() { return
executed 5049475 times by 154 tests: return static_cast<T *>(reinterpret_cast<Heap::Base *>(this));
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
static_cast<T *>(reinterpret_cast<Heap::Base *>(this));
executed 5049475 times by 154 tests: return static_cast<T *>(reinterpret_cast<Heap::Base *>(this));
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
}
5049475
130-
131 Chunk *chunk() const {-
132 return
executed 2147483647 times by 154 tests: return reinterpret_cast<Chunk *>(reinterpret_cast<quintptr>(this) >> Chunk::ChunkShift << Chunk::ChunkShift);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
reinterpret_cast<Chunk *>(reinterpret_cast<quintptr>(this) >> Chunk::ChunkShift << Chunk::ChunkShift);
executed 2147483647 times by 154 tests: return reinterpret_cast<Chunk *>(reinterpret_cast<quintptr>(this) >> Chunk::ChunkShift << Chunk::ChunkShift);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
Inf
133 }-
134-
135 bool isGray() const {-
136 Chunk *c = chunk();-
137 uint index = this - c->realBase();-
138 return
never executed: return Chunk::testBit(c->grayBitmap, index);
Chunk::testBit(c->grayBitmap, index);
never executed: return Chunk::testBit(c->grayBitmap, index);
0
139 }-
140 bool isBlack() const {-
141 Chunk *c = chunk();-
142 uint index = this - c->realBase();-
143 return
never executed: return Chunk::testBit(c->blackBitmap, index);
Chunk::testBit(c->blackBitmap, index);
never executed: return Chunk::testBit(c->blackBitmap, index);
0
144 }-
145 bool isInUse() const {-
146 Chunk *c = chunk();-
147 uint index = this - c->realBase();-
148 return
never executed: return Chunk::testBit(c->objectBitmap, index);
Chunk::testBit(c->objectBitmap, index);
never executed: return Chunk::testBit(c->objectBitmap, index);
0
149 }-
150-
151 void setAllocatedSlots(size_t nSlots) {-
152-
153 Chunk *c = chunk();-
154 size_t index = this - c->realBase();-
155-
156 Chunk::setBit(c->objectBitmap, index);-
157 Chunk::setBits(c->extendsBitmap, index + 1, nSlots - 1);-
158-
159-
160-
161 }
executed 375330220 times by 154 tests: end of block
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
375330220
162-
163-
164 size_t size() const {-
165 Chunk *c = chunk();-
166 uint index = this - c->realBase();-
167 ((Chunk::testBit(c->objectBitmap, index)) ? static_cast<void>(0) : qt_assert("Chunk::testBit(c->objectBitmap, index)", __FILE__, 247));-
168-
169 uint end = index + 1;-
170 while (end < Chunk::NumSlots
end < Chunk::NumSlotsDescription
TRUEnever evaluated
FALSEnever evaluated
&& Chunk::testBit(c->extendsBitmap, end)
Chunk::testBit...dsBitmap, end)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
171 ++
never executed: ++end;
end;
never executed: ++end;
0
172 return
never executed: return (end - index)*sizeof(HeapItem);
(end - index)*sizeof(HeapItem);
never executed: return (end - index)*sizeof(HeapItem);
0
173 }-
174};-
175-
176inline HeapItem *Chunk::realBase()-
177{-
178 return
executed 2147483647 times by 154 tests: return reinterpret_cast<HeapItem *>(this);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
reinterpret_cast<HeapItem *>(this);
executed 2147483647 times by 154 tests: return reinterpret_cast<HeapItem *>(this);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
Inf
179}-
180-
181inline HeapItem *Chunk::first()-
182{-
183 return
executed 499219 times by 154 tests: return reinterpret_cast<HeapItem *>(data);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
reinterpret_cast<HeapItem *>(data);
executed 499219 times by 154 tests: return reinterpret_cast<HeapItem *>(data);
Executed by:
  • tst_bindingdependencyapi
  • tst_drawingmodes
  • tst_ecmascripttests
  • tst_examples
  • tst_flickableinterop
  • tst_multipointtoucharea_interop
  • tst_parserstress
  • tst_qjsengine
  • tst_qjsonbinding
  • tst_qjsvalue
  • tst_qjsvalueiterator
  • tst_qmlcachegen
  • tst_qmldiskcache
  • tst_qqmlapplicationengine
  • tst_qqmlbinding
  • tst_qqmlcomponent
  • tst_qqmlconnections
  • tst_qqmlconsole
  • tst_qqmlcontext
  • tst_qqmldebugclient
  • tst_qqmldebugjs
  • tst_qqmldebuglocal
  • tst_qqmldebugservice
  • tst_qqmlecmascript
  • tst_qqmlenginecleanup
  • ...
499219
184}-
185-
186static_assert(bool(sizeof(Chunk) == Chunk::ChunkSize), "sizeof(Chunk) == Chunk::ChunkSize");-
187static_assert(bool((1 << Chunk::ChunkShift) == Chunk::ChunkSize), "(1 << Chunk::ChunkShift) == Chunk::ChunkSize");-
188static_assert(bool(1 << Chunk::SlotSizeShift == Chunk::SlotSize), "1 << Chunk::SlotSizeShift == Chunk::SlotSize");-
189static_assert(bool(sizeof(HeapItem) == Chunk::SlotSize), "sizeof(HeapItem) == Chunk::SlotSize");-
190static_assert(bool(8*8 == Chunk::Bits), "QT_POINTER_SIZE*8 == Chunk::Bits");-
191static_assert(bool((1 << Chunk::BitShift) == Chunk::Bits), "(1 << Chunk::BitShift) == Chunk::Bits");-
192-
193struct MarkStack {-
194 MarkStack(ExecutionEngine *engine);-
195 Heap::Base **top = nullptr;-
196 Heap::Base **base = nullptr;-
197 Heap::Base **limit = nullptr;-
198 ExecutionEngine *engine;-
199 void push(Heap::Base *m) {-
200 *top = m;-
201 ++top;-
202 }
executed 38945208 times by 27 tests: end of block
Executed by:
  • tst_ecmascripttests
  • tst_examples
  • tst_qjsengine
  • tst_qqmlcomponent
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlnotifier
  • tst_qqmlqt
  • tst_qqmlsqldatabase
  • tst_qqmltypeloader
  • tst_qqmlxmlhttprequest
  • tst_qquickanimationcontroller
  • tst_qquickdrag
  • tst_qquickdroparea
  • tst_qquickgridview
  • tst_qquickitem
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
  • tst_qquickwindow
  • tst_quicktestmainwithsetup
  • tst_qv4mm
  • ...
38945208
203 Heap::Base *pop() {-
204 --top;-
205 return
executed 38952512 times by 27 tests: return *top;
Executed by:
  • tst_ecmascripttests
  • tst_examples
  • tst_qjsengine
  • tst_qqmlcomponent
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlnotifier
  • tst_qqmlqt
  • tst_qqmlsqldatabase
  • tst_qqmltypeloader
  • tst_qqmlxmlhttprequest
  • tst_qquickanimationcontroller
  • tst_qquickdrag
  • tst_qquickdroparea
  • tst_qquickgridview
  • tst_qquickitem
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
  • tst_qquickwindow
  • tst_quicktestmainwithsetup
  • tst_qv4mm
  • ...
*top;
executed 38952512 times by 27 tests: return *top;
Executed by:
  • tst_ecmascripttests
  • tst_examples
  • tst_qjsengine
  • tst_qqmlcomponent
  • tst_qqmlcontext
  • tst_qqmlecmascript
  • tst_qqmlnotifier
  • tst_qqmlqt
  • tst_qqmlsqldatabase
  • tst_qqmltypeloader
  • tst_qqmlxmlhttprequest
  • tst_qquickanimationcontroller
  • tst_qquickdrag
  • tst_qquickdroparea
  • tst_qquickgridview
  • tst_qquickitem
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickloader
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
  • tst_qquickwindow
  • tst_quicktestmainwithsetup
  • tst_qv4mm
  • ...
38952512
206 }-
207 void drain();-
208-
209};-
210}-
211-
212-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.0