diff options
author | Fabian Kosmale <fabian.kosmale@qt.io> | 2024-02-29 14:35:58 +0100 |
---|---|---|
committer | Fabian Kosmale <fabian.kosmale@qt.io> | 2024-03-05 14:06:28 +0100 |
commit | 688c98a12da19a88becc152f832beb5c5a01ec47 (patch) | |
tree | c131e7d2eeb9f17fdb2f40bf8beb7cc315a691ee /src/qml/jsruntime/qv4engine_p.h | |
parent | 205d1474c365965c125101457f8ad89889f53f3a (diff) |
Prepare for white allocation during gc (0/9): Engine
When inserting compilation units into the engine, we don't have any
write barrier, as those are treaded as roots. However, we still have to
be careful when an executable compilation unit is created while the gc
is already ongoing. Thus, when we insert a CU into the engine, we mark
it.
Change-Id: I5e7c7e9518190dd6943cf57b0a82229d6be8d3b9
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4engine_p.h')
-rw-r--r-- | src/qml/jsruntime/qv4engine_p.h | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/src/qml/jsruntime/qv4engine_p.h b/src/qml/jsruntime/qv4engine_p.h index 1f4622d154..102700e25b 100644 --- a/src/qml/jsruntime/qv4engine_p.h +++ b/src/qml/jsruntime/qv4engine_p.h @@ -759,11 +759,7 @@ public: QQmlRefPointer<QV4::CompiledData::CompilationUnit> &&unit); QQmlRefPointer<ExecutableCompilationUnit> insertCompilationUnit( - QQmlRefPointer<QV4::CompiledData::CompilationUnit> &&unit) { - QUrl url = unit->finalUrl(); - return *m_compilationUnits.insert( - std::move(url), ExecutableCompilationUnit::create(std::move(unit), this)); - } + QQmlRefPointer<QV4::CompiledData::CompilationUnit> &&unit); QMultiHash<QUrl, QQmlRefPointer<ExecutableCompilationUnit>> compilationUnits() const { |