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

Side by Side Diff: src/x64/interface-descriptors-x64.cc

Issue 1124443004: New hydrogen instruction to reduce cost of growing an array on keyed stores. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: REBASE to tip of tree. Created 5 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 #include "src/v8.h" 5 #include "src/v8.h"
6 6
7 #if V8_TARGET_ARCH_X64 7 #if V8_TARGET_ARCH_X64
8 8
9 #include "src/interface-descriptors.h" 9 #include "src/interface-descriptors.h"
10 10
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 const Register MathPowTaggedDescriptor::exponent() { return rdx; } 51 const Register MathPowTaggedDescriptor::exponent() { return rdx; }
52 52
53 53
54 const Register MathPowIntegerDescriptor::exponent() { 54 const Register MathPowIntegerDescriptor::exponent() {
55 return MathPowTaggedDescriptor::exponent(); 55 return MathPowTaggedDescriptor::exponent();
56 } 56 }
57 57
58 58
59 const Register GrowArrayElementsDescriptor::ObjectRegister() { return rax; } 59 const Register GrowArrayElementsDescriptor::ObjectRegister() { return rax; }
60 const Register GrowArrayElementsDescriptor::KeyRegister() { return rbx; } 60 const Register GrowArrayElementsDescriptor::KeyRegister() { return rbx; }
61 const Register GrowArrayElementsDescriptor::CapacityRegister() { return rcx; }
62 61
63 62
64 void FastNewClosureDescriptor::Initialize(CallInterfaceDescriptorData* data) { 63 void FastNewClosureDescriptor::Initialize(CallInterfaceDescriptorData* data) {
65 Register registers[] = {rsi, rbx}; 64 Register registers[] = {rsi, rbx};
66 data->Initialize(arraysize(registers), registers, NULL); 65 data->Initialize(arraysize(registers), registers, NULL);
67 } 66 }
68 67
69 68
70 void FastNewContextDescriptor::Initialize(CallInterfaceDescriptorData* data) { 69 void FastNewContextDescriptor::Initialize(CallInterfaceDescriptorData* data) {
71 Register registers[] = {rsi, rdi}; 70 Register registers[] = {rsi, rdi};
(...skipping 296 matching lines...) Expand 10 before | Expand all | Expand 10 after
368 Representation::Tagged(), // call_data 367 Representation::Tagged(), // call_data
369 Representation::Tagged(), // holder 368 Representation::Tagged(), // holder
370 Representation::External(), // api_function_address 369 Representation::External(), // api_function_address
371 }; 370 };
372 data->Initialize(arraysize(registers), registers, representations); 371 data->Initialize(arraysize(registers), registers, representations);
373 } 372 }
374 } 373 }
375 } // namespace v8::internal 374 } // namespace v8::internal
376 375
377 #endif // V8_TARGET_ARCH_X64 376 #endif // V8_TARGET_ARCH_X64
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698