| Index: src/code-stubs-hydrogen.cc
|
| diff --git a/src/code-stubs-hydrogen.cc b/src/code-stubs-hydrogen.cc
|
| index 8ec255b2644fff2329f069941e231cec3bb03fdc..aa5df1dde3e7395ee313f5d0489ead837736a575 100644
|
| --- a/src/code-stubs-hydrogen.cc
|
| +++ b/src/code-stubs-hydrogen.cc
|
| @@ -443,7 +443,7 @@ HValue* CodeStubGraphBuilder<FastCloneShallowArrayStub>::BuildCodeStub() {
|
| info()->MarkMustNotHaveEagerFrame();
|
|
|
| HInstruction* allocation_site = Add<HLoadKeyed>(
|
| - GetParameter(0), GetParameter(1), nullptr, FAST_ELEMENTS,
|
| + GetParameter(0), GetParameter(1), nullptr, nullptr, FAST_ELEMENTS,
|
| NEVER_RETURN_HOLE, LiteralsArray::kOffsetToFirstLiteral - kHeapObjectTag);
|
| IfBuilder checker(this);
|
| checker.IfNot<HCompareObjectEqAndBranch, HValue*>(allocation_site,
|
| @@ -506,7 +506,7 @@ HValue* CodeStubGraphBuilder<FastCloneShallowObjectStub>::BuildCodeStub() {
|
| HValue* undefined = graph()->GetConstantUndefined();
|
|
|
| HInstruction* allocation_site = Add<HLoadKeyed>(
|
| - GetParameter(0), GetParameter(1), nullptr, FAST_ELEMENTS,
|
| + GetParameter(0), GetParameter(1), nullptr, nullptr, FAST_ELEMENTS,
|
| NEVER_RETURN_HOLE, LiteralsArray::kOffsetToFirstLiteral - kHeapObjectTag);
|
|
|
| IfBuilder checker(this);
|
| @@ -636,7 +636,7 @@ HValue* CodeStubGraphBuilder<CreateAllocationSiteStub>::BuildCodeStub() {
|
|
|
| HInstruction* feedback_vector = GetParameter(0);
|
| HInstruction* slot = GetParameter(1);
|
| - Add<HStoreKeyed>(feedback_vector, slot, object, FAST_ELEMENTS,
|
| + Add<HStoreKeyed>(feedback_vector, slot, object, nullptr, FAST_ELEMENTS,
|
| INITIALIZING_STORE);
|
| return feedback_vector;
|
| }
|
| @@ -668,7 +668,7 @@ HValue* CodeStubGraphBuilder<CreateWeakCellStub>::BuildCodeStub() {
|
| HInstruction* feedback_vector =
|
| GetParameter(CreateWeakCellDescriptor::kVectorIndex);
|
| HInstruction* slot = GetParameter(CreateWeakCellDescriptor::kSlotIndex);
|
| - Add<HStoreKeyed>(feedback_vector, slot, object, FAST_ELEMENTS,
|
| + Add<HStoreKeyed>(feedback_vector, slot, object, nullptr, FAST_ELEMENTS,
|
| INITIALIZING_STORE);
|
| return graph()->GetConstant0();
|
| }
|
| @@ -824,8 +824,8 @@ HValue* CodeStubGraphBuilderBase::UnmappedCase(HValue* elements, HValue* key,
|
| HValue* value) {
|
| HValue* result = NULL;
|
| HInstruction* backing_store =
|
| - Add<HLoadKeyed>(elements, graph()->GetConstant1(), nullptr, FAST_ELEMENTS,
|
| - ALLOW_RETURN_HOLE);
|
| + Add<HLoadKeyed>(elements, graph()->GetConstant1(), nullptr, nullptr,
|
| + FAST_ELEMENTS, ALLOW_RETURN_HOLE);
|
| Add<HCheckMaps>(backing_store, isolate()->factory()->fixed_array_map());
|
| HValue* backing_store_length = Add<HLoadNamedField>(
|
| backing_store, nullptr, HObjectAccess::ForFixedArrayLength());
|
| @@ -835,10 +835,10 @@ HValue* CodeStubGraphBuilderBase::UnmappedCase(HValue* elements, HValue* key,
|
| in_unmapped_range.Then();
|
| {
|
| if (value == NULL) {
|
| - result = Add<HLoadKeyed>(backing_store, key, nullptr, FAST_HOLEY_ELEMENTS,
|
| - NEVER_RETURN_HOLE);
|
| + result = Add<HLoadKeyed>(backing_store, key, nullptr, nullptr,
|
| + FAST_HOLEY_ELEMENTS, NEVER_RETURN_HOLE);
|
| } else {
|
| - Add<HStoreKeyed>(backing_store, key, value, FAST_HOLEY_ELEMENTS);
|
| + Add<HStoreKeyed>(backing_store, key, value, nullptr, FAST_HOLEY_ELEMENTS);
|
| }
|
| }
|
| in_unmapped_range.ElseDeopt(Deoptimizer::kOutsideOfRange);
|
| @@ -895,8 +895,9 @@ HValue* CodeStubGraphBuilderBase::EmitKeyedSloppyArguments(HValue* receiver,
|
| in_range.Then();
|
| {
|
| HValue* index = AddUncasted<HAdd>(key, constant_two);
|
| - HInstruction* mapped_index = Add<HLoadKeyed>(
|
| - elements, index, nullptr, FAST_HOLEY_ELEMENTS, ALLOW_RETURN_HOLE);
|
| + HInstruction* mapped_index =
|
| + Add<HLoadKeyed>(elements, index, nullptr, nullptr, FAST_HOLEY_ELEMENTS,
|
| + ALLOW_RETURN_HOLE);
|
|
|
| IfBuilder is_valid(this);
|
| is_valid.IfNot<HCompareObjectEqAndBranch>(mapped_index,
|
| @@ -907,15 +908,17 @@ HValue* CodeStubGraphBuilderBase::EmitKeyedSloppyArguments(HValue* receiver,
|
| // mapped_index is not the hole that it is indeed, a smi. An unnecessary
|
| // smi check is being emitted.
|
| HValue* the_context = Add<HLoadKeyed>(elements, graph()->GetConstant0(),
|
| - nullptr, FAST_ELEMENTS);
|
| + nullptr, nullptr, FAST_ELEMENTS);
|
| STATIC_ASSERT(Context::kHeaderSize == FixedArray::kHeaderSize);
|
| if (is_load) {
|
| - HValue* result = Add<HLoadKeyed>(the_context, mapped_index, nullptr,
|
| - FAST_ELEMENTS, ALLOW_RETURN_HOLE);
|
| + HValue* result =
|
| + Add<HLoadKeyed>(the_context, mapped_index, nullptr, nullptr,
|
| + FAST_ELEMENTS, ALLOW_RETURN_HOLE);
|
| environment()->Push(result);
|
| } else {
|
| DCHECK(value != NULL);
|
| - Add<HStoreKeyed>(the_context, mapped_index, value, FAST_ELEMENTS);
|
| + Add<HStoreKeyed>(the_context, mapped_index, value, nullptr,
|
| + FAST_ELEMENTS);
|
| environment()->Push(value);
|
| }
|
| }
|
| @@ -1274,7 +1277,7 @@ HValue* CodeStubGraphBuilderBase::BuildArrayNArgumentsConstructor(
|
| HInstruction* argument = Add<HAccessArgumentsAt>(
|
| argument_elements, checked_length, key);
|
|
|
| - Add<HStoreKeyed>(elements, key, argument, kind);
|
| + Add<HStoreKeyed>(elements, key, argument, nullptr, kind);
|
| builder.EndBody();
|
| return new_object;
|
| }
|
| @@ -1905,8 +1908,8 @@ HInstruction* CodeStubGraphBuilderBase::LoadFromOptimizedCodeMap(
|
| HValue* field_offset_value = Add<HConstant>(field_offset);
|
| field_slot = AddUncasted<HAdd>(iterator, field_offset_value);
|
| }
|
| - HInstruction* field_entry =
|
| - Add<HLoadKeyed>(optimized_map, field_slot, nullptr, FAST_ELEMENTS);
|
| + HInstruction* field_entry = Add<HLoadKeyed>(optimized_map, field_slot,
|
| + nullptr, nullptr, FAST_ELEMENTS);
|
| return field_entry;
|
| }
|
|
|
| @@ -2326,13 +2329,13 @@ HValue* CodeStubGraphBuilder<KeyedLoadGenericStub>::BuildCodeStub() {
|
| Add<HConstant>(probe_base + KeyedLookupCache::kKeyIndex));
|
| key_index->ClearFlag(HValue::kCanOverflow);
|
| HValue* map_to_check =
|
| - Add<HLoadKeyed>(cache_keys, map_index, nullptr, FAST_ELEMENTS,
|
| - NEVER_RETURN_HOLE, 0);
|
| + Add<HLoadKeyed>(cache_keys, map_index, nullptr, nullptr,
|
| + FAST_ELEMENTS, NEVER_RETURN_HOLE, 0);
|
| lookup_if->If<HCompareObjectEqAndBranch>(map_to_check, map);
|
| lookup_if->And();
|
| HValue* key_to_check =
|
| - Add<HLoadKeyed>(cache_keys, key_index, nullptr, FAST_ELEMENTS,
|
| - NEVER_RETURN_HOLE, 0);
|
| + Add<HLoadKeyed>(cache_keys, key_index, nullptr, nullptr,
|
| + FAST_ELEMENTS, NEVER_RETURN_HOLE, 0);
|
| lookup_if->If<HCompareObjectEqAndBranch>(key_to_check, key);
|
| lookup_if->Then();
|
| {
|
| @@ -2343,7 +2346,7 @@ HValue* CodeStubGraphBuilder<KeyedLoadGenericStub>::BuildCodeStub() {
|
| HValue* index = AddUncasted<HAdd>(hash, Add<HConstant>(probe));
|
| index->ClearFlag(HValue::kCanOverflow);
|
| HValue* property_index =
|
| - Add<HLoadKeyed>(cache_field_offsets, index, nullptr,
|
| + Add<HLoadKeyed>(cache_field_offsets, index, nullptr, cache_keys,
|
| INT32_ELEMENTS, NEVER_RETURN_HOLE, 0);
|
| Push(property_index);
|
| }
|
|
|