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

Side by Side Diff: src/crankshaft/x87/lithium-codegen-x87.cc

Issue 1477663002: X87: [turbofan] Switch passing of new.target to register. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years 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 | « no previous file | src/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_X87 5 #if V8_TARGET_ARCH_X87
6 6
7 #include "src/crankshaft/x87/lithium-codegen-x87.h" 7 #include "src/crankshaft/x87/lithium-codegen-x87.h"
8 8
9 #include "src/base/bits.h" 9 #include "src/base/bits.h"
10 #include "src/code-factory.h" 10 #include "src/code-factory.h"
(...skipping 3485 matching lines...) Expand 10 before | Expand all | Expand 10 after
3496 __ dec(length); 3496 __ dec(length);
3497 __ j(not_zero, &loop); 3497 __ j(not_zero, &loop);
3498 3498
3499 // Invoke the function. 3499 // Invoke the function.
3500 __ bind(&invoke); 3500 __ bind(&invoke);
3501 DCHECK(instr->HasPointerMap()); 3501 DCHECK(instr->HasPointerMap());
3502 LPointerMap* pointers = instr->pointer_map(); 3502 LPointerMap* pointers = instr->pointer_map();
3503 SafepointGenerator safepoint_generator( 3503 SafepointGenerator safepoint_generator(
3504 this, pointers, Safepoint::kLazyDeopt); 3504 this, pointers, Safepoint::kLazyDeopt);
3505 ParameterCount actual(eax); 3505 ParameterCount actual(eax);
3506 __ InvokeFunction(function, actual, CALL_FUNCTION, safepoint_generator); 3506 __ InvokeFunction(function, no_reg, actual, CALL_FUNCTION,
3507 safepoint_generator);
3507 } 3508 }
3508 3509
3509 3510
3510 void LCodeGen::DoDebugBreak(LDebugBreak* instr) { 3511 void LCodeGen::DoDebugBreak(LDebugBreak* instr) {
3511 __ int3(); 3512 __ int3();
3512 } 3513 }
3513 3514
3514 3515
3515 void LCodeGen::DoPushArgument(LPushArgument* instr) { 3516 void LCodeGen::DoPushArgument(LPushArgument* instr) {
3516 LOperand* argument = instr->value(); 3517 LOperand* argument = instr->value();
(...skipping 571 matching lines...) Expand 10 before | Expand all | Expand 10 after
4088 DCHECK(ToRegister(instr->context()).is(esi)); 4089 DCHECK(ToRegister(instr->context()).is(esi));
4089 DCHECK(ToRegister(instr->function()).is(edi)); 4090 DCHECK(ToRegister(instr->function()).is(edi));
4090 DCHECK(instr->HasPointerMap()); 4091 DCHECK(instr->HasPointerMap());
4091 4092
4092 Handle<JSFunction> known_function = instr->hydrogen()->known_function(); 4093 Handle<JSFunction> known_function = instr->hydrogen()->known_function();
4093 if (known_function.is_null()) { 4094 if (known_function.is_null()) {
4094 LPointerMap* pointers = instr->pointer_map(); 4095 LPointerMap* pointers = instr->pointer_map();
4095 SafepointGenerator generator( 4096 SafepointGenerator generator(
4096 this, pointers, Safepoint::kLazyDeopt); 4097 this, pointers, Safepoint::kLazyDeopt);
4097 ParameterCount count(instr->arity()); 4098 ParameterCount count(instr->arity());
4098 __ InvokeFunction(edi, count, CALL_FUNCTION, generator); 4099 __ InvokeFunction(edi, no_reg, count, CALL_FUNCTION, generator);
4099 } else { 4100 } else {
4100 CallKnownFunction(known_function, 4101 CallKnownFunction(known_function,
4101 instr->hydrogen()->formal_parameter_count(), 4102 instr->hydrogen()->formal_parameter_count(),
4102 instr->arity(), instr); 4103 instr->arity(), instr);
4103 } 4104 }
4104 } 4105 }
4105 4106
4106 4107
4107 void LCodeGen::DoCallFunction(LCallFunction* instr) { 4108 void LCodeGen::DoCallFunction(LCallFunction* instr) {
4108 DCHECK(ToRegister(instr->context()).is(esi)); 4109 DCHECK(ToRegister(instr->context()).is(esi));
(...skipping 2093 matching lines...) Expand 10 before | Expand all | Expand 10 after
6202 RecordSafepoint(Safepoint::kNoLazyDeopt); 6203 RecordSafepoint(Safepoint::kNoLazyDeopt);
6203 } 6204 }
6204 6205
6205 6206
6206 #undef __ 6207 #undef __
6207 6208
6208 } // namespace internal 6209 } // namespace internal
6209 } // namespace v8 6210 } // namespace v8
6210 6211
6211 #endif // V8_TARGET_ARCH_X87 6212 #endif // V8_TARGET_ARCH_X87
OLDNEW
« no previous file with comments | « no previous file | src/x87/builtins-x87.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698