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
