diff options
author | Lars Knoll <lars.knoll@qt.io> | 2017-03-09 10:36:16 +0100 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2017-04-07 06:06:17 +0000 |
commit | 589f8a90fa8c158ec97f32d4a9539b47ba8486a2 (patch) | |
tree | a379d6cc9d85b6565d712943d0fcf763466403e0 /src/qml/memory/qv4heap_p.h | |
parent | 1e63f7c4833c19f760f4af0b7650311819d0f2b2 (diff) |
Separate the stack used for GC from the regular JS stack
This is required to be able to implement concurrent or
incremental garbage collection.
Change-Id: Ib3c5eee3779ca2ee08a57cd3961dbcb0537bbb54
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/memory/qv4heap_p.h')
-rw-r--r-- | src/qml/memory/qv4heap_p.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/qml/memory/qv4heap_p.h b/src/qml/memory/qv4heap_p.h index 6c7da91ba0..a38a938588 100644 --- a/src/qml/memory/qv4heap_p.h +++ b/src/qml/memory/qv4heap_p.h @@ -83,7 +83,7 @@ struct VTable uint type : 8; const char *className; void (*destroy)(Heap::Base *); - void (*markObjects)(Heap::Base *, ExecutionEngine *e); + void (*markObjects)(Heap::Base *, MarkStack *markStack); bool (*isEqualTo)(Managed *m, Managed *other); }; @@ -97,7 +97,7 @@ struct Q_QML_EXPORT Base { const VTable *vt; inline ReturnedValue asReturnedValue() const; - inline void mark(QV4::ExecutionEngine *engine); + inline void mark(QV4::MarkStack *markStack); void setVtable(const VTable *v) { vt = v; } const VTable *vtable() const { return vt; } @@ -127,7 +127,7 @@ struct Q_QML_EXPORT Base { return Chunk::testBit(c->objectBitmap, h - c->realBase()); } - inline void markChildren(ExecutionEngine *engine); + inline void markChildren(MarkStack *markStack); void *operator new(size_t, Managed *m) { return m; } void *operator new(size_t, Heap::Base *m) { return m; } |