Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: src/ia32/builtins-ia32.cc

Issue 1926023002: [turbofan] Run everything after representation selection concurrently. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #if V8_TARGET_ARCH_IA32 5 #if V8_TARGET_ARCH_IA32
6 6
7 #include "src/code-factory.h" 7 #include "src/code-factory.h"
8 #include "src/codegen.h" 8 #include "src/codegen.h"
9 #include "src/deoptimizer.h" 9 #include "src/deoptimizer.h"
10 #include "src/full-codegen/full-codegen.h" 10 #include "src/full-codegen/full-codegen.h"
(...skipping 2600 matching lines...) Expand 10 before | Expand all | Expand 10 after
2611 RelocInfo::CODE_TARGET); 2611 RelocInfo::CODE_TARGET);
2612 } 2612 }
2613 2613
2614 // Called Construct on an Object that doesn't have a [[Construct]] internal 2614 // Called Construct on an Object that doesn't have a [[Construct]] internal
2615 // method. 2615 // method.
2616 __ bind(&non_constructor); 2616 __ bind(&non_constructor);
2617 __ Jump(masm->isolate()->builtins()->ConstructedNonConstructable(), 2617 __ Jump(masm->isolate()->builtins()->ConstructedNonConstructable(),
2618 RelocInfo::CODE_TARGET); 2618 RelocInfo::CODE_TARGET);
2619 } 2619 }
2620 2620
2621 // static
2622 void Builtins::Generate_AllocateInNewSpace(MacroAssembler* masm) {
2623 // ----------- S t a t e -------------
2624 // -- edx : requested object size (tagged)
2625 // -- esi : context
2626 // -----------------------------------
2627 __ AssertSmi(edx);
2628
2629 Label runtime;
2630 __ SmiUntag(edx);
2631 __ Allocate(edx, eax, ecx, edi, &runtime, NO_ALLOCATION_FLAGS);
2632 __ Ret();
2633
2634 __ bind(&runtime);
2635 __ SmiTag(edx);
2636 __ PopReturnAddressTo(ecx);
2637 __ Push(edx);
2638 __ PushReturnAddressFrom(ecx);
2639 __ TailCallRuntime(Runtime::kAllocateInNewSpace);
2640 }
2641
2642 // static
2643 void Builtins::Generate_AllocateInOldSpace(MacroAssembler* masm) {
2644 // ----------- S t a t e -------------
2645 // -- edx : requested object size (tagged)
2646 // -- esi : context
2647 // -----------------------------------
2648 __ AssertSmi(edx);
2649
2650 Label runtime;
2651 __ SmiUntag(edx);
2652 __ Allocate(edx, eax, ecx, edi, &runtime, PRETENURE);
2653 __ Ret();
2654
2655 __ bind(&runtime);
2656 __ SmiTag(edx);
2657 __ PopReturnAddressTo(ecx);
2658 __ Push(edx);
2659 __ Push(Smi::FromInt(AllocateTargetSpace::encode(OLD_SPACE)));
2660 __ PushReturnAddressFrom(ecx);
2661 __ TailCallRuntime(Runtime::kAllocateInTargetSpace);
2662 }
2621 2663
2622 void Builtins::Generate_ArgumentsAdaptorTrampoline(MacroAssembler* masm) { 2664 void Builtins::Generate_ArgumentsAdaptorTrampoline(MacroAssembler* masm) {
2623 // ----------- S t a t e ------------- 2665 // ----------- S t a t e -------------
2624 // -- eax : actual number of arguments 2666 // -- eax : actual number of arguments
2625 // -- ebx : expected number of arguments 2667 // -- ebx : expected number of arguments
2626 // -- edx : new target (passed through to callee) 2668 // -- edx : new target (passed through to callee)
2627 // -- edi : function (passed through to callee) 2669 // -- edi : function (passed through to callee)
2628 // ----------------------------------- 2670 // -----------------------------------
2629 2671
2630 Label invoke, dont_adapt_arguments, stack_overflow; 2672 Label invoke, dont_adapt_arguments, stack_overflow;
(...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after
2870 // And "return" to the OSR entry point of the function. 2912 // And "return" to the OSR entry point of the function.
2871 __ ret(0); 2913 __ ret(0);
2872 } 2914 }
2873 2915
2874 2916
2875 #undef __ 2917 #undef __
2876 } // namespace internal 2918 } // namespace internal
2877 } // namespace v8 2919 } // namespace v8
2878 2920
2879 #endif // V8_TARGET_ARCH_IA32 2921 #endif // V8_TARGET_ARCH_IA32
OLDNEW
« src/handles.h ('K') | « src/handles.h ('k') | src/ia32/interface-descriptors-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698