Unify and simplify the FastCloneShallowArrayStub
authordanno@chromium.org <danno@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 25 Apr 2014 11:54:01 +0000 (11:54 +0000)
committerdanno@chromium.org <danno@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 25 Apr 2014 11:54:01 +0000 (11:54 +0000)
commit198c4769f28915681bac5a8785644a6ba0c88055
tree4c9b70b6497a9c3c1aec2f13fb0a6345cfe7f748
parent9a8422094c93465bd7da9b9d8c0f49d081a178d0
Unify and simplify the FastCloneShallowArrayStub

- Don't bake in length/capacity into full codegen calls of stubs,
  allowing boilerplates to increase their capacity without regenerating
  code.
- Unify all variants of the clone stub into a single,
  length-independent version.
- Various tweaks to make sure that the clone stub doesn't spill and
  therefore need an eager stack frame.
- Handle all lengths of array literals in the fast case.

R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20974 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
15 files changed:
src/arm/code-stubs-arm.cc
src/arm/full-codegen-arm.cc
src/arm64/code-stubs-arm64.cc
src/arm64/full-codegen-arm64.cc
src/code-stubs-hydrogen.cc
src/code-stubs.cc
src/code-stubs.h
src/hydrogen.cc
src/hydrogen.h
src/ia32/code-stubs-ia32.cc
src/ia32/full-codegen-ia32.cc
src/mips/full-codegen-mips.cc
src/v8-counters.h
src/x64/code-stubs-x64.cc
src/x64/full-codegen-x64.cc