| Index: src/ia32/ic-ia32.cc
|
| diff --git a/src/ia32/ic-ia32.cc b/src/ia32/ic-ia32.cc
|
| index dc64a09d839088ec8e3633bf5124f14f5a67b460..fa1c4af9667c253f5635b1618a300d5fb9de070f 100644
|
| --- a/src/ia32/ic-ia32.cc
|
| +++ b/src/ia32/ic-ia32.cc
|
| @@ -889,25 +889,25 @@ void KeyedStoreIC::GenerateGeneric(MacroAssembler* masm,
|
| &non_double_value,
|
| DONT_DO_SMI_CHECK);
|
|
|
| - // Value is a double. Transition FAST_SMI_ONLY_ELEMENTS ->
|
| - // FAST_DOUBLE_ELEMENTS and complete the store.
|
| - __ LoadTransitionedArrayMapConditional(FAST_SMI_ONLY_ELEMENTS,
|
| + // Value is a double. Transition FAST_SMI_ELEMENTS -> FAST_DOUBLE_ELEMENTS
|
| + // and complete the store.
|
| + __ LoadTransitionedArrayMapConditional(FAST_SMI_ELEMENTS,
|
| FAST_DOUBLE_ELEMENTS,
|
| ebx,
|
| edi,
|
| &slow);
|
| - ElementsTransitionGenerator::GenerateSmiOnlyToDouble(masm, &slow);
|
| + ElementsTransitionGenerator::GenerateSmiToDouble(masm, &slow);
|
| __ mov(ebx, FieldOperand(edx, JSObject::kElementsOffset));
|
| __ jmp(&fast_double_without_map_check);
|
|
|
| __ bind(&non_double_value);
|
| - // Value is not a double, FAST_SMI_ONLY_ELEMENTS -> FAST_ELEMENTS
|
| - __ LoadTransitionedArrayMapConditional(FAST_SMI_ONLY_ELEMENTS,
|
| + // Value is not a double, FAST_SMI_ELEMENTS -> FAST_ELEMENTS
|
| + __ LoadTransitionedArrayMapConditional(FAST_SMI_ELEMENTS,
|
| FAST_ELEMENTS,
|
| ebx,
|
| edi,
|
| &slow);
|
| - ElementsTransitionGenerator::GenerateSmiOnlyToObject(masm);
|
| + ElementsTransitionGenerator::GenerateMapChangeElementTransition(masm);
|
| __ mov(ebx, FieldOperand(edx, JSObject::kElementsOffset));
|
| __ jmp(&finish_object_store);
|
|
|
| @@ -1622,7 +1622,7 @@ void KeyedStoreIC::GenerateTransitionElementsSmiToDouble(MacroAssembler* masm) {
|
| // Must return the modified receiver in eax.
|
| if (!FLAG_trace_elements_transitions) {
|
| Label fail;
|
| - ElementsTransitionGenerator::GenerateSmiOnlyToDouble(masm, &fail);
|
| + ElementsTransitionGenerator::GenerateSmiToDouble(masm, &fail);
|
| __ mov(eax, edx);
|
| __ Ret();
|
| __ bind(&fail);
|
|
|