Chromium Code Reviews| Index: src/ia32/full-codegen-ia32.cc |
| diff --git a/src/ia32/full-codegen-ia32.cc b/src/ia32/full-codegen-ia32.cc |
| index 50713b5c141a10c9cad8a29ed77aee159f2276e1..bbe03c4a4fb6988d5986b483f6ad68b1a49ebd80 100644 |
| --- a/src/ia32/full-codegen-ia32.cc |
| +++ b/src/ia32/full-codegen-ia32.cc |
| @@ -1678,6 +1678,14 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { |
| FastCloneShallowArrayStub::Mode mode = has_constant_fast_elements |
| ? FastCloneShallowArrayStub::CLONE_ELEMENTS |
| : FastCloneShallowArrayStub::CLONE_ANY_ELEMENTS; |
| + |
| + // Let's track allocation info if we are SMI or DOUBLE, it might be |
| + // useful to pretransition. |
|
danno
2012/12/26 10:32:01
This also will track DOUBLE -> FAST_OBJECT, so the
mvstanton
2013/01/03 14:40:43
Done.
|
| + if (mode == FastCloneShallowArrayStub::CLONE_ANY_ELEMENTS && |
| + FLAG_use_allocation_site_info) { |
| + mode = FastCloneShallowArrayStub::CLONE_ANY_ELEMENTS_WITH_ALLOCATION_INFO; |
| + } |
| + |
| FastCloneShallowArrayStub stub(mode, length); |
| __ CallStub(&stub); |
| } |