| Index: src/hydrogen.cc
|
| diff --git a/src/hydrogen.cc b/src/hydrogen.cc
|
| index 6d3f9eab6c7d82871bc53d1a77ec2456eab11d89..728169d9db6376201c3072be1a3950a717a159f7 100644
|
| --- a/src/hydrogen.cc
|
| +++ b/src/hydrogen.cc
|
| @@ -2801,12 +2801,10 @@ void HGraphBuilder::BuildFillElementsWithHole(HValue* elements,
|
| HValue* to) {
|
| // Fast elements kinds need to be initialized in case statements below cause a
|
| // garbage collection.
|
| - Factory* factory = isolate()->factory();
|
|
|
| - double nan_double = FixedDoubleArray::hole_nan_as_double();
|
| HValue* hole = IsFastSmiOrObjectElementsKind(elements_kind)
|
| - ? Add<HConstant>(factory->the_hole_value())
|
| - : Add<HConstant>(nan_double);
|
| + ? graph()->GetConstantHole()
|
| + : Add<HConstant>(HConstant::kHoleNaN);
|
|
|
| // Since we're about to store a hole value, the store instruction below must
|
| // assume an elements kind that supports heap object values.
|
| @@ -2904,8 +2902,8 @@ void HGraphBuilder::BuildCopyElements(HValue* from_elements,
|
| if_hole.If<HCompareHoleAndBranch>(element);
|
| if_hole.Then();
|
| HConstant* hole_constant = IsFastDoubleElementsKind(to_elements_kind)
|
| - ? Add<HConstant>(FixedDoubleArray::hole_nan_as_double())
|
| - : graph()->GetConstantHole();
|
| + ? Add<HConstant>(HConstant::kHoleNaN)
|
| + : graph()->GetConstantHole();
|
| Add<HStoreKeyed>(to_elements, key, hole_constant, kind);
|
| if_hole.Else();
|
| HStoreKeyed* store = Add<HStoreKeyed>(to_elements, key, element, kind);
|
| @@ -8379,11 +8377,9 @@ bool HOptimizedGraphBuilder::TryInlineBuiltinMethodCall(
|
| reduced_length = AddUncasted<HSub>(length, graph()->GetConstant1());
|
| result = AddElementAccess(elements, reduced_length, NULL,
|
| bounds_check, elements_kind, LOAD);
|
| - Factory* factory = isolate()->factory();
|
| - double nan_double = FixedDoubleArray::hole_nan_as_double();
|
| HValue* hole = IsFastSmiOrObjectElementsKind(elements_kind)
|
| - ? Add<HConstant>(factory->the_hole_value())
|
| - : Add<HConstant>(nan_double);
|
| + ? graph()->GetConstantHole()
|
| + : Add<HConstant>(HConstant::kHoleNaN);
|
| if (IsFastSmiOrObjectElementsKind(elements_kind)) {
|
| elements_kind = FAST_HOLEY_ELEMENTS;
|
| }
|
| @@ -8545,8 +8541,8 @@ bool HOptimizedGraphBuilder::TryInlineBuiltinMethodCall(
|
|
|
| // Put a hole at the end.
|
| HValue* hole = IsFastSmiOrObjectElementsKind(kind)
|
| - ? Add<HConstant>(isolate()->factory()->the_hole_value())
|
| - : Add<HConstant>(FixedDoubleArray::hole_nan_as_double());
|
| + ? graph()->GetConstantHole()
|
| + : Add<HConstant>(HConstant::kHoleNaN);
|
| if (IsFastSmiOrObjectElementsKind(kind)) kind = FAST_HOLEY_ELEMENTS;
|
| Add<HStoreKeyed>(
|
| elements, new_length, hole, kind, INITIALIZING_STORE);
|
|
|