Lines Matching full:masm
43 #define __ ACCESS_MASM(masm)
45 void ToNumberStub::Generate(MacroAssembler* masm) {
53 Factory* factory = masm->isolate()->factory();
66 void FastNewClosureStub::Generate(MacroAssembler* masm) {
88 Factory* factory = masm->isolate()->factory();
121 void FastNewContextStub::Generate(MacroAssembler* masm) {
132 Factory* factory = masm->isolate()->factory();
164 void FastNewBlockContextStub::Generate(MacroAssembler* masm) {
183 Factory* factory = masm->isolate()->factory();
236 MacroAssembler* masm,
297 void FastCloneShallowArrayStub::Generate(MacroAssembler* masm) {
313 Factory* factory = masm->isolate()->factory();
325 GenerateFastCloneShallowArrayCommon(masm, 0,
332 GenerateFastCloneShallowArrayCommon(masm, length_,
362 GenerateFastCloneShallowArrayCommon(masm, length_, mode, &slow_case);
371 void FastCloneShallowObjectStub::Generate(MacroAssembler* masm) {
389 Factory* factory = masm->isolate()->factory();
419 void ToBooleanStub::Generate(MacroAssembler* masm) {
423 Factory* factory = masm->isolate()->factory();
432 CheckOddball(masm, UNDEFINED, Heap::kUndefinedValueRootIndex, false);
435 CheckOddball(masm, BOOLEAN, Heap::kFalseValueRootIndex, false);
436 CheckOddball(masm, BOOLEAN, Heap::kTrueValueRootIndex, true);
439 CheckOddball(masm, NULL_TYPE, Heap::kNullValueRootIndex, false);
515 GenerateTypeTransition(masm);
519 void StoreBufferOverflowStub::Generate(MacroAssembler* masm) {
534 AllowExternalCallThatCantCauseGC scope(masm);
539 ExternalReference::store_buffer_overflow_function(masm->isolate()),
554 void ToBooleanStub::CheckOddball(MacroAssembler* masm,
578 void ToBooleanStub::GenerateTypeTransition(MacroAssembler* masm) {
586 ExternalReference(IC_Utility(IC::kToBoolean_Patch), masm->isolate()),
603 static void LoadFloatOperand(MacroAssembler* masm, Register number);
609 static void LoadFloatOperands(MacroAssembler* masm,
615 static void LoadFloatSmis(MacroAssembler* masm, Register scratch);
620 static void CheckFloatOperands(MacroAssembler* masm,
626 static void CheckFloatOperandsAreInt32(MacroAssembler* masm,
631 static void LoadUnknownsAsIntegers(MacroAssembler* masm,
639 static void CheckLoadedIntegersWereInt32(MacroAssembler* masm,
646 static void LoadSSE2Operands(MacroAssembler* masm);
652 static void LoadSSE2Operands(MacroAssembler* masm, Label* not_numbers);
656 static void LoadSSE2Smis(MacroAssembler* masm, Register scratch);
660 static void CheckSSE2OperandsAreInt32(MacroAssembler* masm,
670 static void IntegerConvert(MacroAssembler* masm,
816 void UnaryOpStub::Generate(MacroAssembler* masm) {
819 GenerateTypeTransition(masm);
822 GenerateSmiStub(masm);
825 GenerateHeapNumberStub(masm);
828 GenerateGenericStub(masm);
834 void UnaryOpStub::GenerateTypeTransition(MacroAssembler* masm) {
847 ExternalReference(IC_Utility(IC::kUnaryOp_Patch), masm->isolate()), 4, 1);
852 void UnaryOpStub::GenerateSmiStub(MacroAssembler* masm) {
855 GenerateSmiStubSub(masm);
858 GenerateSmiStubBitNot(masm);
866 masm) {
868 GenerateSmiCodeSub(masm, &non_smi, &undo, &slow,
871 GenerateSmiCodeUndo(masm);
874 GenerateTypeTransition(masm);
878 void UnaryOpStub::GenerateSmiStubBitNot(MacroAssembler* masm) {
880 GenerateSmiCodeBitNot(masm, &non_smi);
882 GenerateTypeTransition(masm);
886 void UnaryOpStub::GenerateSmiCodeSub(MacroAssembler* masm,
910 MacroAssembler* masm,
923 void UnaryOpStub::GenerateSmiCodeUndo(MacroAssembler* masm) {
929 void UnaryOpStub::GenerateHeapNumberStub(MacroAssembler* masm) {
932 GenerateHeapNumberStubSub(masm);
935 GenerateHeapNumberStubBitNot(masm);
943 void UnaryOpStub::GenerateHeapNumberStubSub(MacroAssembler* masm) {
945 GenerateSmiCodeSub(masm, &non_smi, &undo, &call_builtin, Label::kNear);
947 GenerateHeapNumberCodeSub(masm, &slow);
949 GenerateSmiCodeUndo(masm);
951 GenerateTypeTransition(masm);
953 GenerateGenericCodeFallback(masm);
958 MacroAssembler* masm) {
960 GenerateSmiCodeBitNot(masm, &non_smi, Label::kNear);
962 GenerateHeapNumberCodeBitNot(masm, &slow);
964 GenerateTypeTransition(masm);
968 void UnaryOpStub::GenerateHeapNumberCodeSub(MacroAssembler* masm,
971 __ cmp(edx, masm->isolate()->factory()->heap_number_map());
987 FrameScope scope(masm, StackFrame::INTERNAL);
1005 void UnaryOpStub::GenerateHeapNumberCodeBitNot(MacroAssembler* masm,
1008 __ cmp(edx, masm->isolate()->factory()->heap_number_map());
1012 IntegerConvert(masm, eax, CpuFeatures::IsSupported(SSE3), slow);
1035 FrameScope scope(masm, StackFrame::INTERNAL);
1046 IntegerConvert(masm, edx, CpuFeatures::IsSupported(SSE3), slow);
1066 void UnaryOpStub::GenerateGenericStub(MacroAssembler* masm) {
1069 GenerateGenericStubSub(masm);
1072 GenerateGenericStubBitNot(masm);
1080 void UnaryOpStub::GenerateGenericStubSub(MacroAssembler* masm) {
1082 GenerateSmiCodeSub(masm, &non_smi, &undo, &slow, Label::kNear);
1084 GenerateHeapNumberCodeSub(masm, &slow);
1086 GenerateSmiCodeUndo(masm);
1088 GenerateGenericCodeFallback(masm);
1092 void UnaryOpStub::GenerateGenericStubBitNot(MacroAssembler* masm) {
1094 GenerateSmiCodeBitNot(masm, &non_smi, Label::kNear);
1096 GenerateHeapNumberCodeBitNot(masm, &slow);
1098 GenerateGenericCodeFallback(masm);
1102 void UnaryOpStub::GenerateGenericCodeFallback(MacroAssembler* masm) {
1120 void BinaryOpStub::GenerateTypeTransition(MacroAssembler* masm) {
1137 masm->isolate()),
1145 void BinaryOpStub::GenerateTypeTransitionWithSavedArgs(MacroAssembler* masm) {
1160 masm->isolate()),
1166 void BinaryOpStub::Generate(MacroAssembler* masm) {
1169 AllowStubCallsScope allow_stub_calls(masm, true);
1173 GenerateTypeTransition(masm);
1176 GenerateSmiStub(masm);
1179 GenerateInt32Stub(masm);
1182 GenerateHeapNumberStub(masm);
1185 GenerateOddballStub(masm);
1188 GenerateBothStringStub(masm);
1191 GenerateStringStub(masm);
1194 GenerateGeneric(masm);
1219 MacroAssembler* masm,
1224 Comment load_comment(masm, "-- Load arguments");
1236 Comment smi_check_comment(masm, "-- Smi check arguments");
1282 Comment perform_smi(masm, "-- Perform smi operation");
1475 Comment perform_float(masm, "-- Perform float operation on smis");
1508 Comment perform_float(masm, "-- Perform float operation on smis");
1536 FloatingPointHelper::LoadSSE2Smis(masm, ebx);
1546 FloatingPointHelper::LoadFloatSmis(masm, ebx);
1568 Comment done_comment(masm, "-- Enter non-smi code");
1593 void BinaryOpStub::GenerateSmiStub(MacroAssembler* masm) {
1609 GenerateRegisterArgsPush(masm);
1617 GenerateSmiCode(masm, &call_runtime, NO_HEAPNUMBER_RESULTS);
1619 GenerateSmiCode(masm, &call_runtime, ALLOW_HEAPNUMBER_RESULTS);
1627 GenerateTypeTransition(masm);
1636 GenerateTypeTransitionWithSavedArgs(masm);
1644 void BinaryOpStub::GenerateStringStub(MacroAssembler* masm) {
1649 GenerateAddStrings(masm);
1650 GenerateTypeTransition(masm);
1654 void BinaryOpStub::GenerateBothStringStub(MacroAssembler* masm) {
1676 GenerateRegisterArgsPush(masm);
1680 GenerateTypeTransition(masm);
1684 void BinaryOpStub::GenerateInt32Stub(MacroAssembler* masm) {
1698 FloatingPointHelper::LoadSSE2Operands(masm, ¬_floats);
1699 FloatingPointHelper::CheckSSE2OperandsAreInt32(masm, ¬_int32, ecx);
1715 GenerateHeapResultAllocation(masm, &call_runtime);
1719 FloatingPointHelper::CheckFloatOperands(masm, ¬_floats, ebx);
1721 masm,
1724 FloatingPointHelper::CheckFloatOperandsAreInt32(masm, ¬_int32);
1733 GenerateHeapResultAllocation(masm, &after_alloc_failure);
1743 GenerateTypeTransition(masm);
1757 GenerateRegisterArgsPush(masm);
1763 FloatingPointHelper::LoadSSE2Operands(masm, ¬_floats);
1764 FloatingPointHelper::CheckSSE2OperandsAreInt32(masm, ¬_int32, ecx);
1766 FloatingPointHelper::LoadUnknownsAsIntegers(masm,
1769 FloatingPointHelper::CheckLoadedIntegersWereInt32(masm, use_sse3_,
1830 GenerateTypeTransitionWithSavedArgs(masm);
1842 GenerateRegisterArgsPush(masm);
1846 GenerateRegisterArgsPush(masm);
1850 GenerateRegisterArgsPush(masm);
1854 GenerateRegisterArgsPush(masm);
1858 GenerateRegisterArgsPush(masm);
1885 void BinaryOpStub::GenerateOddballStub(MacroAssembler* masm) {
1889 GenerateAddStrings(masm);
1892 Factory* factory = masm->isolate()->factory();
1914 GenerateHeapNumberStub(masm);
1918 void BinaryOpStub::GenerateHeapNumberStub(MacroAssembler* masm) {
1930 FloatingPointHelper::LoadSSE2Operands(masm, ¬_floats);
1939 GenerateHeapResultAllocation(masm, &call_runtime);
1943 FloatingPointHelper::CheckFloatOperands(masm, ¬_floats, ebx);
1945 masm,
1956 GenerateHeapResultAllocation(masm, &after_alloc_failure);
1965 GenerateTypeTransition(masm);
1979 GenerateRegisterArgsPush(masm);
1982 FloatingPointHelper::LoadUnknownsAsIntegers(masm,
2043 GenerateTypeTransitionWithSavedArgs(masm);
2055 GenerateRegisterArgsPush(masm);
2059 GenerateRegisterArgsPush(masm);
2063 GenerateRegisterArgsPush(masm);
2067 GenerateRegisterArgsPush(masm);
2071 GenerateRegisterArgsPush(masm);
2098 void BinaryOpStub::GenerateGeneric(MacroAssembler* masm) {
2101 Counters* counters = masm->isolate()->counters();
2117 GenerateRegisterArgsPush(masm);
2123 GenerateSmiCode(masm, &call_runtime, ALLOW_HEAPNUMBER_RESULTS);
2134 FloatingPointHelper::LoadSSE2Operands(masm, ¬_floats);
2143 GenerateHeapResultAllocation(masm, &call_runtime);
2147 FloatingPointHelper::CheckFloatOperands(masm, ¬_floats, ebx);
2149 masm,
2160 GenerateHeapResultAllocation(masm, &after_alloc_failure);
2181 FloatingPointHelper::LoadUnknownsAsIntegers(masm,
2250 GenerateAddStrings(masm);
2251 GenerateRegisterArgsPush(masm);
2256 GenerateRegisterArgsPush(masm);
2260 GenerateRegisterArgsPush(masm);
2264 GenerateRegisterArgsPush(masm);
2294 void BinaryOpStub::GenerateAddStrings(MacroAssembler* masm) {
2308 GenerateRegisterArgsPush(masm);
2318 GenerateRegisterArgsPush(masm);
2327 MacroAssembler* masm,
2366 void BinaryOpStub::GenerateRegisterArgsPush(MacroAssembler* masm) {
2374 void TranscendentalCacheStub::Generate(MacroAssembler* masm) {
2412 Factory* factory = masm->isolate()->factory();
2455 ExternalReference::transcendental_cache_array_address(masm->isolate());
2458 type_ * sizeof(masm->isolate()->transcendental_cache()->caches_[0]);
2488 Counters* counters = masm->isolate()->counters();
2513 GenerateOperation(masm, type_);
2529 GenerateOperation(masm, type_);
2536 FrameScope scope(masm, StackFrame::INTERNAL);
2550 ExternalReference(RuntimeFunction(), masm->isolate());
2558 FrameScope scope(masm, StackFrame::INTERNAL);
2582 MacroAssembler* masm, TranscendentalCache::Type type) {
2681 void FloatingPointHelper::LoadUnknownsAsIntegers(MacroAssembler* masm,
2697 Factory* factory = masm->isolate()->factory();
2709 IntegerConvert(masm, edx, use_sse3, conversion_failure);
2735 IntegerConvert(masm, eax, use_sse3, conversion_failure);
2741 void FloatingPointHelper::CheckLoadedIntegersWereInt32(MacroAssembler* masm,
2748 void FloatingPointHelper::LoadFloatOperand(MacroAssembler* masm,
2766 void FloatingPointHelper::LoadSSE2Operands(MacroAssembler* masm) {
2793 void FloatingPointHelper::LoadSSE2Operands(MacroAssembler* masm,
2798 Factory* factory = masm->isolate()->factory();
2824 void FloatingPointHelper::LoadSSE2Smis(MacroAssembler* masm,
2839 void FloatingPointHelper::CheckSSE2OperandsAreInt32(MacroAssembler* masm,
2855 void FloatingPointHelper::LoadFloatOperands(MacroAssembler* masm,
2894 void FloatingPointHelper::LoadFloatSmis(MacroAssembler* masm,
2912 void FloatingPointHelper::CheckFloatOperands(MacroAssembler* masm,
2920 Factory* factory = masm->isolate()->factory();
2935 void FloatingPointHelper::CheckFloatOperandsAreInt32(MacroAssembler* masm,
2941 void MathPowStub::Generate(MacroAssembler* masm) {
2943 Factory* factory = masm->isolate()->factory();
3165 Counters* counters = masm->isolate()->counters();
3181 AllowExternalCallThatCantCauseGC scope(masm);
3186 ExternalReference::power_double_double_function(masm->isolate()), 4);
3202 void ArgumentsAccessStub::GenerateReadElement(MacroAssembler* masm) {
3261 void ArgumentsAccessStub::GenerateNewNonStrictSlow(MacroAssembler* masm) {
3286 void ArgumentsAccessStub::GenerateNewNonStrictFast(MacroAssembler* masm) {
3509 void ArgumentsAccessStub::GenerateNewStrict(MacroAssembler* masm) {
3606 void RegExpExecStub::Generate(MacroAssembler* masm) {
3631 masm->isolate());
3633 ExternalReference::address_of_regexp_stack_memory_size(masm->isolate());
3676 Condition is_string = masm->IsObjectStringType(eax, ebx, ebx);
3701 Factory* factory = masm->isolate()->factory();
3813 Counters* counters = masm->isolate()->counters();
3835 masm->isolate())));
3906 masm->isolate());
3907 __ mov(edx, Immediate(masm->isolate()->factory()->the_hole_value()));
3972 ExternalReference::address_of_static_offsets_vector(masm->isolate());
4028 void RegExpConstructResultStub::Generate(MacroAssembler* masm) {
4057 Factory* factory = masm->isolate()->factory();
4109 void NumberToStringStub::GenerateLookupNumberStringCache(MacroAssembler* masm,
4123 ExternalReference::roots_array_start(masm->isolate());
4151 masm->isolate()->factory()->heap_number_map());
4200 Counters* counters = masm->isolate()->counters();
4205 void NumberToStringStub::Generate(MacroAssembler* masm) {
4211 GenerateLookupNumberStringCache(masm, ebx, eax, ecx, edx, false, &runtime);
4227 void CompareStub::Generate(MacroAssembler* masm) {
4266 __ cmp(edx, masm->isolate()->factory()->undefined_value());
4282 Immediate(masm->isolate()->factory()->heap_number_map()));
4359 Immediate(masm->isolate()->factory()->heap_number_map()));
4408 FloatingPointHelper::LoadSSE2Operands(masm, &non_number_comparison);
4422 masm, &non_number_comparison, ebx);
4423 FloatingPointHelper::LoadFloatOperand(masm, eax);
4424 FloatingPointHelper::LoadFloatOperand(masm, edx);
4465 BranchIfNonSymbol(masm, &check_for_strings, eax, ecx);
4466 BranchIfNonSymbol(masm, &check_for_strings, edx, ecx);
4481 StringCompareStub::GenerateFlatAsciiStringEquals(masm,
4487 StringCompareStub::GenerateCompareFlatAsciiStrings(masm,
4559 void CompareStub::BranchIfNonSymbol(MacroAssembler* masm,
4572 void StackCheckStub::Generate(MacroAssembler* masm) {
4577 void InterruptStub::Generate(MacroAssembler* masm) {
4582 static void GenerateRecordCallTarget(MacroAssembler* masm) {
4588 Isolate* isolate = masm->isolate();
4620 void CallFunctionStub::Generate(MacroAssembler* masm) {
4623 Isolate* isolate = masm->isolate();
4651 GenerateRecordCallTarget(masm);
4711 void CallConstructStub::Generate(MacroAssembler* masm) {
4724 GenerateRecordCallTarget(masm);
4749 masm->isolate()->builtins()->ArgumentsAdaptorTrampoline();
4789 void CEntryStub::GenerateCore(MacroAssembler* masm,
4820 ExternalReference::heap_always_allocate_scope_depth(masm->isolate());
4841 __ cmp(eax, masm->isolate()->factory()->the_hole_value());
4856 Isolate::kPendingExceptionAddress, masm->isolate());
4862 __ mov(edx, Immediate(masm->isolate()->factory()->the_hole_value()));
4891 __ mov(edx, Immediate(masm->isolate()->factory()->the_hole_value()));
4896 __ cmp(eax, masm->isolate()->factory()->termination_exception());
4907 void CEntryStub::Generate(MacroAssembler* masm) {
4934 GenerateCore(masm,
4942 GenerateCore(masm,
4952 GenerateCore(masm,
4961 Isolate* isolate = masm->isolate();
4981 void JSEntryStub::GenerateBody(MacroAssembler* masm, bool is_construct) {
4999 ExternalReference c_entry_fp(Isolate::kCEntryFPAddress, masm->isolate());
5004 masm->isolate());
5023 masm->isolate());
5034 __ mov(edx, Immediate(masm->isolate()->factory()->the_hole_value()));
5046 masm->isolate());
5050 masm->isolate());
5071 masm->isolate())));
5101 void InstanceofStub::Generate(MacroAssembler* masm) {
5121 ExternalReference::roots_array_start(masm->isolate());
5198 Factory* factory = masm->isolate()->factory();
5271 Condition is_string = masm->IsObjectStringType(object, scratch, scratch);
5291 FrameScope scope(masm, StackFrame::INTERNAL);
5356 void StringCharCodeAtGenerator::GenerateFast(MacroAssembler* masm) {
5379 Factory* factory = masm->isolate()->factory();
5381 masm, factory, object_, index_, result_, &call_runtime_);
5389 MacroAssembler* masm,
5397 masm->isolate()->factory()->heap_number_map(),
5400 call_helper.BeforeCall(masm);
5419 call_helper.AfterCall(masm);
5430 call_helper.BeforeCall(masm);
5438 call_helper.AfterCall(masm);
5448 void StringCharFromCodeGenerator::GenerateFast(MacroAssembler* masm) {
5458 Factory* factory = masm->isolate()->factory();
5474 MacroAssembler* masm,
5479 call_helper.BeforeCall(masm);
5485 call_helper.AfterCall(masm);
5495 void StringCharAtGenerator::GenerateFast(MacroAssembler* masm) {
5496 char_code_at_generator_.GenerateFast(masm);
5497 char_from_code_generator_.GenerateFast(masm);
5502 MacroAssembler* masm,
5504 char_code_at_generator_.GenerateSlow(masm, call_helper);
5505 char_from_code_generator_.GenerateSlow(masm, call_helper);
5509 void StringAddStub::Generate(MacroAssembler* masm) {
5532 GenerateConvertArgument(masm, 2 * kPointerSize, eax, ebx, ecx, edi,
5537 GenerateConvertArgument(masm, 1 * kPointerSize, edx, ebx, ecx, edi,
5553 Counters* counters = masm->isolate()->counters();
5594 masm, ebx, ecx, eax, edx, edi,
5744 StringHelper::GenerateCopyCharacters(masm, ecx, edx, edi, ebx, true);
5755 StringHelper::GenerateCopyCharacters(masm, ecx, edx, edi, ebx, true);
5781 StringHelper::GenerateCopyCharacters(masm, ecx, edx, edi, ebx, false);
5792 StringHelper::GenerateCopyCharacters(masm, ecx, edx, edi, ebx, false);
5810 void StringAddStub::GenerateConvertArgument(MacroAssembler* masm,
5827 NumberToStringStub::GenerateLookupNumberStringCache(masm,
5853 masm,
5879 void StringHelper::GenerateCopyCharactersREP(MacroAssembler* masm,
5939 void StringHelper::GenerateTwoCharacterSymbolTableProbe(MacroAssembler* masm,
5965 GenerateHashInit(masm, hash, c1, scratch);
5966 GenerateHashAddCharacter(masm, hash, c2, scratch);
5967 GenerateHashGetHash(masm, hash, scratch);
5980 ExternalReference::roots_array_start(masm->isolate());
6020 Factory* factory = masm->isolate()->factory();
6065 void StringHelper::GenerateHashInit(MacroAssembler* masm,
6072 ExternalReference::roots_array_start(masm->isolate());
6083 int32_t seed = masm->isolate()->heap()->HashSeed();
6095 void StringHelper::GenerateHashAddCharacter(MacroAssembler* masm,
6112 void StringHelper::GenerateHashGetHash(MacroAssembler* masm,
6138 void SubStringStub::Generate(MacroAssembler* masm) {
6151 Condition is_string = masm->IsObjectStringType(eax, ebx, ebx);
6166 Counters* counters = masm->isolate()->counters();
6184 Factory* factory = masm->isolate()->factory();
6299 StringHelper::GenerateCopyCharactersREP(masm, edi, esi, ecx, ebx, true);
6329 StringHelper::GenerateCopyCharactersREP(masm, edi, esi, ecx, ebx, false);
6344 void StringCompareStub::GenerateFlatAsciiStringEquals(MacroAssembler* masm,
6371 GenerateAsciiCharsCompareLoop(masm, left, right, length, scratch2,
6380 void StringCompareStub::GenerateCompareFlatAsciiStrings(MacroAssembler* masm,
6386 Counters* counters = masm->isolate()->counters();
6411 GenerateAsciiCharsCompareLoop(masm, left, right, min_length, scratch2,
6441 MacroAssembler* masm,
6470 void StringCompareStub::Generate(MacroAssembler* masm) {
6487 __ IncrementCounter(masm->isolate()->counters()->string_compare_native(), 1);
6500 GenerateCompareFlatAsciiStrings(masm, edx, eax, ecx, ebx, edi);
6509 void ICCompareStub::GenerateSmis(MacroAssembler* masm) {
6531 GenerateMiss(masm);
6535 void ICCompareStub::GenerateHeapNumbers(MacroAssembler* masm) {
6583 __ cmp(eax, Immediate(masm->isolate()->factory()->undefined_value()));
6592 __ cmp(edx, Immediate(masm->isolate()->factory()->undefined_value()));
6597 GenerateMiss(masm);
6601 void ICCompareStub::GenerateSymbols(MacroAssembler* masm) {
6642 GenerateMiss(masm);
6646 void ICCompareStub::GenerateStrings(MacroAssembler* masm) {
6712 masm, left, right, tmp1, tmp2);
6715 masm, left, right, tmp1, tmp2, tmp3);
6731 GenerateMiss(masm);
6735 void ICCompareStub::GenerateObjects(MacroAssembler* masm) {
6752 GenerateMiss(masm);
6756 void ICCompareStub::GenerateKnownObjects(MacroAssembler* masm) {
6773 GenerateMiss(masm);
6777 void ICCompareStub::GenerateMiss(MacroAssembler* masm) {
6781 masm->isolate());
6782 FrameScope scope(masm, StackFrame::INTERNAL);
6805 void StringDictionaryLookupStub::GenerateNegativeLookup(MacroAssembler* masm,
6836 __ cmp(entity_name, masm->isolate()->factory()->undefined_value());
6845 __ cmp(entity_name, masm->isolate()->factory()->the_hole_value());
6873 void StringDictionaryLookupStub::GeneratePositiveLookup(MacroAssembler* masm,
6932 void StringDictionaryLookupStub::Generate(MacroAssembler* masm) {
6979 __ cmp(scratch, masm->isolate()->factory()->undefined_value());
7112 void RecordWriteStub::Generate(MacroAssembler* masm) {
7134 GenerateIncremental(masm, INCREMENTAL);
7137 GenerateIncremental(masm, INCREMENTAL_COMPACTION);
7141 masm->set_byte_at(0, kTwoByteNopInstruction);
7142 masm->set_byte_at(2, kFiveByteNopInstruction);
7146 void RecordWriteStub::GenerateIncremental(MacroAssembler* masm, Mode mode) {
7147 regs_.Save(masm);
7166 masm,
7169 InformIncrementalMarker(masm, mode);
7170 regs_.Restore(masm);
7181 masm,
7184 InformIncrementalMarker(masm, mode);
7185 regs_.Restore(masm);
7190 void RecordWriteStub::InformIncrementalMarker(MacroAssembler* masm, Mode mode) {
7191 regs_.SaveCallerSaveRegisters(masm, save_fp_regs_mode_);
7205 AllowExternalCallThatCantCauseGC scope(masm);
7209 masm->isolate()),
7215 masm->isolate()),
7218 regs_.RestoreCallerSaveRegisters(masm, save_fp_regs_mode_);
7223 MacroAssembler* masm,
7236 regs_.Restore(masm);
7284 regs_.Restore(masm);
7304 void StoreArrayLiteralElementStub::Generate(MacroAssembler* masm) {