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

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

Issue 2372113004: [turbofan] JSGenericLowering mostly uses builtins instead of code stubs now (Closed)
Patch Set: Ross' comments 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/s390/builtins-s390.cc ('k') | src/builtins/x87/builtins-x87.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_X64 5 #if V8_TARGET_ARCH_X64
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 2565 matching lines...) Expand 10 before | Expand all | Expand 10 after
2576 { 2576 {
2577 // Convert receiver using ToObject. 2577 // Convert receiver using ToObject.
2578 // TODO(bmeurer): Inline the allocation here to avoid building the frame 2578 // TODO(bmeurer): Inline the allocation here to avoid building the frame
2579 // in the fast case? (fall back to AllocateInNewSpace?) 2579 // in the fast case? (fall back to AllocateInNewSpace?)
2580 FrameScope scope(masm, StackFrame::INTERNAL); 2580 FrameScope scope(masm, StackFrame::INTERNAL);
2581 __ Integer32ToSmi(rax, rax); 2581 __ Integer32ToSmi(rax, rax);
2582 __ Push(rax); 2582 __ Push(rax);
2583 __ Push(rdi); 2583 __ Push(rdi);
2584 __ movp(rax, rcx); 2584 __ movp(rax, rcx);
2585 __ Push(rsi); 2585 __ Push(rsi);
2586 ToObjectStub stub(masm->isolate()); 2586 __ Call(masm->isolate()->builtins()->ToObject(),
2587 __ CallStub(&stub); 2587 RelocInfo::CODE_TARGET);
2588 __ Pop(rsi); 2588 __ Pop(rsi);
2589 __ movp(rcx, rax); 2589 __ movp(rcx, rax);
2590 __ Pop(rdi); 2590 __ Pop(rdi);
2591 __ Pop(rax); 2591 __ Pop(rax);
2592 __ SmiToInteger32(rax, rax); 2592 __ SmiToInteger32(rax, rax);
2593 } 2593 }
2594 __ movp(rdx, FieldOperand(rdi, JSFunction::kSharedFunctionInfoOffset)); 2594 __ movp(rdx, FieldOperand(rdi, JSFunction::kSharedFunctionInfoOffset));
2595 __ bind(&convert_receiver); 2595 __ bind(&convert_receiver);
2596 } 2596 }
2597 __ movp(args.GetReceiverOperand(), rcx); 2597 __ movp(args.GetReceiverOperand(), rcx);
(...skipping 491 matching lines...) Expand 10 before | Expand all | Expand 10 after
3089 void Builtins::Generate_InterpreterOnStackReplacement(MacroAssembler* masm) { 3089 void Builtins::Generate_InterpreterOnStackReplacement(MacroAssembler* masm) {
3090 Generate_OnStackReplacementHelper(masm, true); 3090 Generate_OnStackReplacementHelper(masm, true);
3091 } 3091 }
3092 3092
3093 #undef __ 3093 #undef __
3094 3094
3095 } // namespace internal 3095 } // namespace internal
3096 } // namespace v8 3096 } // namespace v8
3097 3097
3098 #endif // V8_TARGET_ARCH_X64 3098 #endif // V8_TARGET_ARCH_X64
OLDNEW
« no previous file with comments | « src/builtins/s390/builtins-s390.cc ('k') | src/builtins/x87/builtins-x87.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698