From: hpayer@chromium.org Date: Mon, 13 Jan 2014 17:11:36 +0000 (+0000) Subject: Enable allocation site pretenuring. X-Git-Tag: upstream/4.7.83~11180 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=dcf7f73ec02e00bb5883c8b16aebecfed4b9f69e;p=platform%2Fupstream%2Fv8.git Enable allocation site pretenuring. Disable elements-kind.js unit test temporarily on gc stress builders. BUG= R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/136813002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18571 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- diff --git a/src/flag-definitions.h b/src/flag-definitions.h index 93adb62..bbad227 100644 --- a/src/flag-definitions.h +++ b/src/flag-definitions.h @@ -220,7 +220,7 @@ DEFINE_bool(pretenuring, true, "allocate objects in old space") // TODO(hpayer): We will remove this flag as soon as we have pretenuring // support for specific allocation sites. DEFINE_bool(pretenuring_call_new, false, "pretenure call new") -DEFINE_bool(allocation_site_pretenuring, false, +DEFINE_bool(allocation_site_pretenuring, true, "pretenure with allocation sites") DEFINE_bool(trace_pretenuring, false, "trace pretenuring decisions of HAllocate instructions") diff --git a/src/objects.cc b/src/objects.cc index 250a804..23cd6d9 100644 --- a/src/objects.cc +++ b/src/objects.cc @@ -12853,7 +12853,7 @@ void AllocationSite::AddDependentCompilationInfo(Handle site, Handle codes = DependentCode::Insert(dep, group, info->object_wrapper()); if (*codes != site->dependent_code()) site->set_dependent_code(*codes); - info->dependencies(group)->Add(Handle(site), info->zone()); + info->dependencies(group)->Add(Handle(*site), info->zone()); } diff --git a/test/cctest/test-heap.cc b/test/cctest/test-heap.cc index d5fae58..493cbd3 100644 --- a/test/cctest/test-heap.cc +++ b/test/cctest/test-heap.cc @@ -2240,7 +2240,7 @@ TEST(OptimizedPretenuringAllocationFoldingBlocks) { CcTest::heap()->SetNewSpaceHighPromotionModeActive(true); v8::Local res = CompileRun( - "var number_elements = 3000;" + "var number_elements = 30000;" "var elements = new Array(number_elements);" "function DataObject() {" " this.a = [{}];" @@ -2345,7 +2345,7 @@ TEST(OptimizedPretenuringDoubleArrayProperties) { v8::HandleScope scope(CcTest::isolate()); v8::Local res = CompileRun( - "var number_elements = 20000;" + "var number_elements = 30000;" "var elements = new Array(number_elements);" "function f() {" " for (var i = 0; i < number_elements; i++) {" diff --git a/test/mjsunit/elements-kind.js b/test/mjsunit/elements-kind.js index 857637c..b02af65 100644 --- a/test/mjsunit/elements-kind.js +++ b/test/mjsunit/elements-kind.js @@ -26,7 +26,7 @@ // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // Flags: --allow-natives-syntax --smi-only-arrays --expose-gc -// Flags: --nostress-opt +// Flags: --nostress-opt --nostress-compaction --gc-interval=-1 // Test element kind of objects. // Since --smi-only-arrays affects builtins, its default setting at compile