Index: src/objects-inl.h |
diff --git a/src/objects-inl.h b/src/objects-inl.h |
index f831c11d493942b5e3c9f0eccb4232661e1100f7..618cf30f760affb5a163268e60f2410e54d275bd 100644 |
--- a/src/objects-inl.h |
+++ b/src/objects-inl.h |
@@ -1474,7 +1474,8 @@ void AllocationSite::MarkZombie() { |
// elements kind is the initial elements kind. |
AllocationSiteMode AllocationSite::GetMode( |
ElementsKind boilerplate_elements_kind) { |
- if (IsFastSmiElementsKind(boilerplate_elements_kind)) { |
+ if (FLAG_pretenuring_call_new || |
+ IsFastSmiElementsKind(boilerplate_elements_kind)) { |
return TRACK_ALLOCATION_SITE; |
} |
@@ -1484,8 +1485,9 @@ AllocationSiteMode AllocationSite::GetMode( |
AllocationSiteMode AllocationSite::GetMode(ElementsKind from, |
ElementsKind to) { |
- if (IsFastSmiElementsKind(from) && |
- IsMoreGeneralElementsKindTransition(from, to)) { |
+ if (FLAG_pretenuring_call_new || |
+ (IsFastSmiElementsKind(from) && |
+ IsMoreGeneralElementsKindTransition(from, to))) { |
return TRACK_ALLOCATION_SITE; |
} |