- 12 Jul, 2016 2 commits
-
-
cbruni authored
Revert of making heap verification more aggressive (patchset #7 id:120001 of https://codereview.chromium.org/2126613002/ ) Reason for revert: failing gc stress tests: https://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress/builds/7223/steps/Mjsunit/logs/stdio Original issue's description: > [runtime] making heap verification more aggressive > > - check that packed elements do not contain the_hole (with fix) > - verify argument objects with elements kind > - use JSObjectVerifiy in all JSObject "subclasses" > - change initialization order for ArrayLiteralBoilerplate to simplify verification > > BUG=v8:5188 > > Committed: https://crrev.com/599aa2e106ca8ab79f5cc489d1b93b6a26b19714 > Cr-Commit-Position: refs/heads/master@{#37680} TBR=ishell@chromium.org,ulan@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5188 Review-Url: https://codereview.chromium.org/2140163002 Cr-Commit-Position: refs/heads/master@{#37682}
-
cbruni authored
- check that packed elements do not contain the_hole (with fix) - verify argument objects with elements kind - use JSObjectVerifiy in all JSObject "subclasses" - change initialization order for ArrayLiteralBoilerplate to simplify verification BUG=v8:5188 Review-Url: https://codereview.chromium.org/2126613002 Cr-Commit-Position: refs/heads/master@{#37680}
-
- 14 Jun, 2016 1 commit
-
-
cbruni authored
Reland of place all remaining Oddball checks with new function (patchset #1 id:1 of https://codereview.chromium.org/2060213002/ ) Reason for revert: Cannot reproduce gc-stress failures locally. Original issue's description: > Revert of Replace all remaining Oddball checks with new function (patchset #10 id:180001 of https://codereview.chromium.org/2043183003/ ) > > Reason for revert: > failing tests > > Original issue's description: > > Replace all remaining Oddball checks with new function > > > > This CL removes the IsUndefined() and Co. methods from Object and HeapObject. > > The new method all take the isolate as parameter. > > > > BUG= > > > > Committed: https://crrev.com/ccefb3ae5fe967288d568013fb04e8761eafebc5 > > Cr-Commit-Position: refs/heads/master@{#36921} > > TBR=mstarzinger@chromium.org,verwaest@chromium.org,yangguo@chromium.org,ahaas@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG= > > Committed: https://crrev.com/33b8bc24a12fb062100c0be84456faeb0b9fa5d1 > Cr-Commit-Position: refs/heads/master@{#36923} TBR=mstarzinger@chromium.org,verwaest@chromium.org,yangguo@chromium.org,ahaas@chromium.org BUG= Review-Url: https://codereview.chromium.org/2059173002 Cr-Commit-Position: refs/heads/master@{#36957}
-
- 13 Jun, 2016 2 commits
-
-
cbruni authored
Revert of Replace all remaining Oddball checks with new function (patchset #10 id:180001 of https://codereview.chromium.org/2043183003/ ) Reason for revert: failing tests Original issue's description: > Replace all remaining Oddball checks with new function > > This CL removes the IsUndefined() and Co. methods from Object and HeapObject. > The new method all take the isolate as parameter. > > BUG= > > Committed: https://crrev.com/ccefb3ae5fe967288d568013fb04e8761eafebc5 > Cr-Commit-Position: refs/heads/master@{#36921} TBR=mstarzinger@chromium.org,verwaest@chromium.org,yangguo@chromium.org,ahaas@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review-Url: https://codereview.chromium.org/2060213002 Cr-Commit-Position: refs/heads/master@{#36923}
-
cbruni authored
This CL removes the IsUndefined() and Co. methods from Object and HeapObject. The new method all take the isolate as parameter. BUG= Review-Url: https://codereview.chromium.org/2043183003 Cr-Commit-Position: refs/heads/master@{#36921}
-
- 08 Jun, 2016 1 commit
-
-
mstarzinger authored
This removes explicit uses of the RUNTIME_ASSERT macro from some runtime methods. The implicit ones in CONVERT_FOO_ARG_CHECKED will be addressed in a separate CL for all runtime modules at once. R=verwaest@chromium.org BUG=v8:5066 Review-Url: https://codereview.chromium.org/2041353003 Cr-Commit-Position: refs/heads/master@{#36815}
-
- 06 Jun, 2016 2 commits
-
-
cbruni authored
Passing in the isolate and pointer compare the instnance against the corresponding constant is always faster than decoding the instance types. BUG= Review-Url: https://codereview.chromium.org/2028983002 Cr-Commit-Position: refs/heads/master@{#36744}
-
mstarzinger authored
This removes the macro in question form the utility header. In the long run we want to convert all RUNTIME_ASSERTs to CHECKs, now that runtime functions are no longer fuzzed directly. This is just a first step. R=bmeurer@chromium.org BUG=v8:5066 Review-Url: https://codereview.chromium.org/2038013002 Cr-Commit-Position: refs/heads/master@{#36735}
-
- 24 May, 2016 1 commit
-
-
yangguo authored
R=franzih@chromium.org Review-Url: https://codereview.chromium.org/2006673002 Cr-Commit-Position: refs/heads/master@{#36470}
-
- 08 Apr, 2016 1 commit
-
-
mvstanton authored
It's such a corner case. BUG= Review URL: https://codereview.chromium.org/1865013002 Cr-Commit-Position: refs/heads/master@{#35346}
-
- 17 Mar, 2016 1 commit
-
-
cbruni authored
HandleScopes in for-loops are rather expensive and pose a significant overhead to some builtin/runtime-functions. The FOR_WITH_HANDLE_SCOPE macro is used to only create a new HandleScope every 1024th iteration. BUG= Review URL: https://codereview.chromium.org/1785403002 Cr-Commit-Position: refs/heads/master@{#34856}
-
- 08 Mar, 2016 2 commits
-
-
verwaest authored
This mechanism was used to ensure that functions ended up as constants on the map of prototypes defined using object literals, e.g.,: function.prototype = { method: function() { ... } } Nowadays we treat prototypes specially, and make all their functions constants when an object turns prototype. Hence this special custom code isn't necessary anymore. This also affects boilerplates that do not become prototypes. Their functions will not be constants but fields instead. Calling their methods will slow down. However, multiple instances of the same boilerplate will stay monomorphic. We'll have to see what the impact is for such objects, but preliminary benchmarks do not show this as an important regression. BUG=chromium:593008 LOG=n Review URL: https://codereview.chromium.org/1772423002 Cr-Commit-Position: refs/heads/master@{#34602}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1768203002 Cr-Commit-Position: refs/heads/master@{#34582}
-
- 01 Mar, 2016 1 commit
-
-
mstarzinger authored
R=bmeurer@chromium.org BUG=v8:3956 LOG=n Review URL: https://codereview.chromium.org/1731063007 Cr-Commit-Position: refs/heads/master@{#34398}
-
- 26 Feb, 2016 1 commit
-
-
mstarzinger authored
R=bmeurer@chromium.org BUG=v8:3956 LOG=n Review URL: https://codereview.chromium.org/1734243004 Cr-Commit-Position: refs/heads/master@{#34333}
-
- 18 Jan, 2016 1 commit
-
-
bmeurer authored
The runtime function is no longer used and obsolete by now. R=jarin@chromium.org Review URL: https://codereview.chromium.org/1598113003 Cr-Commit-Position: refs/heads/master@{#33350}
-
- 11 Dec, 2015 1 commit
-
-
bmeurer authored
No need to have an indirection to get to the initial JSArray maps from the native context; we only cache the fast elements maps anyway, so those could live on the native context directly. This will also integrate nicely with the load/store propagation in TurboFan (once we propagate the immutable flag for FieldAccess as well). Drive-by-fix: Also don't embed any of the initial JSArray maps in TurboFan generated code when allocating a new JSArray, but instead always load the appropriate map from the native context. This way we ensure that we never leak a reference to one of those maps and its as efficient as embedding a constant map. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1516433005 Cr-Commit-Position: refs/heads/master@{#32779}
-
- 26 Nov, 2015 1 commit
-
-
rossberg authored
Moves all files related to AST and scopes into ast/, and all files related to scanner & parser to parsing/. Also eliminates a couple of spurious dependencies. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1481613002 Cr-Commit-Position: refs/heads/master@{#32351}
-
- 25 Nov, 2015 2 commits
-
-
bmeurer authored
ES6 section 12.2.8.1 states that flags for regular expression literals must be checked during parsing and invalid flags are early errors. This change adapts the Scanner and (Pre)Parser to act according to the spec. This is also a prerequisite to unify the handling of literal creation (for Objects, Arrays, Regexps, and at some point Classes). R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1472323002 Cr-Commit-Position: refs/heads/master@{#32273}
-
bmeurer authored
This is the initial step towards refactoring the regexp literation creation code to make it less obscure and more similar to the mechanism we use to create array and object literals. There's now a new runtime entry %CreateRegExpLiteral with the same interface as the entries for array and object literals, except that we still pass the flags as string. Instead of embedding the hand written native to clone JSRegExp instances we now have a FastCloneRegExpStub, which behaves similar to the other FastCloneShallowArrayStub and FastCloneShallowObjectStub that we already had. R=mlippautz@chromium.org, yangguo@chromium.org Review URL: https://codereview.chromium.org/1475823003 Cr-Commit-Position: refs/heads/master@{#32255}
-
- 24 Nov, 2015 1 commit
-
-
bmeurer authored
Change the runtime entries and their associated code stubs for object and array literal creation to take the closure instead of the raw literals pointer. This is way easier to deal with (and cleaner) in TurboFan. R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1469833005 Cr-Commit-Position: refs/heads/master@{#32220}
-
- 29 Sep, 2015 1 commit
-
-
mvstanton authored
The LiteralsArray will soon hold a type feedback vector. Code treats it as an ordinary fixed array, and needs to stop that. BUG= Review URL: https://codereview.chromium.org/1374723002 Cr-Commit-Position: refs/heads/master@{#31000}
-
- 07 Sep, 2015 1 commit
-
-
cbruni authored
BUG= Review URL: https://codereview.chromium.org/1307743011 Cr-Commit-Position: refs/heads/master@{#30614}
-
- 01 Sep, 2015 1 commit
-
-
mstarzinger authored
This CL us a pure refactoring that makes an empty compilation unit including just "isolate.h" or "contexts.h" but not "objects-inl.h" compile without warnings or errors. This is needed to further reduce the header dependency tangle. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1322883002 Cr-Commit-Position: refs/heads/master@{#30500}
-
- 18 Aug, 2015 1 commit
-
-
mstarzinger authored
R=titzer@chromium.org Review URL: https://codereview.chromium.org/1293053004 Cr-Commit-Position: refs/heads/master@{#30232}
-
- 26 Jun, 2015 1 commit
-
-
oth authored
v8 builds with --no-snap were hitting handle limits compiling natives for handle count unit tests that run with --check_handle_count. Patch now has higher handle limits (~4k more than required for failing natives compilation). Original issue: https://codereview.chromium.org/1185633002/ Original issue's description: > Additional HandleScopes to limit Handle consumption. > > erikcorry@chromium.org suggested digging into v8 handle usage. Found potential scopes in ast.cc and runtime-literals.cc and added tests. > > The runtime-literals.cc change reduces peak handles in imaging-darkroom.js from 1,282,610 to 428,218. The ast.cc change reduces the peak handles in string-t agcloud.js from 80,738 to 8,176. > > No significant handle count issues found with major websites, but substantial savings on some benchmarks and demos: > > Kraken's imaging-darkroom.js down from 1,282,610 to 428,218 due to runtime-literals.cc scope. > SunSpider's string-tagcloud.js down from 80,738 to 8.176 due to ast.cc > > http://www.flohofwoe.net/demos/dragons_asmjs.html (738,906 -> 478,296) > http://www.flohofwoe.net/demos/instancing_asmjs.html (737,884 -> 477,274) > https://dl.dropboxusercontent.com/u/16662598/Ports/DOSBox-web/doom.html?engine=dosbox-growth.js (1,724,114 -> 1,087,408) > https://kripken.github.io/ammo.js/examples/new/ammo.html (175,784 -> 142,058) > > BUG= > > Committed: https://crrev.com/3a4c7538839186aa38910c66c986abb563f4ccd2 > Cr-Commit-Position: refs/heads/master@{#29155} BUG= Review URL: https://codereview.chromium.org/1192743005 Cr-Commit-Position: refs/heads/master@{#29322}
-
- 19 Jun, 2015 2 commits
-
-
arv authored
Revert of Additional HandleScopes to limit Handle consumption. (patchset #4 id:50001 of https://codereview.chromium.org/1185633002/) Reason for revert: Fails the following test handle-count-ast handle-count-runtime-... on V8 Linux - nosnap - debug - 1 http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug%20-%201/builds/851/steps/Check/logs/stdio Original issue's description: > Additional HandleScopes to limit Handle consumption. > > erikcorry@chromium.org suggested digging into v8 handle usage. Found potential scopes in ast.cc and runtime-literals.cc and added tests. > > The runtime-literals.cc change reduces peak handles in imaging-darkroom.js from 1,282,610 to 428,218. The ast.cc change reduces the peak handles in string-tagcloud.js from 80,738 to 8,176. > > No significant handle count issues found with major websites, but substantial savings on some benchmarks and demos: > > Kraken's imaging-darkroom.js down from 1,282,610 to 428,218 due to runtime-literals.cc scope. > SunSpider's string-tagcloud.js down from 80,738 to 8.176 due to ast.cc > > http://www.flohofwoe.net/demos/dragons_asmjs.html (738,906 -> 478,296) > http://www.flohofwoe.net/demos/instancing_asmjs.html (737,884 -> 477,274) > https://dl.dropboxusercontent.com/u/16662598/Ports/DOSBox-web/doom.html?engine=dosbox-growth.js (1,724,114 -> 1,087,408) > https://kripken.github.io/ammo.js/examples/new/ammo.html (175,784 -> 142,058) > > BUG= > > Committed: https://crrev.com/3a4c7538839186aa38910c66c986abb563f4ccd2 > Cr-Commit-Position: refs/heads/master@{#29155} TBR=yangguo@chromium.org,erikcorry@chromium.org,oth@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1194873004 Cr-Commit-Position: refs/heads/master@{#29160}
-
oth authored
erikcorry@chromium.org suggested digging into v8 handle usage. Found potential scopes in ast.cc and runtime-literals.cc and added tests. The runtime-literals.cc change reduces peak handles in imaging-darkroom.js from 1,282,610 to 428,218. The ast.cc change reduces the peak handles in string-tagcloud.js from 80,738 to 8,176. No significant handle count issues found with major websites, but substantial savings on some benchmarks and demos: Kraken's imaging-darkroom.js down from 1,282,610 to 428,218 due to runtime-literals.cc scope. SunSpider's string-tagcloud.js down from 80,738 to 8.176 due to ast.cc http://www.flohofwoe.net/demos/dragons_asmjs.html (738,906 -> 478,296) http://www.flohofwoe.net/demos/instancing_asmjs.html (737,884 -> 477,274) https://dl.dropboxusercontent.com/u/16662598/Ports/DOSBox-web/doom.html?engine=dosbox-growth.js (1,724,114 -> 1,087,408) https://kripken.github.io/ammo.js/examples/new/ammo.html (175,784 -> 142,058) BUG= Review URL: https://codereview.chromium.org/1185633002 Cr-Commit-Position: refs/heads/master@{#29155}
-
- 11 Jun, 2015 1 commit
-
-
verwaest authored
BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1172683003 Cr-Commit-Position: refs/heads/master@{#28946}
-
- 22 May, 2015 1 commit
-
-
rossberg authored
Also, add more literal tests. R=dslomov@chromium.org BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1145213005 Cr-Commit-Position: refs/heads/master@{#28579}
-
- 20 May, 2015 2 commits
-
-
erikcorry authored
R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/1143133002 Cr-Commit-Position: refs/heads/master@{#28502}
-
rossberg authored
(patchset #4 id:60001 of https://codereview.chromium.org/1134333005/)" This reverts commit 81c080ef. Patchset #1 is the original CL. Patchset #2 fixes a handlification bug that caused the crash. R=dslomov@chromium.org BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1143813002 Cr-Commit-Position: refs/heads/master@{#28497}
-
- 19 May, 2015 1 commit
-
-
machenbach authored
Revert of [strong] Object literals create strong objects (patchset #4 id:60001 of https://codereview.chromium.org/1134333005/) Reason for revert: [Sheriff] Segmentation fault on arm64 with nosnap: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20nosnap%20-%20debug%20-%201/builds/1990 Original issue's description: > [strong] Object literals create strong objects > > R=dslomov@chromium.org > BUG=v8:3956 > LOG=N > > Committed: https://crrev.com/fe6598cffb82ec4180dcc2e2310e77d07a803f96 > Cr-Commit-Position: refs/heads/master@{#28444} TBR=dslomov@chromium.org,arv@chromium.org,rossberg@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3956 Review URL: https://codereview.chromium.org/1135493006 Cr-Commit-Position: refs/heads/master@{#28464}
-
- 18 May, 2015 1 commit
-
-
rossberg authored
R=dslomov@chromium.org BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1134333005 Cr-Commit-Position: refs/heads/master@{#28444}
-
- 30 Mar, 2015 1 commit
-
-
mvstanton authored
A bug allows JSObject literals with elements to have the elements in the boilerplate modified. BUG=466993 LOG=N Review URL: https://codereview.chromium.org/1037273002 Cr-Commit-Position: refs/heads/master@{#27511}
-
- 25 Feb, 2015 1 commit
-
-
verwaest authored
Remove NativeContext from Literal array, since we always create the literals in the native context of the current closure. BUG= Review URL: https://codereview.chromium.org/952303002 Cr-Commit-Position: refs/heads/master@{#26867}
-
- 10 Nov, 2014 1 commit
-
-
ishell@chromium.org authored
MapCache simplification. It is now a FixedArray that maps number of properties to a WeakCell with a Map. R=verwaest@chromium.org Review URL: https://codereview.chromium.org/712943002 Cr-Commit-Position: refs/heads/master@{#25253} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25253 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Nov, 2014 1 commit
-
-
jkummerow@chromium.org authored
R=verwaest@chromium.org Review URL: https://codereview.chromium.org/694533003 Cr-Commit-Position: refs/heads/master@{#25219} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25219 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Sep, 2014 1 commit
-
-
yangguo@chromium.org authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/612383002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24323 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-