- 01 Dec, 2011 6 commits
-
-
ulan@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/8770003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10121 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
So far we had two types of stack checks: one used for function entries and one used at loop back edges which uses a deferred code object to avoid spilling of registers in the loop. After refactoring lazy deoptimization the first stack check can also use deferred code. This change removes the first type of stack check instruction in Crankshaft and uses a deferred stack check in all places. Review URL: http://codereview.chromium.org/8775002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10118 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Port r10070 (4d7e5a8a) Original commit message: TEST=test/mjsunit/string-external-cached.js BUG= Review URL: http://codereview.chromium.org/8744012 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10109 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Port r10059 (c32f98a9) Original commit message: BUG= TEST= Review URL: http://codereview.chromium.org/8746015 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10107 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
R=danno@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8770001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10104 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
The phones and tablets currently in use are much slower that desktop and laptop machines for which the current heuristics have been tuned. Review URL: http://codereview.chromium.org/8757017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10103 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Nov, 2011 11 commits
-
-
keuchel@chromium.org authored
Fix build with GCC 4.7, which fails with "narrowing conversion of 'id' from 'int' to 'unsigned int' inside { } is ill-formed in C++11" Contributed by burnus@net-b.de Review URL: http://codereview.chromium.org/8724003 Patch from Tobias Burnus <burnus@net-b.de>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10101 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/8749008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10100 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/8746021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10099 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Port r10067 (593c1ea) and r10069 (87a06dc). BUG= TEST= Review URL: http://codereview.chromium.org/8743009 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10098 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Port r10064 (9c6789a3) Original commit message: There is no test case to trigger any crash. This is only to guard against the case that the native function is called with unsafe arguments. BUG= TEST= Review URL: http://codereview.chromium.org/8742012 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10097 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Only make function literals in top-level object literals pretenured and constant function properties. This change is a refinement of http://code.google.com/p/v8/source/detail?r=7283. Making all function literals inside object literals constant function properties causes us to lose map sharing. This hurts code where many object literals are created. The idea is that top-level code is mostly executed once and functions inside top-level object literals remain fast with this change. BUG=v8:1795 Review URL: http://codereview.chromium.org/8746018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10096 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Avoid spilling a live range that has a register use at the next instruction. The register use position has to be after the end of the next instruction so that we don't end up trying to split a live range at the beginning. BUG=105112 Review URL: http://codereview.chromium.org/8743011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10095 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
The debugger preparation did not take optimized functions - including inlined function into account. This caused the full-code used for deoptimization to be the "lazy compile" builtin which did not work and caused V8 to crash. R=yangguo@chromium.org BUG=chromium:105375, v8:1782 TEST=test/mjsunit/debug-break-inline.js Review URL: http://codereview.chromium.org//8728031 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10094 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
BUG=v8:1458 TEST=cctest/test-api/IdleNotification* Review URL: http://codereview.chromium.org/8519002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10093 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
a mark-sweep. We have a soft limit on old space size, which is designed to trigger an old-space collection when we hit it. Unfortunately although the soft limit had already triggered an old space collection, the soft limit was preventing objects from new space from being promoted. For every promotion candidate we were checking 3 different ways to allocate in old space before giving up and putting the object in the other semispace. This change allows the promoted objects to go to old space and also makes us more eager to sweep a page before trying other ways to find space for an object. Review URL: http://codereview.chromium.org/8748005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10092 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/8659039 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10091 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Nov, 2011 10 commits
-
-
mstarzinger@chromium.org authored
R=erik.corry@gmail.com Review URL: http://codereview.chromium.org/8725032 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10088 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
BUG=v8:1846 Review URL: http://codereview.chromium.org/8725030 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10087 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/8725029 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Includes general array boilerplate copier and re-introduction FAST_ELEMENT optimizations in full-codegen. BUG=none TEST=none Review URL: http://codereview.chromium.org/8472005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10085 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Limit the number of pages that are compacted in a given GC. Review URL: http://codereview.chromium.org/8692002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10084 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
This shaves 416+ KB, just under 1% off the size of the debug d8 executable on Linux (mostly because the CheckHelper functions for assertions were getting separate copies for each compilation unit). The difference in release builds is negligible---a size reduction of 0.1%. Also, change namespace-level 'static const' variables to remove the static storage class as it's the default. R=danno@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8680013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Source slot might belong to a dead old object and we might allocate a new object over it when evacuating a new space object this slot points to. In this case if we update slot after migrating object we will write into migrated object. R=erik.corry@gmail.com Review URL: http://codereview.chromium.org/8698022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10082 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=erik.corry@gmail.com BUG=v8:1845 TEST=mjsunit/harmony/proxies-example-membrane Review URL: http://codereview.chromium.org/8715004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10081 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
keuchel@chromium.org authored
This reapplies a fixed version of r10076 that also works on arm. Patch set one is r10076 reapplied and patch set 2 contains the new fix. Review URL: http://codereview.chromium.org/8725001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10080 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
keuchel@chromium.org authored
The ES.next drafts require that source code that matches the productions for let and const bindings outside the extended mode trigger early syntax errors. This CL adapts the parser / preparser accordingly under the harmony scoping flag. Summary: * Harmony scoping flag not set: Old semantics allowing const in classic mode with function level scope. Const binding in strict mode and let bindings in classic and strict mode trigger early syntax errors. * Harmony scoping is set: Use new harmony const and let in extended mode and old const in classic mode. This is to preserve compatibility with current web pages that already use non-standard implementations of const. An early syntax error is thrown on const in strict mode and on let in classic and strict mode. This depends on: http://codereview.chromium.org/8562002/ TEST=mjsunit/harmony/block-early-errors.js Review URL: http://codereview.chromium.org/8564001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10079 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Nov, 2011 6 commits
-
-
danno@chromium.org authored
BUG=none TEST=none Review URL: http://codereview.chromium.org/8472003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10078 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
keuchel@chromium.org authored
Review URL: http://codereview.chromium.org/8716005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10077 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
keuchel@chromium.org authored
source code positions it gets from the program counter to recreate the scope chain by reparsing the function or program. This CL includes the following changes * Adds source code positions for the assignment added by the rewriter. * Run the preparser over global code first. * Use the ScopeType from the ScopeInfo to determine if the code being debugged is eval, function or global code instead of looking up the '.result' symbol. TEST=mjsunit/debug-stepout-scope.js Review URL: http://codereview.chromium.org/8590027 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10076 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/8720005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10075 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Multiline conditionals must use braces. Semicolons are not optional. Review URL: http://codereview.chromium.org/8701006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10074 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=keuchel@chromium.org BUG=v8:1845 TEST=mjsunit/harmony/proxies-example-membrane Review URL: http://codereview.chromium.org/8698017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10073 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Nov, 2011 7 commits
-
-
mstarzinger@chromium.org authored
This mode drastically decreases pause times by limiting maximum capacity of the young generation when mutators generate many long-lived objects. It shrinks new space back to the initial capacity and keeps it at that capacity until survival rate decreases again. R=erik.corry@gmail.com Review URL: http://codereview.chromium.org/8702006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10072 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Review URL: http://codereview.chromium.org/8699004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10071 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
TEST=test/mjsunit/string-external-cached.js Review URL: http://codereview.chromium.org/8680010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10070 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Review URL: http://codereview.chromium.org/8698005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=yangguo@chromium.org TEST=mjsunit/keyed-call-ic Review URL: http://codereview.chromium.org/8688008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10068 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Review URL: http://codereview.chromium.org/8700004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10067 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Instead use the preparser inline to parse only the lazy function bodies. This is still disabled for small files. More measurements are needed to determine if lazy-compiling small sources is worth it. Review URL: http://codereview.chromium.org/8662037 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10066 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-