Chromium Code Reviews
Help | Chromium Project | Gerrit Changes | Sign in
(1)

Issue 942513002: Put the type feedback vector in the unoptimized JavaScript frame. (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
2 years, 6 months ago by mvstanton
Modified:
2 years, 1 month ago
Reviewers:
titzer, Jarin
CC:
v8-dev, Michael Starzinger
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Put the type feedback vector in the unoptimized JavaScript frame. It's costly to look the vector up in the SharedFunctionInfo. By placing it in the frame, we save loads. Optimized frames don't have it because we typically inline several functions in one optimized function, and the feedback vectors are different. * DECIDED NOT TO DO THIS FOR NOW * BUG=

Patch Set 1 #

Patch Set 2 : ia32 lithium fix. #

Total comments: 4

Patch Set 3 : REBASE. #

Patch Set 4 : Code comments. #

Patch Set 5 : Fix webkit recursion test. #

Patch Set 6 : REBASE. #

Patch Set 7 : Reduced constant in deep recursion test for windows. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+282 lines, -76 lines) Patch
M src/arm/code-stubs-arm.cc View 1 2 3 4 5 1 chunk +2 lines, -5 lines 0 comments Download
M src/arm/frames-arm.h View 1 2 1 chunk +10 lines, -1 line 0 comments Download
M src/arm/full-codegen-arm.cc View 1 2 3 4 5 3 chunks +10 lines, -2 lines 0 comments Download
M src/arm/lithium-codegen-arm.cc View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M src/arm/macro-assembler-arm.h View 1 2 3 4 5 1 chunk +4 lines, -0 lines 0 comments Download
M src/arm/macro-assembler-arm.cc View 1 2 3 4 5 1 chunk +16 lines, -0 lines 0 comments Download
M src/arm64/code-stubs-arm64.cc View 1 2 3 4 5 1 chunk +2 lines, -5 lines 0 comments Download
M src/arm64/frames-arm64.h View 1 2 1 chunk +10 lines, -2 lines 0 comments Download
M src/arm64/full-codegen-arm64.cc View 1 2 3 4 5 3 chunks +10 lines, -2 lines 0 comments Download
M src/arm64/lithium-codegen-arm64.cc View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M src/arm64/macro-assembler-arm64.h View 1 2 3 4 5 1 chunk +4 lines, -0 lines 0 comments Download
M src/arm64/macro-assembler-arm64.cc View 1 2 3 4 5 1 chunk +17 lines, -0 lines 0 comments Download
M src/compiler/arm/code-generator-arm.cc View 1 2 3 4 5 1 chunk +7 lines, -2 lines 0 comments Download
M src/compiler/arm64/code-generator-arm64.cc View 1 2 3 4 5 1 chunk +7 lines, -2 lines 0 comments Download
M src/compiler/ia32/code-generator-ia32.cc View 1 2 3 4 5 1 chunk +7 lines, -2 lines 0 comments Download
M src/compiler/x64/code-generator-x64.cc View 1 2 3 4 5 1 chunk +7 lines, -2 lines 0 comments Download
M src/deoptimizer.h View 1 2 2 chunks +6 lines, -2 lines 0 comments Download
M src/deoptimizer.cc View 1 2 3 9 chunks +34 lines, -14 lines 0 comments Download
M src/frames.h View 1 2 3 4 5 3 chunks +4 lines, -2 lines 0 comments Download
M src/frames.cc View 1 2 3 4 5 4 chunks +19 lines, -9 lines 0 comments Download
M src/ia32/code-stubs-ia32.cc View 1 2 3 4 5 1 chunk +1 line, -4 lines 0 comments Download
M src/ia32/deoptimizer-ia32.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
M src/ia32/frames-ia32.h View 1 2 1 chunk +11 lines, -2 lines 0 comments Download
M src/ia32/full-codegen-ia32.cc View 1 2 3 4 5 3 chunks +7 lines, -1 line 0 comments Download
M src/ia32/lithium-codegen-ia32.cc View 1 2 3 4 5 2 chunks +16 lines, -6 lines 0 comments Download
M src/ia32/macro-assembler-ia32.h View 1 2 3 4 5 1 chunk +4 lines, -0 lines 0 comments Download
M src/ia32/macro-assembler-ia32.cc View 1 2 3 4 5 1 chunk +15 lines, -0 lines 0 comments Download
M src/isolate.cc View 1 2 3 4 5 1 chunk +4 lines, -3 lines 0 comments Download
M src/x64/code-stubs-x64.cc View 1 2 3 4 5 1 chunk +2 lines, -4 lines 0 comments Download
M src/x64/frames-x64.h View 1 2 1 chunk +10 lines, -1 line 0 comments Download
M src/x64/full-codegen-x64.cc View 1 2 3 4 5 3 chunks +7 lines, -1 line 0 comments Download
M src/x64/lithium-codegen-x64.cc View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M src/x64/macro-assembler-x64.h View 1 2 3 4 5 1 chunk +4 lines, -0 lines 0 comments Download
M src/x64/macro-assembler-x64.cc View 1 2 3 4 5 1 chunk +17 lines, -0 lines 0 comments Download
M test/webkit/fast/js/deep-recursion-test.js View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
Commit queue not available (can’t edit this change).

Messages

Total messages: 7 (1 generated)
mvstanton
Hi Ben, hi Jaro, here is the frame change we've discussed. Thanks for the look! ...
2 years, 6 months ago (2015-02-19 14:30:30 UTC) #2
titzer
https://codereview.chromium.org/942513002/diff/20001/src/arm/macro-assembler-arm.h File src/arm/macro-assembler-arm.h (right): https://codereview.chromium.org/942513002/diff/20001/src/arm/macro-assembler-arm.h#newcode1432 src/arm/macro-assembler-arm.h:1432: void OSRDropVectorFromStack(int unoptimized_slot_count, Register scratch0, I think this method ...
2 years, 5 months ago (2015-02-24 19:32:55 UTC) #3
Jarin
https://codereview.chromium.org/942513002/diff/20001/src/deoptimizer.cc File src/deoptimizer.cc (right): https://codereview.chromium.org/942513002/diff/20001/src/deoptimizer.cc#newcode2911 src/deoptimizer.cc:2911: CHECK(type_ == StackFrame::JAVA_SCRIPT || type_ == StackFrame::OPTIMIZED); I am ...
2 years, 5 months ago (2015-02-26 09:22:06 UTC) #4
mvstanton
Thanks for the comments guys and sorry about the long delay. I needed to evaluate ...
2 years, 5 months ago (2015-03-20 12:21:09 UTC) #5
mvstanton
ping.
2 years, 4 months ago (2015-03-25 10:19:58 UTC) #6
Jarin
2 years, 4 months ago (2015-03-26 06:27:32 UTC) #7
lgtm.
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld b40b6558b