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

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

Issue 2423323002: [builtins] Remove the unused AllocationSite slot from ConstructFrame. (Closed)
Patch Set: Created 4 years, 2 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
« no previous file with comments | « src/builtins/mips/builtins-mips.cc ('k') | src/builtins/x64/builtins-x64.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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_MIPS64 5 #if V8_TARGET_ARCH_MIPS64
6 6
7 #include "src/codegen.h" 7 #include "src/codegen.h"
8 #include "src/debug/debug.h" 8 #include "src/debug/debug.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 528 matching lines...) Expand 10 before | Expand all | Expand 10 after
539 Label ok; 539 Label ok;
540 __ LoadRoot(a4, Heap::kStackLimitRootIndex); 540 __ LoadRoot(a4, Heap::kStackLimitRootIndex);
541 __ Branch(&ok, hs, sp, Operand(a4)); 541 __ Branch(&ok, hs, sp, Operand(a4));
542 542
543 GenerateTailCallToReturnedCode(masm, Runtime::kTryInstallOptimizedCode); 543 GenerateTailCallToReturnedCode(masm, Runtime::kTryInstallOptimizedCode);
544 544
545 __ bind(&ok); 545 __ bind(&ok);
546 GenerateTailCallToSharedCode(masm); 546 GenerateTailCallToSharedCode(masm);
547 } 547 }
548 548
549 static void Generate_JSConstructStubHelper(MacroAssembler* masm, 549 namespace {
550 bool is_api_function, 550
551 bool create_implicit_receiver, 551 void Generate_JSConstructStubHelper(MacroAssembler* masm, bool is_api_function,
552 bool check_derived_construct) { 552 bool create_implicit_receiver,
553 bool check_derived_construct) {
553 // ----------- S t a t e ------------- 554 // ----------- S t a t e -------------
554 // -- a0 : number of arguments 555 // -- a0 : number of arguments
555 // -- a1 : constructor function 556 // -- a1 : constructor function
556 // -- a2 : allocation site or undefined
557 // -- a3 : new target 557 // -- a3 : new target
558 // -- cp : context 558 // -- cp : context
559 // -- ra : return address 559 // -- ra : return address
560 // -- sp[...]: constructor arguments 560 // -- sp[...]: constructor arguments
561 // ----------------------------------- 561 // -----------------------------------
562 562
563 Isolate* isolate = masm->isolate(); 563 Isolate* isolate = masm->isolate();
564 564
565 // Enter a construct frame. 565 // Enter a construct frame.
566 { 566 {
567 FrameScope scope(masm, StackFrame::CONSTRUCT); 567 FrameScope scope(masm, StackFrame::CONSTRUCT);
568 568
569 // Preserve the incoming parameters on the stack. 569 // Preserve the incoming parameters on the stack.
570 __ AssertUndefinedOrAllocationSite(a2, t0);
571 __ SmiTag(a0); 570 __ SmiTag(a0);
572 __ Push(cp, a2, a0); 571 __ Push(cp, a0);
573 572
574 if (create_implicit_receiver) { 573 if (create_implicit_receiver) {
575 __ Push(a1, a3); 574 __ Push(a1, a3);
576 FastNewObjectStub stub(masm->isolate()); 575 FastNewObjectStub stub(masm->isolate());
577 __ CallStub(&stub); 576 __ CallStub(&stub);
578 __ mov(t0, v0); 577 __ mov(t0, v0);
579 __ Pop(a1, a3); 578 __ Pop(a1, a3);
580 579
581 // ----------- S t a t e ------------- 580 // ----------- S t a t e -------------
582 // -- a1: constructor function 581 // -- a1: constructor function
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
686 685
687 __ SmiScale(a4, a1, kPointerSizeLog2); 686 __ SmiScale(a4, a1, kPointerSizeLog2);
688 __ Daddu(sp, sp, a4); 687 __ Daddu(sp, sp, a4);
689 __ Daddu(sp, sp, kPointerSize); 688 __ Daddu(sp, sp, kPointerSize);
690 if (create_implicit_receiver) { 689 if (create_implicit_receiver) {
691 __ IncrementCounter(isolate->counters()->constructed_objects(), 1, a1, a2); 690 __ IncrementCounter(isolate->counters()->constructed_objects(), 1, a1, a2);
692 } 691 }
693 __ Ret(); 692 __ Ret();
694 } 693 }
695 694
695 } // namespace
696
696 void Builtins::Generate_JSConstructStubGeneric(MacroAssembler* masm) { 697 void Builtins::Generate_JSConstructStubGeneric(MacroAssembler* masm) {
697 Generate_JSConstructStubHelper(masm, false, true, false); 698 Generate_JSConstructStubHelper(masm, false, true, false);
698 } 699 }
699 700
700 void Builtins::Generate_JSConstructStubApi(MacroAssembler* masm) { 701 void Builtins::Generate_JSConstructStubApi(MacroAssembler* masm) {
701 Generate_JSConstructStubHelper(masm, true, false, false); 702 Generate_JSConstructStubHelper(masm, true, false, false);
702 } 703 }
703 704
704 void Builtins::Generate_JSBuiltinsConstructStub(MacroAssembler* masm) { 705 void Builtins::Generate_JSBuiltinsConstructStub(MacroAssembler* masm) {
705 Generate_JSConstructStubHelper(masm, false, false, false); 706 Generate_JSConstructStubHelper(masm, false, false, false);
(...skipping 2270 matching lines...) Expand 10 before | Expand all | Expand 10 after
2976 __ break_(0xCC); 2977 __ break_(0xCC);
2977 } 2978 }
2978 } 2979 }
2979 2980
2980 #undef __ 2981 #undef __
2981 2982
2982 } // namespace internal 2983 } // namespace internal
2983 } // namespace v8 2984 } // namespace v8
2984 2985
2985 #endif // V8_TARGET_ARCH_MIPS64 2986 #endif // V8_TARGET_ARCH_MIPS64
OLDNEW
« no previous file with comments | « src/builtins/mips/builtins-mips.cc ('k') | src/builtins/x64/builtins-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698