Home | History | Annotate | Download | only in src

Lines Matching refs:Add

126       param = Add<HParameter>(i - register_param_count,
129 param = Add<HParameter>(i, HParameter::REGISTER_PARAMETER, r);
143 Add<HConstant>(param_count - register_param_count - 1);
148 context_ = Add<HContext>();
152 Add<HSimulate>(BailoutId::StubEntry());
171 stack_pop_count = Add<HConstant>(count);
341 Add<HAccessArgumentsAt>(argument_elements, argc, key);
355 HValue* length = Add<HLoadNamedField>(object, nullptr,
360 HValue* elements = Add<HLoadNamedField>(object, nullptr,
369 HValue* argument = Add<HAccessArgumentsAt>(argument_elements, argc, key);
382 HInstruction* argument_elements = Add<HArgumentsElements>(false, false);
383 HInstruction* object = Add<HAccessArgumentsAt>(argument_elements, argc,
386 HValue* map = Add<HLoadNamedField>(object, nullptr, HObjectAccess::ForMap());
387 Add<HCheckInstanceType>(object, HCheckInstanceType::IS_JS_ARRAY);
393 Add<HLoadNamedField>(map, nullptr, HObjectAccess::ForMapBitField2());
395 Add<HConstant>(static_cast<int>(Map::IsPrototypeMapBits::kMask) |
400 bits, Add<HConstant>(1 << Map::kIsExtensible), Token::NE);
409 Add<HLoadNamedField>(map, nullptr, HObjectAccess::ForMapBitField3());
410 HValue* mask = Add<HConstant>(static_cast<int>(Map::DictionaryMap::kMask));
423 Add<HLoadNamedField>(map, nullptr, HObjectAccess::ForMapDescriptors());
424 HValue* details = Add<HLoadKeyed>(
425 descriptors, Add<HConstant>(DescriptorArray::ToDetailsIndex(0)),
428 Add<HConstant>(READ_ONLY << PropertyDetails::AttributesField::kShift);
436 HValue* null = Add<HLoadRoot>(Heap::kNullValueRootIndex);
437 HValue* empty = Add<HLoadRoot>(Heap::kEmptyFixedArrayRootIndex);
443 HValue* prototype = Add<HLoadNamedField>(parent_map, nullptr,
453 Add<HLoadNamedField>(prototype, nullptr, HObjectAccess::ForMap());
454 HValue* instance_type = Add<HLoadNamedField>(
458 instance_type, Add<HConstant>(LAST_CUSTOM_ELEMENTS_RECEIVER),
463 HValue* elements = Add<HLoadNamedField>(
475 Add<HLoadNamedField>(map, nullptr, HObjectAccess::ForMapBitField2());
488 kind, Add<HConstant>(FAST_HOLEY_SMI_ELEMENTS), Token::LTE);
499 kind, Add<HConstant>(FAST_HOLEY_ELEMENTS), Token::LTE);
510 kind, Add<HConstant>(FAST_HOLEY_DOUBLE_ELEMENTS), Token::LTE);
533 HInstruction* argument_elements = Add<HArgumentsElements>(false, false);
534 HInstruction* object = Add<HAccessArgumentsAt>(argument_elements, argc,
537 HValue* map = Add<HLoadNamedField>(object, nullptr, HObjectAccess::ForMap());
538 Add<HCheckInstanceType>(object, HCheckInstanceType::IS_JS_FUNCTION);
544 Add<HLoadNamedField>(map, nullptr, HObjectAccess::ForMapBitField3());
545 HValue* mask = Add<HConstant>(static_cast<int>(Map::DictionaryMap::kMask));
558 Add<HLoadNamedField>(map, nullptr, HObjectAccess::ForMapDescriptors());
560 HValue* descriptors_length = Add<HLoadNamedField>(
570 HValue* maybe_length = Add<HLoadKeyed>(
571 descriptors, Add<HConstant>(DescriptorArray::ToKeyIndex(length_index)),
575 Add<HCheckValue>(maybe_length, length_string, false);
577 HValue* maybe_length_accessor = Add<HLoadKeyed>(
579 Add<HConstant>(DescriptorArray::ToValueIndex(length_index)), nullptr,
582 Add<HCheckMaps>(maybe_length_accessor,
587 HValue* maybe_name = Add<HLoadKeyed>(
588 descriptors, Add<HConstant>(DescriptorArray::ToKeyIndex(name_index)),
592 Add<HCheckValue>(maybe_name, name_string, false);
594 HValue* maybe_name_accessor = Add<HLoadKeyed>(
595 descriptors, Add<HConstant>(DescriptorArray::ToValueIndex(name_index)),
598 Add<HCheckMaps>(maybe_name_accessor,
606 Add<HLoadNamedField>(map, nullptr, HObjectAccess::ForMapBitField());
607 HValue* mask = Add<HConstant>(static_cast<int>(1 << Map::kIsConstructor));
615 HValue* map = Add<HLoadNamedField>(
623 HValue* map = Add<HLoadNamedField>(
636 Add<HLoadNamedField>(map, nullptr, HObjectAccess::ForPrototype());
637 HValue* expected_prototype = Add<HLoadNamedField>(
651 { environment()->Push(Add<HLoadRoot>(Heap::kEmptyFixedArrayRootIndex)); }
662 HValue* argument = Add<HAccessArgumentsAt>(argument_elements, argc, key);
678 { environment()->Push(Add<HLoadRoot>(Heap::kUndefinedValueRootIndex)); }
681 environment()->Push(Add<HAccessArgumentsAt>(argument_elements, argc,
688 HValue* size = Add<HConstant>(JSBoundFunction::kSize);
690 Add<HAllocate>(size, HType::JSObject(), NOT_TENURED,
692 Add<HStoreNamedField>(bound_function, HObjectAccess::ForMap(),
694 HValue* empty_fixed_array = Add<HLoadRoot>(Heap::kEmptyFixedArrayRootIndex);
695 Add<HStoreNamedField>(bound_function, HObjectAccess::ForPropertiesPointer(),
697 Add<HStoreNamedField>(bound_function, HObjectAccess::ForElementsPointer(),
699 Add<HStoreNamedField>(bound_function, HObjectAccess::ForBoundTargetFunction(),
702 Add<HStoreNamedField>(bound_function, HObjectAccess::ForBoundThis(),
704 Add<HStoreNamedField>(bound_function, HObjectAccess::ForBoundArguments(),
745 object = Add<HLoadNamedField>(
750 return Add<HLoadNamedField>(object, nullptr, access);
771 HValue* descriptors = Add<HLoadNamedField>(map, nullptr, descriptors_access);
774 return Add<HLoadNamedField>(descriptors, nullptr, value_access);
798 HInstruction* heap_number_size = Add<HConstant>(HeapNumber::kSize);
802 Add<HAllocate>(heap_number_size, HType::HeapObject(), NOT_TENURED,
806 Add<HStoreNamedField>(heap_number, HObjectAccess::ForHeapNumberValue(),
813 object = Add<HLoadNamedField>(object, nullptr, heap_number_access);
822 Add<HStoreNamedField>(object, access, value, INITIALIZING_STORE);
843 Add<HTrapAllocationMemento>(object);
851 elements, Add<HConstant>(isolate()->factory()->empty_fixed_array()));
863 Push(Add<HLoadNamedField>(object, nullptr,
880 Add<HStoreNamedField>(object, HObjectAccess::ForMap(), map);
906 if (state.op() == Token::ADD && (left_type->Maybe(AstType::String()) ||
909 // For the generic add stub a fast case for string addition is performance
1003 Add<HLoadNamedField>(input, inputissmi, HObjectAccess::ForMap());
1004 HValue* input_instance_type = Add<HLoadNamedField>(
1008 input_instance_type, Add<HConstant>(FIRST_NONSTRING_TYPE), Token::LT);
1021 input_instance_type, Add<HConstant>(LAST_PRIMITIVE_TYPE), Token::LTE);
1036 Push(AddUncasted<HCallWithDescriptor>(Add<HConstant>(toString.code()), 0,
1054 Add<HLoadNamedField>(native_context, nullptr,
1060 Add<HLoadNamedField>(native_context, nullptr,
1065 HValue* string_function = Add<HLoadNamedField>(
1068 HValue* string_function_initial_map = Add<HLoadNamedField>(
1073 Add<HLoadNamedField>(input_map, nullptr, HObjectAccess::ForPrototype());
1075 Add<HLoadNamedField>(input_prototype, nullptr, HObjectAccess::ForMap());
1103 Add<HLoadNamedField>(Add<HLoadNamedField>(input_prototype_map, nullptr,
1114 // TODO(bmeurer): Add support for fast ToPrimitive conversion using
1116 Add<HPushArguments>(input);
1117 Push(Add<HCallRuntime>(Runtime::FunctionForId(Runtime::kToPrimitive), 1));
1142 Add<HCheckSmi>(key);