Index: src/x64/stub-cache-x64.cc |
=================================================================== |
--- src/x64/stub-cache-x64.cc (revision 4786) |
+++ src/x64/stub-cache-x64.cc (working copy) |
@@ -1505,14 +1505,12 @@ |
JSObject* holder, |
AccessorInfo* callback) { |
// ----------- S t a t e ------------- |
+ // -- rax : key |
+ // -- rdx : receiver |
// -- rsp[0] : return address |
- // -- rsp[8] : name |
- // -- rsp[16] : receiver |
// ----------------------------------- |
Label miss; |
- __ movq(rax, Operand(rsp, kPointerSize)); |
- __ movq(rcx, Operand(rsp, 2 * kPointerSize)); |
__ IncrementCounter(&Counters::keyed_load_callback, 1); |
// Check that the name has not changed. |
@@ -1520,7 +1518,7 @@ |
__ j(not_equal, &miss); |
Failure* failure = Failure::InternalError(); |
- bool success = GenerateLoadCallback(receiver, holder, rcx, rax, rbx, rdx, |
+ bool success = GenerateLoadCallback(receiver, holder, rdx, rax, rbx, rcx, |
callback, name, &miss, &failure); |
if (!success) return failure; |
@@ -1535,21 +1533,19 @@ |
Object* KeyedLoadStubCompiler::CompileLoadArrayLength(String* name) { |
// ----------- S t a t e ------------- |
+ // -- rax : key |
+ // -- rdx : receiver |
// -- rsp[0] : return address |
- // -- rsp[8] : name |
- // -- rsp[16] : receiver |
// ----------------------------------- |
Label miss; |
- __ movq(rax, Operand(rsp, kPointerSize)); |
- __ movq(rcx, Operand(rsp, 2 * kPointerSize)); |
__ IncrementCounter(&Counters::keyed_load_array_length, 1); |
// Check that the name has not changed. |
__ Cmp(rax, Handle<String>(name)); |
__ j(not_equal, &miss); |
- GenerateLoadArrayLength(masm(), rcx, rdx, &miss); |
+ GenerateLoadArrayLength(masm(), rdx, rcx, &miss); |
__ bind(&miss); |
__ DecrementCounter(&Counters::keyed_load_array_length, 1); |
GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC); |
@@ -1564,21 +1560,19 @@ |
JSObject* holder, |
Object* value) { |
// ----------- S t a t e ------------- |
+ // -- rax : key |
+ // -- rdx : receiver |
// -- rsp[0] : return address |
- // -- rsp[8] : name |
- // -- rsp[16] : receiver |
// ----------------------------------- |
Label miss; |
- __ movq(rax, Operand(rsp, kPointerSize)); |
- __ movq(rcx, Operand(rsp, 2 * kPointerSize)); |
__ IncrementCounter(&Counters::keyed_load_constant_function, 1); |
// Check that the name has not changed. |
__ Cmp(rax, Handle<String>(name)); |
__ j(not_equal, &miss); |
- GenerateLoadConstant(receiver, holder, rcx, rbx, rdx, |
+ GenerateLoadConstant(receiver, holder, rdx, rbx, rcx, |
value, name, &miss); |
__ bind(&miss); |
__ DecrementCounter(&Counters::keyed_load_constant_function, 1); |
@@ -1591,21 +1585,19 @@ |
Object* KeyedLoadStubCompiler::CompileLoadFunctionPrototype(String* name) { |
// ----------- S t a t e ------------- |
+ // -- rax : key |
+ // -- rdx : receiver |
// -- rsp[0] : return address |
- // -- rsp[8] : name |
- // -- rsp[16] : receiver |
// ----------------------------------- |
Label miss; |
- __ movq(rax, Operand(rsp, kPointerSize)); |
- __ movq(rcx, Operand(rsp, 2 * kPointerSize)); |
__ IncrementCounter(&Counters::keyed_load_function_prototype, 1); |
// Check that the name has not changed. |
__ Cmp(rax, Handle<String>(name)); |
__ j(not_equal, &miss); |
- GenerateLoadFunctionPrototype(masm(), rcx, rdx, rbx, &miss); |
+ GenerateLoadFunctionPrototype(masm(), rdx, rcx, rbx, &miss); |
__ bind(&miss); |
__ DecrementCounter(&Counters::keyed_load_function_prototype, 1); |
GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC); |
@@ -1619,14 +1611,12 @@ |
JSObject* holder, |
String* name) { |
// ----------- S t a t e ------------- |
+ // -- rax : key |
+ // -- rdx : receiver |
// -- rsp[0] : return address |
- // -- rsp[8] : name |
- // -- rsp[16] : receiver |
// ----------------------------------- |
Label miss; |
- __ movq(rax, Operand(rsp, kPointerSize)); |
- __ movq(rcx, Operand(rsp, 2 * kPointerSize)); |
__ IncrementCounter(&Counters::keyed_load_interceptor, 1); |
// Check that the name has not changed. |
@@ -1638,9 +1628,9 @@ |
GenerateLoadInterceptor(receiver, |
holder, |
&lookup, |
- rcx, |
- rax, |
rdx, |
+ rax, |
+ rcx, |
rbx, |
name, |
&miss); |
@@ -1655,21 +1645,19 @@ |
Object* KeyedLoadStubCompiler::CompileLoadStringLength(String* name) { |
// ----------- S t a t e ------------- |
- // -- rsp[0] : return address |
- // -- rsp[8] : name |
- // -- rsp[16] : receiver |
+ // -- rax : key |
+ // -- rdx : receiver |
+ // -- rsp[0] : return address |
// ----------------------------------- |
Label miss; |
- __ movq(rax, Operand(rsp, kPointerSize)); |
- __ movq(rcx, Operand(rsp, 2 * kPointerSize)); |
__ IncrementCounter(&Counters::keyed_load_string_length, 1); |
// Check that the name has not changed. |
__ Cmp(rax, Handle<String>(name)); |
__ j(not_equal, &miss); |
- GenerateLoadStringLength(masm(), rcx, rdx, rbx, &miss); |
+ GenerateLoadStringLength(masm(), rdx, rcx, rbx, &miss); |
__ bind(&miss); |
__ DecrementCounter(&Counters::keyed_load_string_length, 1); |
GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC); |
@@ -1847,21 +1835,19 @@ |
JSObject* holder, |
int index) { |
// ----------- S t a t e ------------- |
- // -- rsp[0] : return address |
- // -- rsp[8] : name |
- // -- rsp[16] : receiver |
+ // -- rax : key |
+ // -- rdx : receiver |
+ // -- rsp[0] : return address |
// ----------------------------------- |
Label miss; |
- __ movq(rax, Operand(rsp, kPointerSize)); |
- __ movq(rcx, Operand(rsp, 2 * kPointerSize)); |
__ IncrementCounter(&Counters::keyed_load_field, 1); |
// Check that the name has not changed. |
__ Cmp(rax, Handle<String>(name)); |
__ j(not_equal, &miss); |
- GenerateLoadField(receiver, holder, rcx, rbx, rdx, index, name, &miss); |
+ GenerateLoadField(receiver, holder, rdx, rbx, rcx, index, name, &miss); |
__ bind(&miss); |
__ DecrementCounter(&Counters::keyed_load_field, 1); |