Revision: 3441
Author: [email protected]
Date: Wed Dec  9 07:34:57 2009
Log: Fix arm and x64 build.

The ApiGetterEntryStub is not implemented on arm or x64, but the
platform-specific implementations need to change to match the change
to the platform-independent signatures.

[email protected]

Review URL: http://codereview.chromium.org/471009
http://code.google.com/p/v8/source/detail?r=3441

Modified:
  /branches/bleeding_edge/src/arm/stub-cache-arm.cc
  /branches/bleeding_edge/src/x64/stub-cache-x64.cc

=======================================
--- /branches/bleeding_edge/src/arm/stub-cache-arm.cc   Tue Dec  1 01:54:47  
2009
+++ /branches/bleeding_edge/src/arm/stub-cache-arm.cc   Wed Dec  9 07:34:57  
2009
@@ -446,7 +446,7 @@
  }


-void StubCompiler::GenerateLoadCallback(JSObject* object,
+bool StubCompiler::GenerateLoadCallback(JSObject* object,
                                          JSObject* holder,
                                          Register receiver,
                                          Register name_reg,
@@ -454,7 +454,8 @@
                                          Register scratch2,
                                          AccessorInfo* callback,
                                          String* name,
-                                        Label* miss) {
+                                        Label* miss,
+                                        Failure** failure) {
    // Check that the receiver isn't a smi.
    __ tst(receiver, Operand(kSmiTagMask));
    __ b(eq, miss);
@@ -476,6 +477,8 @@
    ExternalReference load_callback_property =
        ExternalReference(IC_Utility(IC::kLoadCallbackProperty));
    __ TailCallRuntime(load_callback_property, 5, 1);
+
+  return true;
  }


@@ -1003,10 +1006,10 @@
  }


-Object* LoadStubCompiler::CompileLoadCallback(JSObject* object,
+Object* LoadStubCompiler::CompileLoadCallback(String* name,
+                                              JSObject* object,
                                                JSObject* holder,
-                                              AccessorInfo* callback,
-                                              String* name) {
+                                              AccessorInfo* callback) {
    // ----------- S t a t e -------------
    //  -- r2    : name
    //  -- lr    : return address
@@ -1015,7 +1018,11 @@
    Label miss;

    __ ldr(r0, MemOperand(sp, 0));
-  GenerateLoadCallback(object, holder, r0, r2, r3, r1, callback, name,  
&miss);
+  Failure* failure = Failure::InternalError();
+  bool success = GenerateLoadCallback(object, holder, r0, r2, r3, r1,
+                                      callback, name, &miss, &failure);
+  if (!success) return failure;
+
    __ bind(&miss);
    GenerateLoadMiss(masm(), Code::LOAD_IC);

@@ -1168,7 +1175,11 @@
    __ cmp(r2, Operand(Handle<String>(name)));
    __ b(ne, &miss);

-  GenerateLoadCallback(receiver, holder, r0, r2, r3, r1, callback, name,  
&miss);
+  Failure* failure = Failure::InternalError();
+  bool success = GenerateLoadCallback(receiver, holder, r0, r2, r3, r1,
+                                      callback, name, &miss, &failure);
+  if (!success) return failure;
+
    __ bind(&miss);
    GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC);

=======================================
--- /branches/bleeding_edge/src/x64/stub-cache-x64.cc   Tue Nov 24 06:10:06  
2009
+++ /branches/bleeding_edge/src/x64/stub-cache-x64.cc   Wed Dec  9 07:34:57  
2009
@@ -987,10 +987,10 @@
  }


-Object* LoadStubCompiler::CompileLoadCallback(JSObject* object,
+Object* LoadStubCompiler::CompileLoadCallback(String* name,
+                                              JSObject* object,
                                                JSObject* holder,
-                                              AccessorInfo* callback,
-                                              String* name) {
+                                              AccessorInfo* callback) {
    // ----------- S t a t e -------------
    //  -- rcx    : name
    //  -- rsp[0] : return address
@@ -999,8 +999,11 @@
    Label miss;

    __ movq(rax, Operand(rsp, kPointerSize));
-  GenerateLoadCallback(object, holder, rax, rcx, rbx, rdx,
-                       callback, name, &miss);
+  Failure* failure = Failure::InternalError();
+  bool success = GenerateLoadCallback(object, holder, rax, rcx, rbx, rdx,
+                                      callback, name, &miss, &failure);
+  if (!success) return failure;
+
    __ bind(&miss);
    GenerateLoadMiss(masm(), Code::LOAD_IC);

@@ -1154,8 +1157,11 @@
    __ Cmp(rax, Handle<String>(name));
    __ j(not_equal, &miss);

-  GenerateLoadCallback(receiver, holder, rcx, rax, rbx, rdx,
-                       callback, name, &miss);
+  Failure* failure = Failure::InternalError();
+  bool success = GenerateLoadCallback(receiver, holder, rcx, rax, rbx, rdx,
+                                      callback, name, &miss, &failure);
+  if (!success) return failure;
+
    __ bind(&miss);
    __ DecrementCounter(&Counters::keyed_load_callback, 1);
    GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC);
@@ -1610,7 +1616,7 @@
  }


-void StubCompiler::GenerateLoadCallback(JSObject* object,
+bool StubCompiler::GenerateLoadCallback(JSObject* object,
                                          JSObject* holder,
                                          Register receiver,
                                          Register name_reg,
@@ -1618,7 +1624,8 @@
                                          Register scratch2,
                                          AccessorInfo* callback,
                                          String* name,
-                                        Label* miss) {
+                                        Label* miss,
+                                        Failure** failure) {
    // Check that the receiver isn't a smi.
    __ JumpIfSmi(receiver, miss);

@@ -1641,6 +1648,8 @@
    ExternalReference load_callback_property =
        ExternalReference(IC_Utility(IC::kLoadCallbackProperty));
    __ TailCallRuntime(load_callback_property, 5, 1);
+
+  return true;
  }


-- 
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to