Implement many KeyedStoreStubs using Crankshaft
authordanno@chromium.org <danno@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 20 Mar 2013 10:37:13 +0000 (10:37 +0000)
committerdanno@chromium.org <danno@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 20 Mar 2013 10:37:13 +0000 (10:37 +0000)
commitffd0c712e829280b152143cf6d6514e35cf61412
tree33ae3bb8c3a4dc10970a926e77cf09e3885b29b0
parent9673d7944c1f4e1fcc8eba4cab351bb56212c07a
Implement many KeyedStoreStubs using Crankshaft

- Addition of a compiled hydrogen stub for KeyedStores.
- Inlining of "grow" stubs into OPTIMIZED_FUNCTIONs
- Addition of new "ignore OOB" ic stub that silently swallows out-of-bounds stores to external typed arrays.
- Addition of new "copy-on-write" ic stub that inlines allocation and copying operations for cow array
- New stub are generated with Crankshaft, so they are automatically inlined into OPTIMIZED_FUNCTIONs

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
19 files changed:
src/arm/code-stubs-arm.cc
src/arm/lithium-codegen-arm.cc
src/arm/lithium-codegen-arm.h
src/ast.cc
src/ast.h
src/code-stubs-hydrogen.cc
src/code-stubs.h
src/flag-definitions.h
src/heap.h
src/hydrogen.cc
src/hydrogen.h
src/ia32/code-stubs-ia32.cc
src/ic.cc
src/ic.h
src/runtime.cc
src/stub-cache.cc
src/type-info.cc
src/x64/code-stubs-x64.cc
test/mjsunit/elements-kind.js