From: sgjesse@chromium.org Date: Wed, 19 May 2010 08:36:14 +0000 (+0000) Subject: ARM: Fix porting bug X-Git-Tag: upstream/4.7.83~21783 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=df49b2915edae5e55fa31696e52c5eaba0ae4770;p=platform%2Fupstream%2Fv8.git ARM: Fix porting bug The port to ARM of a tail call wrongly kept the scheme of pushing below the return address. TBR=antonm@chromium.org Review URL: http://codereview.chromium.org/2091013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4679 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- diff --git a/src/arm/stub-cache-arm.cc b/src/arm/stub-cache-arm.cc index 964d098..0bdbff1 100644 --- a/src/arm/stub-cache-arm.cc +++ b/src/arm/stub-cache-arm.cc @@ -508,8 +508,7 @@ class LoadInterceptorCompiler BASE_EMBEDDED { ASSERT(callback->getter() != NULL); Label cleanup; - __ pop(scratch2); - __ Push(receiver, scratch2); + __ push(receiver); holder = stub_compiler->CheckPrototypes(holder_obj, holder, lookup->holder(), scratch1, @@ -528,9 +527,7 @@ class LoadInterceptorCompiler BASE_EMBEDDED { __ TailCallExternalReference(ref, 5, 1); __ bind(&cleanup); - __ pop(scratch1); __ pop(scratch2); - __ push(scratch1); } }