Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(15)

Issue 6838018: Support %_CallFunction in optimized code. (Closed)

Created:
9 years, 8 months ago by Kevin Millikin (Chromium)
Modified:
9 years, 7 months ago
Reviewers:
fschneider
CC:
v8-dev
Visibility:
Public.

Description

Support %_CallFunction in optimized code. Also, fix a bug identified in the x64 optimizing code generator. We failed to restore the context to the fixed context register after the Function.prototype.apply optimization. R=fschneider@chromium.org

Patch Set 1 #

Patch Set 2 : Proper port to other architectures, fix context bug on x64. #

Patch Set 3 : Include regression test. #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+282 lines, -48 lines) Patch
M src/arm/full-codegen-arm.cc View 1 chunk +6 lines, -7 lines 0 comments Download
M src/arm/lithium-arm.h View 1 2 chunks +18 lines, -0 lines 0 comments Download
M src/arm/lithium-arm.cc View 1 2 chunks +15 lines, -0 lines 0 comments Download
M src/arm/lithium-codegen-arm.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/arm/lithium-codegen-arm.cc View 1 6 chunks +20 lines, -5 lines 0 comments Download
M src/hydrogen.cc View 1 chunk +15 lines, -1 line 1 comment Download
M src/hydrogen-instructions.h View 2 chunks +18 lines, -0 lines 0 comments Download
M src/ia32/full-codegen-ia32.cc View 1 chunk +6 lines, -7 lines 0 comments Download
M src/ia32/lithium-codegen-ia32.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/ia32/lithium-codegen-ia32.cc View 7 chunks +21 lines, -6 lines 0 comments Download
M src/ia32/lithium-ia32.h View 2 chunks +20 lines, -0 lines 0 comments Download
M src/ia32/lithium-ia32.cc View 2 chunks +18 lines, -0 lines 0 comments Download
M src/runtime-profiler.cc View 1 2 chunks +2 lines, -1 line 0 comments Download
M src/x64/full-codegen-x64.cc View 1 chunk +6 lines, -7 lines 0 comments Download
M src/x64/lithium-codegen-x64.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/x64/lithium-codegen-x64.cc View 1 8 chunks +22 lines, -6 lines 0 comments Download
M src/x64/lithium-x64.h View 1 2 chunks +20 lines, -2 lines 0 comments Download
M src/x64/lithium-x64.cc View 1 2 chunks +15 lines, -0 lines 0 comments Download
A test/mjsunit/regress/regress-apply-to-arguments.js View 1 2 1 chunk +54 lines, -0 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
Kevin Millikin (Chromium)
We already use CallFunction for Hydrogen/Lithium instructions, so I called this InvokeFunction which reflects its ...
9 years, 8 months ago (2011-04-13 13:56:29 UTC) #1
Kevin Millikin (Chromium)
Ready for you to take a look.
9 years, 8 months ago (2011-04-13 15:23:51 UTC) #2
fschneider
LGTM. http://codereview.chromium.org/6838018/diff/3020/src/hydrogen.cc File src/hydrogen.cc (right): http://codereview.chromium.org/6838018/diff/3020/src/hydrogen.cc#newcode5535 src/hydrogen.cc:5535: ASSERT(arg_count >= 1); // There's always at least ...
9 years, 8 months ago (2011-04-13 16:59:29 UTC) #3
fschneider
9 years, 8 months ago (2011-04-15 07:58:55 UTC) #4
I landed this change in r7624.

On 2011/04/13 16:59:29, fschneider wrote:
> LGTM.
> 
> http://codereview.chromium.org/6838018/diff/3020/src/hydrogen.cc
> File src/hydrogen.cc (right):
> 
> http://codereview.chromium.org/6838018/diff/3020/src/hydrogen.cc#newcode5535
> src/hydrogen.cc:5535: ASSERT(arg_count >= 1);  // There's always at least a
> receiver.
> Can this also be >= 2 (receiver + function)?

Powered by Google App Engine
This is Rietveld 408576698