summaryrefslogtreecommitdiffstats
path: root/compiler/utils/x86/assembler_x86.cc
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/utils/x86/assembler_x86.cc')
-rw-r--r--compiler/utils/x86/assembler_x86.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/utils/x86/assembler_x86.cc b/compiler/utils/x86/assembler_x86.cc
index 136d2486df..16165029f4 100644
--- a/compiler/utils/x86/assembler_x86.cc
+++ b/compiler/utils/x86/assembler_x86.cc
@@ -1553,6 +1553,9 @@ void X86Assembler::LoadRef(ManagedRegister mdest, ManagedRegister base,
X86ManagedRegister dest = mdest.AsX86();
CHECK(dest.IsCpuRegister() && dest.IsCpuRegister());
movl(dest.AsCpuRegister(), Address(base.AsX86().AsCpuRegister(), offs));
+ if (kPoisonHeapReferences) {
+ negl(dest.AsCpuRegister());
+ }
}
void X86Assembler::LoadRawPtr(ManagedRegister mdest, ManagedRegister base,