Switch CallConstructStub to take new.target in register.
authormstarzinger <mstarzinger@chromium.org>
Wed, 15 Jul 2015 14:36:56 +0000 (07:36 -0700)
committerCommit bot <commit-bot@chromium.org>
Wed, 15 Jul 2015 14:37:12 +0000 (14:37 +0000)
commit1d9d895754e1d1cf824c11a9cce5e495fa47d5e2
treee9b7cdf548ba3de0c8fa1830c4501508912cfe60
parente6e53390cc4c2765a9104fdbceed79cf41f07551
Switch CallConstructStub to take new.target in register.

This changes the calling convention of the CallConstructStub to take
the original constructor (i.e. new.target in JS-speak) in a register
instead of magically via the operand stack. For optimizing compilers
the operand stack doesn't exist, hence cannot be peeked into.

R=mvstanton@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#29681}
25 files changed:
src/arm/builtins-arm.cc
src/arm/code-stubs-arm.cc
src/arm/full-codegen-arm.cc
src/arm/interface-descriptors-arm.cc
src/arm64/builtins-arm64.cc
src/arm64/code-stubs-arm64.cc
src/arm64/full-codegen-arm64.cc
src/arm64/interface-descriptors-arm64.cc
src/compiler/js-generic-lowering.cc
src/ia32/builtins-ia32.cc
src/ia32/code-stubs-ia32.cc
src/ia32/full-codegen-ia32.cc
src/ia32/interface-descriptors-ia32.cc
src/mips/builtins-mips.cc
src/mips/code-stubs-mips.cc
src/mips/full-codegen-mips.cc
src/mips/interface-descriptors-mips.cc
src/mips64/builtins-mips64.cc
src/mips64/code-stubs-mips64.cc
src/mips64/full-codegen-mips64.cc
src/mips64/interface-descriptors-mips64.cc
src/x64/builtins-x64.cc
src/x64/code-stubs-x64.cc
src/x64/full-codegen-x64.cc
src/x64/interface-descriptors-x64.cc