Chromium Code Reviews| Index: src/hydrogen.cc |
| diff --git a/src/hydrogen.cc b/src/hydrogen.cc |
| index c292a176792f410f4461121aaa3be77dacb14923..11643dee7bed582222c260756eae8ba5c2a9c10b 100644 |
| --- a/src/hydrogen.cc |
| +++ b/src/hydrogen.cc |
| @@ -5372,7 +5372,8 @@ HInstruction* HOptimizedGraphBuilder::BuildStoreNamedField( |
| HType::HeapNumber(), |
| pretenure_flag, |
| HEAP_NUMBER_TYPE); |
|
Igor Sheludko
2014/03/27 11:30:16
MUTABLE_HEAP_NUMBER_TYPE?
|
| - AddStoreMapConstant(heap_number, isolate()->factory()->heap_number_map()); |
| + AddStoreMapConstant( |
| + heap_number, isolate()->factory()->mutable_heap_number_map()); |
| Add<HStoreNamedField>(heap_number, HObjectAccess::ForHeapNumberValue(), |
| value); |
| instr = New<HStoreNamedField>(checked_object->ActualValue(), |
| @@ -9911,9 +9912,12 @@ void HOptimizedGraphBuilder::BuildEmitInObjectProperties( |
| Add<HAllocate>(heap_number_constant, HType::HeapNumber(), |
|
Igor Sheludko
2014/03/27 11:30:16
Don't we need a HType::MutableHeapNumber() thing?
|
| pretenure_flag, HEAP_NUMBER_TYPE); |
|
Igor Sheludko
2014/03/27 11:30:16
MUTABLE_HEAP_NUMBER_TYPE?
|
| AddStoreMapConstant(double_box, |
| - isolate()->factory()->heap_number_map()); |
| - Add<HStoreNamedField>(double_box, HObjectAccess::ForHeapNumberValue(), |
| - Add<HConstant>(value)); |
| + isolate()->factory()->mutable_heap_number_map()); |
| + // Unwrap the mutable heap number from the boilerplate. |
| + HValue* double_value = |
| + Add<HConstant>(Handle<HeapNumber>::cast(value)->value()); |
|
Igor Sheludko
2014/03/27 11:30:16
value->Number()
|
| + Add<HStoreNamedField>( |
| + double_box, HObjectAccess::ForHeapNumberValue(), double_value); |
| value_instruction = double_box; |
| } else if (representation.IsSmi()) { |
| value_instruction = value->IsUninitialized() |