Reland "Turn ElementsTransitionAndStore stub into a HydrogenCodeStub".
authorbmeurer@chromium.org <bmeurer@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 17 Jul 2013 11:37:20 +0000 (11:37 +0000)
committerbmeurer@chromium.org <bmeurer@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 17 Jul 2013 11:37:20 +0000 (11:37 +0000)
commit410b4b2db48854bcd6561919a4d97a02c9564630
treec6c3c01cb0e8dcc8254b9f8918e119363613dcb3
parent517cbe4dd3efa6292a7ba0078c02f992ce632be4
Reland "Turn ElementsTransitionAndStore stub into a HydrogenCodeStub".

Fix the invalid array length check, replacing it with a check of
the elements pointer similar to TransitionElementsKindStub.
Refactor common code from ElementsTransitionAndStoreStub and TransitionElementsKindStub into BuildTransitionElementsKind() helper method.
Add test case for the MD5 computation that used to crash before,
and a small test case for the specific issue.

R=danno@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15713 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
14 files changed:
src/arm/code-stubs-arm.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/ic.cc
src/ic.h
src/mips/code-stubs-mips.cc
src/stub-cache.cc
src/x64/code-stubs-x64.cc
test/mjsunit/elements-transition-and-store.js [new file with mode: 0644]
test/mjsunit/md5.js [new file with mode: 0644]