diff options
Diffstat (limited to 'runtime/runtime.cc')
-rw-r--r-- | runtime/runtime.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/runtime/runtime.cc b/runtime/runtime.cc index 6194b816d6..e5ce8e5869 100644 --- a/runtime/runtime.cc +++ b/runtime/runtime.cc @@ -790,12 +790,12 @@ void Runtime::CallExitHook(jint status) { } } -void Runtime::SweepSystemWeaks(IsMarkedVisitor* visitor) { +void Runtime::SweepSystemWeaks(IsMarkedVisitor* visitor, const bool sweep_jit) { GetInternTable()->SweepInternTableWeaks(visitor); GetMonitorList()->SweepMonitorList(visitor); GetJavaVM()->SweepJniWeakGlobals(visitor); GetHeap()->SweepAllocationRecords(visitor); - if (GetJit() != nullptr) { + if (sweep_jit && GetJit() != nullptr) { // Visit JIT literal tables. Objects in these tables are classes and strings // and only classes can be affected by class unloading. The strings always // stay alive as they are strongly interned. |