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

Issue 1211333003: Make context register implicit for CallInterfaceDescriptors (Closed)

Created:
5 years, 5 months ago by danno
Modified:
5 years, 5 months ago
Reviewers:
mvstanton
CC:
v8-dev
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Make context register implicit for CallInterfaceDescriptors Up until now the context register was listed explicitly in each stub's CallInterfaceDescriptor. This was problematic, because it was listed first in the list of register parameters--which is fine for Crankshaft, which is more or less built to handle the context as the first parameter-- but not ideal for TurboFan, which adds the context at the end of all function parameters. Now the context register is no longer in the register list and can be handled appropriately by both compilers. Specifically, this allows the FunctionType specified for each CallInterfaceDescriptor to exactly match the parameter register list. Committed: https://crrev.com/7015fd20531ee8498352f82d626c78023a1f6857 Cr-Commit-Position: refs/heads/master@{#29402}

Patch Set 1 #

Patch Set 2 : Tests pass #

Patch Set 3 : Done with ia32 #

Patch Set 4 : Implement x64 #

Patch Set 5 : Platform ports #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+465 lines, -471 lines) Patch
M src/arm/code-stubs-arm.cc View 1 2 3 4 1 chunk +3 lines, -3 lines 0 comments Download
M src/arm/interface-descriptors-arm.cc View 1 2 3 4 12 chunks +27 lines, -39 lines 0 comments Download
M src/arm/lithium-arm.h View 1 2 3 4 2 chunks +10 lines, -2 lines 0 comments Download
M src/arm/lithium-arm.cc View 1 2 3 4 2 chunks +12 lines, -4 lines 0 comments Download
M src/arm64/code-stubs-arm64.cc View 1 2 3 4 1 chunk +3 lines, -3 lines 0 comments Download
M src/arm64/interface-descriptors-arm64.cc View 1 2 3 4 12 chunks +27 lines, -54 lines 0 comments Download
M src/arm64/lithium-arm64.h View 1 2 3 4 2 chunks +10 lines, -2 lines 0 comments Download
M src/arm64/lithium-arm64.cc View 1 2 3 4 2 chunks +12 lines, -4 lines 0 comments Download
M src/code-stubs.h View 1 14 chunks +32 lines, -29 lines 2 comments Download
M src/code-stubs.cc View 2 chunks +3 lines, -2 lines 0 comments Download
M src/code-stubs-hydrogen.cc View 1 2 3 chunks +15 lines, -6 lines 0 comments Download
M src/compiler/linkage-impl.h View 1 2 chunks +3 lines, -4 lines 0 comments Download
M src/deoptimizer.cc View 1 2 chunks +4 lines, -2 lines 0 comments Download
M src/hydrogen.cc View 1 2 4 chunks +9 lines, -13 lines 0 comments Download
M src/hydrogen-instructions.h View 1 2 3 4 chunks +10 lines, -5 lines 0 comments Download
M src/ia32/code-stubs-ia32.cc View 1 2 1 chunk +3 lines, -3 lines 0 comments Download
M src/ia32/interface-descriptors-ia32.cc View 1 15 chunks +27 lines, -36 lines 0 comments Download
M src/ia32/lithium-ia32.h View 1 2 2 chunks +10 lines, -2 lines 0 comments Download
M src/ia32/lithium-ia32.cc View 1 2 2 chunks +12 lines, -4 lines 0 comments Download
M src/interface-descriptors.h View 1 2 2 chunks +5 lines, -17 lines 0 comments Download
M src/interface-descriptors.cc View 17 chunks +71 lines, -95 lines 0 comments Download
M src/mips/code-stubs-mips.cc View 1 2 3 4 1 chunk +3 lines, -3 lines 0 comments Download
M src/mips/interface-descriptors-mips.cc View 1 2 3 4 13 chunks +27 lines, -38 lines 0 comments Download
M src/mips/lithium-mips.h View 1 2 3 4 2 chunks +10 lines, -2 lines 0 comments Download
M src/mips/lithium-mips.cc View 1 2 3 4 2 chunks +12 lines, -4 lines 0 comments Download
M src/mips64/code-stubs-mips64.cc View 1 2 3 4 1 chunk +3 lines, -3 lines 0 comments Download
M src/mips64/interface-descriptors-mips64.cc View 1 2 3 4 13 chunks +27 lines, -38 lines 0 comments Download
M src/mips64/lithium-mips64.h View 1 2 3 4 2 chunks +10 lines, -2 lines 0 comments Download
M src/mips64/lithium-mips64.cc View 1 2 3 4 2 chunks +13 lines, -5 lines 0 comments Download
M src/x64/code-stubs-x64.cc View 1 2 3 1 chunk +3 lines, -3 lines 0 comments Download
M src/x64/interface-descriptors-x64.cc View 1 2 3 14 chunks +27 lines, -38 lines 0 comments Download
M src/x64/lithium-x64.h View 1 2 3 2 chunks +10 lines, -2 lines 0 comments Download
M src/x64/lithium-x64.cc View 1 2 3 2 chunks +12 lines, -4 lines 0 comments Download

Messages

Total messages: 8 (2 generated)
danno
PTAL
5 years, 5 months ago (2015-06-30 20:29:16 UTC) #2
mvstanton
Hi Danno, LGTM, just one question. If you can keep the const it would be ...
5 years, 5 months ago (2015-07-01 08:33:25 UTC) #3
danno
https://codereview.chromium.org/1211333003/diff/80001/src/code-stubs.h File src/code-stubs.h (right): https://codereview.chromium.org/1211333003/diff/80001/src/code-stubs.h#newcode217 src/code-stubs.h:217: virtual CallInterfaceDescriptor GetCallInterfaceDescriptor() const = 0; On 2015/07/01 08:33:24, ...
5 years, 5 months ago (2015-07-01 08:43:16 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1211333003/80001
5 years, 5 months ago (2015-07-01 08:43:27 UTC) #6
commit-bot: I haz the power
Committed patchset #5 (id:80001)
5 years, 5 months ago (2015-07-01 08:45:11 UTC) #7
commit-bot: I haz the power
5 years, 5 months ago (2015-07-01 08:45:21 UTC) #8
Message was sent while issue was closed.
Patchset 5 (id:??) landed as
https://crrev.com/7015fd20531ee8498352f82d626c78023a1f6857
Cr-Commit-Position: refs/heads/master@{#29402}

Powered by Google App Engine
This is Rietveld 408576698