aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/memory/qv4writebarrier_p.h
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2017-04-04 10:35:45 +0200
committerLars Knoll <lars.knoll@qt.io>2017-04-07 12:47:04 +0000
commitfdb1a7da37e2482a22ca32d52e2833bf67d90bc9 (patch)
tree796ab2b16a4fe42c9fb114c8e6fc3872bd929ccb /src/qml/memory/qv4writebarrier_p.h
parentb361a59c699fca02379c149cf0b9c59490a1ba62 (diff)
Cleanups: Remove Steele barrier code
Remove the code related to the Steele write barrier and incremental garbage collection. This is in preparation for a fully concurrent GC, that will not have and incremental mode and will use a Yuasa write barrier. Change-Id: I155a85211c5be61e792e056321fbceaee47c0d87 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/memory/qv4writebarrier_p.h')
-rw-r--r--src/qml/memory/qv4writebarrier_p.h38
1 files changed, 1 insertions, 37 deletions
diff --git a/src/qml/memory/qv4writebarrier_p.h b/src/qml/memory/qv4writebarrier_p.h
index a2f85822ca..e36ea0749a 100644
--- a/src/qml/memory/qv4writebarrier_p.h
+++ b/src/qml/memory/qv4writebarrier_p.h
@@ -55,7 +55,6 @@
QT_BEGIN_NAMESPACE
-#define WRITEBARRIER_steele -1
#define WRITEBARRIER_none 1
#define WRITEBARRIER(x) (1/WRITEBARRIER_##x == 1)
@@ -78,42 +77,7 @@ enum NewValueType {
// ### this needs to be filled with a real memory fence once marking is concurrent
Q_ALWAYS_INLINE void fence() {}
-#if WRITEBARRIER(steele)
-
-template <NewValueType type>
-static Q_CONSTEXPR inline bool isRequired() {
- return type != Primitive;
-}
-
-inline void write(EngineBase *engine, Heap::Base *base, Value *slot, Value value)
-{
- Q_UNUSED(engine);
- *slot = value;
- if (isRequired<Unknown>()) {
- fence();
- base->setGrayBit();
- }
-}
-
-inline void write(EngineBase *engine, Heap::Base *base, Value *slot, Heap::Base *value)
-{
- Q_UNUSED(engine);
- *slot = value;
- if (isRequired<Object>()) {
- fence();
- base->setGrayBit();
- }
-}
-
-inline void write(EngineBase *engine, Heap::Base *base, Heap::Base **slot, Heap::Base *value)
-{
- Q_UNUSED(engine);
- *slot = value;
- fence();
- base->setGrayBit();
-}
-
-#elif WRITEBARRIER(none)
+#if WRITEBARRIER(none)
template <NewValueType type>
static Q_CONSTEXPR inline bool isRequired() {