summaryrefslogtreecommitdiff
path: root/runtime/mirror/executable-inl.h
diff options
context:
space:
mode:
author Alex Light <allight@google.com> 2019-11-20 13:49:19 -0800
committer Alex Light <allight@google.com> 2019-11-21 00:38:16 +0000
commite61f16af3976ca8c0ab82cd3f21e5dff66225520 (patch)
tree4eb932e907b165f267755549361db870d1b51778 /runtime/mirror/executable-inl.h
parent55d9aaad5d5ec9729ce7522eb88b0c69a0b3342d (diff)
Add missing WriteBarrier on VisitReflectiveTargets
We weren't performing write-barriers during VisitReflectiveTargets. This could lead to incorrect marking. Test: ./test.py --host --gcstress Change-Id: I153f319e257675d83cae6ec25e041cbddecf1a94
Diffstat (limited to 'runtime/mirror/executable-inl.h')
-rw-r--r--runtime/mirror/executable-inl.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/runtime/mirror/executable-inl.h b/runtime/mirror/executable-inl.h
index f2d684a3d5..77669dace8 100644
--- a/runtime/mirror/executable-inl.h
+++ b/runtime/mirror/executable-inl.h
@@ -47,6 +47,7 @@ inline void Executable::VisitTarget(ReflectiveValueVisitor* v) {
SetArtMethod(new_target);
SetDexMethodIndex(new_target->GetDexMethodIndex());
SetDeclaringClass(new_target->GetDeclaringClass());
+ WriteBarrier::ForEveryFieldWrite(this);
}
}