X87: Use shared function info for eval cache key.
authorweiliang.lin@intel.com <weiliang.lin@intel.com>
Wed, 29 Oct 2014 07:19:42 +0000 (07:19 +0000)
committerweiliang.lin@intel.com <weiliang.lin@intel.com>
Wed, 29 Oct 2014 07:20:13 +0000 (07:20 +0000)
port r24927.

original commit message:

 Use shared function info for eval cache key.

BUG=
R=weiliang.lin@intel.com

Review URL: https://codereview.chromium.org/689543002

Patch from Chunyang Dai <chunyang.dai@intel.com>.

Cr-Commit-Position: refs/heads/master@{#24961}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24961 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/x87/full-codegen-x87.cc

index 9240fc8..8c73963 100644 (file)
@@ -2844,6 +2844,8 @@ void FullCodeGenerator::EmitResolvePossiblyDirectEval(int arg_count) {
     __ push(Immediate(isolate()->factory()->undefined_value()));
   }
 
+  // Push the enclosing function.
+  __ push(Operand(ebp, JavaScriptFrameConstants::kFunctionOffset));
   // Push the receiver of the enclosing function.
   __ push(Operand(ebp, (2 + info_->scope()->num_parameters()) * kPointerSize));
   // Push the language mode.
@@ -2853,7 +2855,7 @@ void FullCodeGenerator::EmitResolvePossiblyDirectEval(int arg_count) {
   __ push(Immediate(Smi::FromInt(scope()->start_position())));
 
   // Do the runtime call.
-  __ CallRuntime(Runtime::kResolvePossiblyDirectEval, 5);
+  __ CallRuntime(Runtime::kResolvePossiblyDirectEval, 6);
 }