Make context register implicit for CallInterfaceDescriptors
authordanno <danno@chromium.org>
Wed, 1 Jul 2015 08:45:05 +0000 (01:45 -0700)
committerCommit bot <commit-bot@chromium.org>
Wed, 1 Jul 2015 08:45:12 +0000 (08:45 +0000)
commit7015fd20531ee8498352f82d626c78023a1f6857
treea45308402b8e95f05cd735e751200bd2ab3d7ef4
parentd82c163de4a076632479a1916d4f147f5260d435
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.

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

Cr-Commit-Position: refs/heads/master@{#29402}
33 files changed:
src/arm/code-stubs-arm.cc
src/arm/interface-descriptors-arm.cc
src/arm/lithium-arm.cc
src/arm/lithium-arm.h
src/arm64/code-stubs-arm64.cc
src/arm64/interface-descriptors-arm64.cc
src/arm64/lithium-arm64.cc
src/arm64/lithium-arm64.h
src/code-stubs-hydrogen.cc
src/code-stubs.cc
src/code-stubs.h
src/compiler/linkage-impl.h
src/deoptimizer.cc
src/hydrogen-instructions.h
src/hydrogen.cc
src/ia32/code-stubs-ia32.cc
src/ia32/interface-descriptors-ia32.cc
src/ia32/lithium-ia32.cc
src/ia32/lithium-ia32.h
src/interface-descriptors.cc
src/interface-descriptors.h
src/mips/code-stubs-mips.cc
src/mips/interface-descriptors-mips.cc
src/mips/lithium-mips.cc
src/mips/lithium-mips.h
src/mips64/code-stubs-mips64.cc
src/mips64/interface-descriptors-mips64.cc
src/mips64/lithium-mips64.cc
src/mips64/lithium-mips64.h
src/x64/code-stubs-x64.cc
src/x64/interface-descriptors-x64.cc
src/x64/lithium-x64.cc
src/x64/lithium-x64.h