Fix art_quick_alloc_object_tlab
Was not updated for the new dex cache arrays.
Change-Id: I47b14fbaa071428abf87b18a045009a1c04d2376
diff --git a/runtime/arch/x86_64/quick_entrypoints_x86_64.S b/runtime/arch/x86_64/quick_entrypoints_x86_64.S
index 9303b00..861f802 100644
--- a/runtime/arch/x86_64/quick_entrypoints_x86_64.S
+++ b/runtime/arch/x86_64/quick_entrypoints_x86_64.S
@@ -926,13 +926,11 @@
int3
#endif
// Might need a special macro since rsi and edx is 32b/64b mismatched.
- movl ART_METHOD_DEX_CACHE_TYPES_OFFSET_64(%rsi), %edx // Load dex cache resolved types array
- UNPOISON_HEAP_REF edx
+ movq ART_METHOD_DEX_CACHE_TYPES_OFFSET_64(%rsi), %rdx // Load dex cache resolved types array
// TODO: Add read barrier when this function is used.
// Might need to break down into multiple instructions to get the base address in a register.
// Load the class
- movl MIRROR_OBJECT_ARRAY_DATA_OFFSET(%rdx, %rdi, MIRROR_OBJECT_ARRAY_COMPONENT_SIZE), %edx
- UNPOISON_HEAP_REF edx
+ movl 0(%rdx, %rdi, COMPRESSED_REFERENCE_SIZE), %edx
testl %edx, %edx // Check null class
jz .Lart_quick_alloc_object_tlab_slow_path
// Check class status.