Fix elements transition bug on x64 in generic KeyedStoreIC
authordanno@chromium.org <danno@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Thu, 2 Feb 2012 13:17:46 +0000 (13:17 +0000)
committerdanno@chromium.org <danno@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Thu, 2 Feb 2012 13:17:46 +0000 (13:17 +0000)
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9307056

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/x64/ic-x64.cc

index eae12fb..0632ce4 100644 (file)
@@ -765,6 +765,7 @@ void KeyedStoreIC::GenerateGeneric(MacroAssembler* masm,
   __ movq(rbx, FieldOperand(rdx, HeapObject::kMapOffset));
 
   // Transition the array appropriately depending on the value type.
+  __ movq(r9, FieldOperand(rax, HeapObject::kMapOffset));
   __ CompareRoot(r9, Heap::kHeapNumberMapRootIndex);
   __ j(not_equal, &non_double_value);