- 08 May, 2017 6 commits
-
-
jkummerow authored
It was replaced by more generic handling in 13206667, which is functionally fine, but for performance it makes sense to keep the fast path. Review-Url: https://codereview.chromium.org/2864463004 Cr-Commit-Position: refs/heads/master@{#45155}
-
Jochen Eisinger authored
Also make the macro name more scary, so people don't add new calls BUG=v8:5830 R=jgruber@chromium.org Change-Id: I06760110b7f0429d7775345b414c75c8df5e503a Reviewed-on: https://chromium-review.googlesource.com/497451Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jochen Eisinger <jochen@chromium.org> Cr-Commit-Position: refs/heads/master@{#45154}
-
Clemens Hammacher authored
In its destructor, the ErrorThrower already reifies exceptions and throws them if an error has been set. R=mtrofin@chromium.org Change-Id: I17d7a6d300fe4a5860431f214746d053eaf9f104 Reviewed-on: https://chromium-review.googlesource.com/497467 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#45153}
-
Michael Achenbach authored
TBR=tebbi@chromium.org Bug: v8:6346 Change-Id: Iea45ebaff908eb8a12ee51e220b0554241c049be Reviewed-on: https://chromium-review.googlesource.com/497753Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#45152}
-
Loo Rong Jie authored
Bug:v8:5510 R=yangguo@chromium.org,jgruber@chromium.org Change-Id: Ieb355110bd858efe2495a6271ffeda67d41af129 Reviewed-on: https://chromium-review.googlesource.com/497153Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Loo Rong Jie <loorongjie@gmail.com> Cr-Commit-Position: refs/heads/master@{#45151}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/99d7dc3..ab75dcc TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Change-Id: I280f5a79a9a44e856212acd93def75ad28b077d5 Reviewed-on: https://chromium-review.googlesource.com/498389Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#45150}
-
- 07 May, 2017 1 commit
-
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/225def8..99d7dc3 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Change-Id: If91d8fc6564ceb72f9bbe62be86d51d0913bf5df Reviewed-on: https://chromium-review.googlesource.com/497952Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#45149}
-
- 06 May, 2017 2 commits
-
-
kschimpf authored
History has shown that 99.93% (or more) of all memory allocations are less than 1 megabyte, and they all appear in the same UMA stat entry. To give perspective, the entry for <= 1Mb is about 20,000 times larger than any other entry in the table. This makes the distribution in the table hard to see. And, for allocation failures at this size, the percentage of failures (when compared to number of requests) is soo small (millions to one) that little data can be gleamed from the <= 1Mb entry. Note: requires CL https://codereview.chromium.org/2867483002 BUG=chrome:704922 R=bradnelson@chromium.org, bbudge@chromium.org, isherman@chromium.org Review-Url: https://codereview.chromium.org/2856663002 Cr-Commit-Position: refs/heads/master@{#45148}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/0fffbdf..225def8 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/d9a6925..ada8f7c Rolling v8/third_party/icu: https://chromium.googlesource.com/chromium/deps/icu/+log/b34251f..4b06aad TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Change-Id: I526c70a04bf757705c94096591756023d4b432d9 Reviewed-on: https://chromium-review.googlesource.com/497595Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#45147}
-
- 05 May, 2017 30 commits
-
-
jkummerow authored
After the recent fast-property deletion changes, there can be a non-empty out-of-object backing store (that previously held properties) even though the next double property will be stored in-object. BUG=chromium:718779 Review-Url: https://codereview.chromium.org/2861093004 Cr-Commit-Position: refs/heads/master@{#45146}
-
mvstanton authored
As a first step towards improving generator creation, create a builtin that can do it without a call to the runtime. Thread that builtin into the interpreter via an intrinsic. BUG=v8:6352 R=bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2861983002 Cr-Commit-Position: refs/heads/master@{#45145}
-
ulan authored
The concurrent marker now colors objects grey and black using the atomic markbit operations. The heap visitor is changed in two ways: 1) It iterates the map pointer of each object. 2) It guards object visitation with a predicate, which is overridden in the concurrent marker with the result of GreyToBlack transition. BUG=chromium:694255 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_rel_ng Review-Url: https://codereview.chromium.org/2866473003 Cr-Commit-Position: refs/heads/master@{#45144}
-
jgruber authored
At this point, last_index is definitely a canonicalized non-negative number, which implies that any non-Smi last_index is greater than the maximal string length. That in turn means that the matcher will definitely fail, and we can avoid the expensive runtime call. BUG=v8:6365,v8:6344 Review-Url: https://codereview.chromium.org/2863643004 Cr-Commit-Position: refs/heads/master@{#45143}
-
ochang authored
Adds a flag (--disable-in-process-stack-traces) to not install signal handlers so that e.g. ASan signal handlers will work. This flag mirrors chromium's one. R=jochen@chromium.org BUG=chromium:716235 Review-Url: https://codereview.chromium.org/2854173002 Cr-Commit-Position: refs/heads/master@{#45142}
-
jgruber authored
This CL migrates the CPP builtin to CSA with fast paths for strings that can be unpacked to direct one-byte strings. Short strings are handled directly in CSA, others need to call into C for conversion. Microbenchmarks for "abcd".toLowerCase() show speedups of 2.5x. BUG=v8:6353,v8:6344 Review-Url: https://codereview.chromium.org/2859203002 Cr-Commit-Position: refs/heads/master@{#45141}
-
jkummerow authored
Forcing an object into dictionary mode now requires deleting a property that's not the last property. BUG=chromium:718816 NOTRY=true Review-Url: https://codereview.chromium.org/2860403002 Cr-Commit-Position: refs/heads/master@{#45140}
-
ulan authored
Currently the VisitObject function iterates the object and then colors it black. This does not work well with concurrent marking. The function should instead first try to mark the object black and iterate its body only if the color transition succeeds. BUG=chromium:694255 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_rel_ng Review-Url: https://codereview.chromium.org/2863933002 Cr-Commit-Position: refs/heads/master@{#45139}
-
ulan authored
concurrent marking is enabled. This patch adds kAtomicity flag to IncrementalMarking that is set depending on the concurrent marking compile time flag. BUG=chromium:694255 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_rel_ng Review-Url: https://codereview.chromium.org/2858343003 Cr-Commit-Position: refs/heads/master@{#45138}
-
Ilija.Pavlovic authored
With this adaptation build V8 in Debug mode will be finished without error messages. TEST= BUG= Review-Url: https://codereview.chromium.org/2861143002 Cr-Commit-Position: refs/heads/master@{#45137}
-
ulan authored
Now non-atomic color transition operations return a boolean indicating whether the transition succeeded or not. This allows to replace color check and transition operations with a single transition operation. For example: if (IsWhite(object)) { WhiteToBlack(object); Foo(); } becomes if (WhiteToBlack(object)) { Foo(); } BUG=chromium:694255 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_rel_ng Review-Url: https://codereview.chromium.org/2863703004 Cr-Commit-Position: refs/heads/master@{#45136}
-
Mythri authored
CodeStubAssembler::StrictEqual is modified to collect type feedback when requested (https://chromium-review.googlesource.com/c/483399/). There are a couple of Gotos introduced in that cl, which are only necessary when collecting type feedback. Changed it to generate these Gotos only whencollecting type feedback. Bug: v8:4280 Change-Id: I322a6065efcfb601bd9f5dc25be6e6bb00b2d1c0 Reviewed-on: https://chromium-review.googlesource.com/496268Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#45135}
-
Michael Starzinger authored
R=clemensh@chromium.org TEST=mjsunit/asm/regress-718745 BUG=chromium:718745 Change-Id: I4d31e90d7a2bbb1d07ce946682a95582f63c7e27 Reviewed-on: https://chromium-review.googlesource.com/497469Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45134}
-
Toon Verwaest authored
Bug: v8:6364,v8:6344 Change-Id: I13bf1ec89a17c64b38b757694ee8b7df30d4f45f Reviewed-on: https://chromium-review.googlesource.com/497428 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#45133}
-
Wiktor Garbacz authored
Formal parameters of an arrow function are parsed even if the function itself is preparsed. It is because we don't know if it is an arrow function parameter list or just comma separated expression list. When we parse: (a, b = (function c() { return a; })()) call to function c may be just part of an assignment in an expression list, but if it's followed by: => { return b; } It is an arrow function and the call to c is a default parameter. Before we see the arrow we might have already created a parse task to parse function c. BUG=v8:6093 Change-Id: I59a59acfdbbfd808dab1518060748be2addcd54a Reviewed-on: https://chromium-review.googlesource.com/493347 Commit-Queue: Wiktor Garbacz <wiktorg@google.com> Reviewed-by: Marja Hölttä <marja@chromium.org> Reviewed-by: Daniel Vogelheim <vogelheim@chromium.org> Cr-Commit-Position: refs/heads/master@{#45132}
-
Tobias Tebbi authored
Bug: Change-Id: I4fbdb402ecc0403edafaba8ae910e28f3808d3f8 Reviewed-on: https://chromium-review.googlesource.com/497470 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45131}
-
Clemens Hammacher authored
Instead of explicitly instantiating six copies of each function for zero to five arguments, define them as variadic template. This avoids the arbitrary limit to five arguments, and avoids lots of code duplication. Drive-by fix: [iwyu] Add missing include. R=mstarzinger@chromium.org Change-Id: Id7edde3611ddfade16c7afbbf4b9000cedd76468 Reviewed-on: https://chromium-review.googlesource.com/496247Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#45130}
-
Michael Starzinger authored
R=clemensh@chromium.org TEST=message/asm-import-wrong-object BUG=chromium:718653 Change-Id: Ib903d7041ffb6a67c1b3c7be3e0f9455229acd90 Reviewed-on: https://chromium-review.googlesource.com/497747Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45129}
-
hpayer authored
BUG=chromium:718484 Review-Url: https://codereview.chromium.org/2863943002 Cr-Commit-Position: refs/heads/master@{#45128}
-
ulan authored
Revert of [heap] Reland "Make non-atomic markbit operations consistent with atomic ones." (patchset #2 id:20001 of https://codereview.chromium.org/2860323003/ ) Reason for revert: box2d failures on buildbot Original issue's description: > [heap] Reland "Make non-atomic markbit operations consistent with atomic ones." > > Now non-atomic color transition operations return a boolean indicating > whether the transition succeeded or not. > > This allows to replace color check and transition operations with a > single transition operation. For example: > > if (IsWhite(object)) { > WhiteToBlack(object); > Foo(); > } > > becomes > > if (WhiteToBlack(object)) { > Foo(); > } > > BUG=chromium:694255 > > CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_rel_ng > > Review-Url: https://codereview.chromium.org/2860323003 > Cr-Commit-Position: refs/heads/master@{#45123} > Committed: https://chromium.googlesource.com/v8/v8/+/c0a65cd295301f334e2bbfcce46a937cd708beec TBR=mlippautz@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:694255 Review-Url: https://codereview.chromium.org/2863953002 Cr-Commit-Position: refs/heads/master@{#45127}
-
Ilija.Pavlovic authored
This adaptation will allow build v8 when the component is defined as shared library. Without this, at linking phase of the unittests will be displayed error messages for undefined references. TEST= BUG= Review-Url: https://codereview.chromium.org/2853483002 Cr-Commit-Position: refs/heads/master@{#45126}
-
Michael Starzinger authored
This makes sure that only the "asm-js.h" header is exposed to outside the directory holding the asm.js validator. It ensures that internals don't leak out of that component, unless they are explicitly exposed through the defined interface. R=clemensh@chromium.org BUG=v8:6127 Change-Id: I7c41782254cfce102af8edf4356205cfca904e60 Reviewed-on: https://chromium-review.googlesource.com/496147Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45125}
-
bmeurer authored
The collection builtins (Map, Set, WeakMap, WeakSet) are still written in JavaScript and make heavy use of %_ClassOf, which is kind of expensive compared to a simple instance type check. Change that to use simple instance type checks instead. R=jarin@chromium.org BUG=v8:6261,v8:6278,v8:6344 Review-Url: https://codereview.chromium.org/2814773005 Cr-Original-Commit-Position: refs/heads/master@{#45106} Committed: https://chromium.googlesource.com/v8/v8/+/28170099fd1efc84a724ef133f335fec521c0852 Review-Url: https://codereview.chromium.org/2814773005 Cr-Commit-Position: refs/heads/master@{#45124}
-
ulan authored
Now non-atomic color transition operations return a boolean indicating whether the transition succeeded or not. This allows to replace color check and transition operations with a single transition operation. For example: if (IsWhite(object)) { WhiteToBlack(object); Foo(); } becomes if (WhiteToBlack(object)) { Foo(); } BUG=chromium:694255 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_rel_ng Review-Url: https://codereview.chromium.org/2860323003 Cr-Commit-Position: refs/heads/master@{#45123}
-
Michael Achenbach authored
TBR=alph@chromium.org NOTRY=true Bug: v8:5193 Change-Id: Ie3d4e67314c80cd1806ba97ac1700b9a95918f73 Reviewed-on: https://chromium-review.googlesource.com/497748Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#45122}
-
Peter Marshall authored
length != offset. Bug: chromium:718285 Change-Id: I150af1473cb5180c242f3817b940fa1cf1c49cea Reviewed-on: https://chromium-review.googlesource.com/497727 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#45121}
-
Tobias Tebbi authored
When a virtual object passes by a store node that updates a field to the existing value, then the object and its state were not copied, which lead to the original object being passed on. If then later the store actually modifies and copies the virtual object, this new copy is not passed down the effect chain, so subsequent nodes still refer to the original virtual object and try to update it once new information flows in. This conflicts with updates on the node that originally created the virtual object, leading to divergence. Bug: v8:6345 Change-Id: Iab1ce98a60b48478b343eae765c80bdfcb8ba390 Reviewed-on: https://chromium-review.googlesource.com/496267 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#45120}
-
Michael Starzinger authored
R=clemensh@chromium.org BUG=v8:6127 Change-Id: I6a098151fef14c0c76c1762d99316a3ae7d12a8e Reviewed-on: https://chromium-review.googlesource.com/496266 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#45119}
-
https://codereview.chromium.org/2857713002Michael Achenbach authored
Revert "[heap] Make non-atomic markbit operations consistent with atomic ones." This reverts commit dd37366f Revert "[heap] Use atomic marking operations in incremental marking if" This reverts commit 1f2c3596 Revert "[heap] Prepare IncrementalMarking::VisitObject for concurrent marking." This reverts commit 00d1e2cf Revert "[heap] Use shared markbits in the concurrent marker." This reverts commit b0db0541 https://codereview.chromium.org/2857713002 blocks the current roll: https://codereview.chromium.org/2857423002/ Doesn't revert cleanly. NOTRY=true TBR=ulan@chromium.org Bug: chromium:694255 Change-Id: Iada35af5c2529cd9e604802700604b16cc30aa2d Reviewed-on: https://chromium-review.googlesource.com/497387Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#45118}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/cef928f..0fffbdf Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/0d00147..d9a6925 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/dc087f5..ae881aa TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Change-Id: I0b4fc50a1ad132b27b2fc484c75ab70995b73a38 Reviewed-on: https://chromium-review.googlesource.com/497286Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#45117}
-
- 04 May, 2017 1 commit
-
-
Daniel Ehrenberg authored
New test262 tests bring up a couple cases with async arrow functions that V8 didn't seem to handle properly; this patch makes those cases errors: - async (...x,) => y -- Rest parameter must be last formal parameter - async (...x = z) => y -- No default value for rest parameter - async (...x, y) => z -- Rest parameter must be last formal parameter Bug: v8:4483, v8:5051 Change-Id: I024d9ba0c854e8e5e75283df2ee53127b1be090d Reviewed-on: https://chromium-review.googlesource.com/496057 Commit-Queue: Daniel Ehrenberg <littledan@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Caitlin Potter <caitp@igalia.com> Cr-Commit-Position: refs/heads/master@{#45116}
-