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

Issue 1238143002: [stubs] Optimize LoadGlobalViaContextStub and StoreGlobalViaContextStub. (Closed)

Created:
5 years, 5 months ago by Benedikt Meurer
Modified:
5 years, 5 months ago
CC:
v8-dev, v8-mips-ports_googlegroups.com, Rodolph Perfetta (ARM), baptiste.afsa1
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[stubs] Optimize LoadGlobalViaContextStub and StoreGlobalViaContextStub. This is the initial round of optimizations for the LoadGlobalViaContextStub and StoreGlobalViaContextStub, basically turning them into platform code stubs to avoid the Crankshaft overhead in the fast case, and making the runtime interface cheaper. R=ishell@chromium.org BUG=chromium:510694 LOG=n Committed: https://crrev.com/d6ee366d5c5aef7c6bc550889a33520058b4e33a Cr-Commit-Position: refs/heads/master@{#29834}

Patch Set 1 #

Patch Set 2 : ia32 port. small x64 beautification. #

Total comments: 35

Patch Set 3 : Merged ARM and MIPS ports. #

Patch Set 4 : Addressed nits. #

Patch Set 5 : REBASE #

Patch Set 6 : Fix ARM typo. #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+1383 lines, -567 lines) Patch
M src/arm/code-stubs-arm.cc View 1 2 3 4 1 chunk +154 lines, -0 lines 0 comments Download
M src/arm/full-codegen-arm.cc View 1 2 3 4 2 chunks +31 lines, -23 lines 0 comments Download
M src/arm/interface-descriptors-arm.cc View 1 2 3 4 1 chunk +0 lines, -2 lines 0 comments Download
M src/arm/lithium-codegen-arm.cc View 1 2 3 4 5 2 chunks +33 lines, -21 lines 0 comments Download
M src/arm/macro-assembler-arm.h View 1 2 2 chunks +2 lines, -2 lines 0 comments Download
M src/arm64/code-stubs-arm64.cc View 1 2 3 4 1 chunk +147 lines, -0 lines 0 comments Download
M src/arm64/full-codegen-arm64.cc View 1 2 3 4 2 chunks +29 lines, -23 lines 0 comments Download
M src/arm64/interface-descriptors-arm64.cc View 1 2 3 4 1 chunk +0 lines, -2 lines 0 comments Download
M src/arm64/lithium-codegen-arm64.cc View 1 2 3 4 2 chunks +33 lines, -21 lines 0 comments Download
M src/arm64/macro-assembler-arm64.h View 1 2 3 4 2 chunks +2 lines, -2 lines 0 comments Download
M src/code-stubs.h View 1 2 3 4 1 chunk +18 lines, -25 lines 0 comments Download
M src/code-stubs.cc View 1 2 3 4 1 chunk +0 lines, -14 lines 0 comments Download
M src/code-stubs-hydrogen.cc View 1 2 3 4 1 chunk +0 lines, -214 lines 0 comments Download
M src/compiler/js-generic-lowering.cc View 1 2 3 2 chunks +9 lines, -9 lines 0 comments Download
M src/ia32/code-stubs-ia32.cc View 1 2 3 4 1 chunk +155 lines, -0 lines 0 comments Download
M src/ia32/full-codegen-ia32.cc View 1 2 3 4 2 chunks +29 lines, -19 lines 0 comments Download
M src/ia32/interface-descriptors-ia32.cc View 1 2 3 4 1 chunk +0 lines, -2 lines 0 comments Download
M src/ia32/lithium-codegen-ia32.cc View 1 2 3 4 2 chunks +31 lines, -19 lines 0 comments Download
M src/ia32/macro-assembler-ia32.h View 1 1 chunk +5 lines, -0 lines 0 comments Download
M src/interface-descriptors.h View 1 2 3 4 2 chunks +0 lines, -2 lines 0 comments Download
M src/interface-descriptors.cc View 1 2 3 4 2 chunks +8 lines, -11 lines 0 comments Download
M src/mips/code-stubs-mips.cc View 1 2 3 4 1 chunk +149 lines, -0 lines 2 comments Download
M src/mips/full-codegen-mips.cc View 1 2 3 4 2 chunks +30 lines, -20 lines 0 comments Download
M src/mips/interface-descriptors-mips.cc View 1 2 3 4 1 chunk +0 lines, -2 lines 0 comments Download
M src/mips/lithium-codegen-mips.cc View 1 2 3 4 2 chunks +33 lines, -20 lines 0 comments Download
M src/mips64/code-stubs-mips64.cc View 1 2 3 4 1 chunk +149 lines, -0 lines 2 comments Download
M src/mips64/full-codegen-mips64.cc View 1 2 3 4 2 chunks +30 lines, -20 lines 0 comments Download
M src/mips64/interface-descriptors-mips64.cc View 1 2 3 4 1 chunk +0 lines, -2 lines 0 comments Download
M src/mips64/lithium-codegen-mips64.cc View 1 2 3 4 2 chunks +33 lines, -20 lines 0 comments Download
M src/runtime/runtime.h View 1 2 3 4 1 chunk +3 lines, -2 lines 0 comments Download
M src/runtime/runtime-object.cc View 1 2 3 4 2 chunks +51 lines, -28 lines 0 comments Download
M src/x64/code-stubs-x64.cc View 1 2 3 4 1 chunk +154 lines, -0 lines 0 comments Download
M src/x64/full-codegen-x64.cc View 1 2 3 4 2 chunks +29 lines, -19 lines 0 comments Download
M src/x64/interface-descriptors-x64.cc View 1 2 3 4 1 chunk +0 lines, -2 lines 0 comments Download
M src/x64/lithium-codegen-x64.cc View 1 2 3 4 2 chunks +31 lines, -21 lines 0 comments Download
M src/x64/macro-assembler-x64.h View 1 chunk +5 lines, -0 lines 0 comments Download

Messages

Total messages: 22 (4 generated)
Benedikt Meurer
5 years, 5 months ago (2015-07-17 09:36:30 UTC) #1
Benedikt Meurer
Hey Igor, This is the x64 port. Please take a look, I'll finish the rest ...
5 years, 5 months ago (2015-07-17 09:38:04 UTC) #2
Benedikt Meurer
Hey MIPS/ARM people, Please add appropriate ports to this change. Thanks, Benedikt
5 years, 5 months ago (2015-07-17 09:46:11 UTC) #3
martyn.capewell
Ok, we're looking at ARM and ARM64.
5 years, 5 months ago (2015-07-17 10:57:47 UTC) #4
Benedikt Meurer
On 2015/07/17 10:57:47, martyn.capewell wrote: > Ok, we're looking at ARM and ARM64. Ok, thanks ...
5 years, 5 months ago (2015-07-17 10:58:08 UTC) #5
Igor Sheludko
LGTM with nits for patch set 2. Thanks for improving this! Please land this after ...
5 years, 5 months ago (2015-07-18 20:52:44 UTC) #6
Igor Sheludko
One more comment. https://codereview.chromium.org/1238143002/diff/20001/src/x64/code-stubs-x64.cc File src/x64/code-stubs-x64.cc (right): https://codereview.chromium.org/1238143002/diff/20001/src/x64/code-stubs-x64.cc#newcode5169 src/x64/code-stubs-x64.cc:5169: __ j(equal, &fast_case); I think it ...
5 years, 5 months ago (2015-07-19 20:29:30 UTC) #7
paul.l...
MIPS ports for this CL are in https://codereview.chromium.org/1238253002/
5 years, 5 months ago (2015-07-20 06:12:14 UTC) #9
Igor Sheludko
https://codereview.chromium.org/1238143002/diff/20001/src/x64/code-stubs-x64.cc File src/x64/code-stubs-x64.cc (right): https://codereview.chromium.org/1238143002/diff/20001/src/x64/code-stubs-x64.cc#newcode5169 src/x64/code-stubs-x64.cc:5169: __ j(equal, &fast_case); On 2015/07/19 20:29:29, Igor Sheludko wrote: ...
5 years, 5 months ago (2015-07-20 09:01:17 UTC) #10
jbramley
A few questions that came up whilst working on the ARM port. These probably apply ...
5 years, 5 months ago (2015-07-21 10:25:31 UTC) #12
martyn.capewell
ARM and ARM64 changes are at https://codereview.chromium.org/1245983003
5 years, 5 months ago (2015-07-21 17:46:25 UTC) #13
Benedikt Meurer
Thanks for the comments. Rebasing now. https://codereview.chromium.org/1238143002/diff/20001/src/compiler/js-generic-lowering.cc File src/compiler/js-generic-lowering.cc (right): https://codereview.chromium.org/1238143002/diff/20001/src/compiler/js-generic-lowering.cc#newcode343 src/compiler/js-generic-lowering.cc:343: node->ReplaceInput(2, script_context); // ...
5 years, 5 months ago (2015-07-24 05:18:29 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1238143002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1238143002/100001
5 years, 5 months ago (2015-07-24 06:22:06 UTC) #17
commit-bot: I haz the power
Committed patchset #6 (id:100001)
5 years, 5 months ago (2015-07-24 07:16:54 UTC) #18
commit-bot: I haz the power
Patchset 6 (id:??) landed as https://crrev.com/d6ee366d5c5aef7c6bc550889a33520058b4e33a Cr-Commit-Position: refs/heads/master@{#29834}
5 years, 5 months ago (2015-07-24 07:17:14 UTC) #19
Igor Sheludko
DBC about mips ports: https://codereview.chromium.org/1238143002/diff/100001/src/mips/code-stubs-mips.cc File src/mips/code-stubs-mips.cc (right): https://codereview.chromium.org/1238143002/diff/100001/src/mips/code-stubs-mips.cc#newcode5288 src/mips/code-stubs-mips.cc:5288: __ Addu(at, at, Operand(cp)); We ...
5 years, 5 months ago (2015-07-24 11:10:01 UTC) #20
balazs.kilvady
We are working on fixing the MIPS ports.
5 years, 5 months ago (2015-07-24 13:42:33 UTC) #21
Igor Sheludko
5 years, 5 months ago (2015-07-24 14:18:26 UTC) #22
Message was sent while issue was closed.
On 2015/07/24 13:42:33, balazs.kilvady wrote:
> We are working on fixing the MIPS ports.

We already fixed them: https://codereview.chromium.org/1257603004/

Powered by Google App Engine
This is Rietveld 408576698