diff options
author | Lars Knoll <lars.knoll@qt.io> | 2017-08-08 21:55:06 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2017-08-10 08:19:34 +0000 |
commit | d5cacaf6b2adb269b9e24b518e1496bca935bc34 (patch) | |
tree | e95631610e46956f24aa6284526645a25b86ab9a /src/qml/memory/qv4mm_p.h | |
parent | 7c0dbaa3db649fb348af533820ac0550bc144d96 (diff) |
Remove stuff related to simple call contexts
Those are not being used anymore.
Change-Id: Ia33dd7c3c7ea7828caef0fbf397253249580a4e1
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/memory/qv4mm_p.h')
-rw-r--r-- | src/qml/memory/qv4mm_p.h | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/src/qml/memory/qv4mm_p.h b/src/qml/memory/qv4mm_p.h index b4f2d0492c..921fea3956 100644 --- a/src/qml/memory/qv4mm_p.h +++ b/src/qml/memory/qv4mm_p.h @@ -72,51 +72,6 @@ namespace QV4 { struct ChunkAllocator; -template<typename T> -struct StackAllocator { - Q_STATIC_ASSERT(sizeof(T) < Chunk::DataSize); - static const uint requiredSlots = (sizeof(T) + sizeof(HeapItem) - 1)/sizeof(HeapItem); - - StackAllocator(ChunkAllocator *chunkAlloc); - - T *allocate() { - HeapItem *m = nextFree; - if (Q_UNLIKELY(nextFree == lastInChunk)) { - nextChunk(); - } else { - nextFree += requiredSlots; - } -#if MM_DEBUG || !defined(QT_NO_DEBUG) || defined(QT_FORCE_ASSERTS) - Chunk *c = m->chunk(); - Chunk::setBit(c->objectBitmap, m - c->realBase()); -#endif - return m->as<T>(); - } - void free() { - if (Q_UNLIKELY(nextFree == firstInChunk)) { - prevChunk(); - } else { - nextFree -= requiredSlots; - } -#if MM_DEBUG || !defined(QT_NO_DEBUG) || defined(QT_FORCE_ASSERTS) - Chunk *c = nextFree->chunk(); - Chunk::clearBit(c->objectBitmap, nextFree - c->realBase()); -#endif - } - - void nextChunk(); - void prevChunk(); - - void freeAll(); - - ChunkAllocator *chunkAllocator; - HeapItem *nextFree = 0; - HeapItem *firstInChunk = 0; - HeapItem *lastInChunk = 0; - std::vector<Chunk *> chunks; - uint currentChunk = 0; -}; - struct BlockAllocator { BlockAllocator(ChunkAllocator *chunkAllocator) : chunkAllocator(chunkAllocator) @@ -211,19 +166,6 @@ public: Q_DECL_CONSTEXPR static inline std::size_t align(std::size_t size) { return (size + Chunk::SlotSize - 1) & ~(Chunk::SlotSize - 1); } - QV4::Heap::CallContext *allocSimpleCallContext() - { - Heap::CallContext *ctxt = stackAllocator.allocate(); - memset(ctxt, 0, sizeof(Heap::CallContext)); - ctxt->internalClass = CallContext::defaultInternalClass(engine); - Q_ASSERT(ctxt->internalClass && ctxt->internalClass->vtable); - ctxt->init(); - return ctxt; - - } - void freeSimpleCallContext() - { stackAllocator.free(); } - template<typename ManagedType> inline typename ManagedType::Data *allocManaged(std::size_t size) { @@ -477,7 +419,6 @@ private: public: QV4::ExecutionEngine *engine; ChunkAllocator *chunkAllocator; - StackAllocator<Heap::CallContext> stackAllocator; BlockAllocator blockAllocator; HugeItemAllocator hugeItemAllocator; PersistentValueStorage *m_persistentValues; |