- 12 Jul, 2017 17 commits
-
-
Clemens Hammacher authored
In most cases, this does not matter, especially if assigning to the source variable again: x = Abs(x) But there are cases where it matters, e.g. when being used as argument to a template function: DCHECK_EQ(x, Abs(x)); which would currently *not* fail for x==kMinInt. R=tebbi@chromium.org Change-Id: Ia5abfe164db602b80a34548e0bf9b22033b77c6e Reviewed-on: https://chromium-review.googlesource.com/568028Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#46586}
-
Michael Starzinger authored
This makes sure the inline allocation of generator objects only shrinks initial maps when slack tracking is actually in progress. Shrinking all unused properties unconditionally is bogus because instances using them might have become unreachable and collected by the GC. R=mvstanton@chromium.org TEST=mjsunit/regress/regress-crbug-741078 BUG=chromium:741078 Change-Id: Iaf2f08a4fa82c820a945bf012d24c760a6b4f514 Reviewed-on: https://chromium-review.googlesource.com/567982Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46585}
-
Daniel Ehrenberg authored
In certain timezones, being at noon UTC doesn't guarantee that you'll be the same day in local time. This patch fixes that false assumption. Thanks to Holmes He for reporting the issue. Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I7432c0eb1e13fdf11c665e59dabaebeb79bff8c8 Reviewed-on: https://chromium-review.googlesource.com/568021Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Daniel Ehrenberg <littledan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46584}
-
Ulan Degenbaev authored
Change-Id: Id73c2c3a8b19c3e398d7de760dffe95e0e8b49a4 Reviewed-on: https://chromium-review.googlesource.com/566836Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46583}
-
Georg Neis authored
This is a reland of 66b54ab1 Original change's description: > [compiler] Move the main pipeline's code assembly pass into the background. > > R=bmeurer@chromium.org > > Bug: v8:6048 > Change-Id: I60bc35c02b5460416c3b0e2872fc72ebf9b808a5 > Reviewed-on: https://chromium-review.googlesource.com/563386 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Commit-Queue: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46499} TBR=bmeurer@chromium.org Bug: v8:6048 Change-Id: Ifcdd660dd69c6c4c1bc628961f4180a0b6ea4d9f Reviewed-on: https://chromium-review.googlesource.com/567061Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46582}
-
Georg Neis authored
TF will instantiate the Assembler when we're already on a background thread, so it's not safe to read out the heap's max_old_generation_size (it can change). This CL simply removes the use of that value from the assembler. If the buffer gets too large we will fail when creating the actual code object. Bug: v8:6048 Change-Id: Ifb8a64c90222e4516117d237b001779fae060d28 Reviewed-on: https://chromium-review.googlesource.com/567921Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46581}
-
Michael Achenbach authored
TBR=neis@chromium.org Change-Id: I59903a40c1ca47cce3e5744c51a2abda93e45dad Reviewed-on: https://chromium-review.googlesource.com/567931Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#46580}
-
Pierre Langlois authored
It seems there was a typo which meant we didn't generate any code for 32 and 128 bit slot to slot moves. Bug: Change-Id: Ia6982ec92471d16541d8ee873e1de33e4f46e77a Reviewed-on: https://chromium-review.googlesource.com/566812Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#46579}
-
Michael Lippautz authored
Various Scavenger fixes for smaller issues that accumulated over the last years. Bug: chromium:738865 Change-Id: I7573e438eba030944b99c65807944c662526a171 Reviewed-on: https://chromium-review.googlesource.com/567190 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46578}
-
Michael Lippautz authored
Bug: chromium:738865 Change-Id: Iffa80389def41cf03719c01b56f7971612367660 Reviewed-on: https://chromium-review.googlesource.com/567154Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46577}
-
Michael Lippautz authored
Bug: chromium:738865 Change-Id: I53f82a459a82057486dcba26696fadebf7befcf7 Reviewed-on: https://chromium-review.googlesource.com/567156Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46576}
-
Michael Starzinger authored
This introduces 2^16 as an upper limit for the allowed value range of a table switch on all architectures. It also fixes several overflows in the table size calculation. R=bmeurer@chromium.org TEST=mjsunit/regress/regress-crbug-736633 BUG=chromium:736633 Change-Id: I931bd226c99eb8a1ae1770c159fc314ff650bf57 Reviewed-on: https://chromium-review.googlesource.com/566829Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46575}
-
jgruber authored
Previously (since f0e95769), this toLowerCase fast-path assumed it would only see one-byte flat contents. Unfortunately, it's possible to have a one-byte sliced string that has a two-byte parent. This CL ensures that String.p.toLowerCase handles such cases correctly. BUG=chromium:736451 Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: Iae056b3db5535bb5665439a5cc8282a51571a548 Reviewed-on: https://chromium-review.googlesource.com/565559Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#46574}
-
Alexey Kozyatinskiy authored
Console methods should never throw an exception. R=jgruber@chromium.org Bug: chromium:736302 Change-Id: I05791b366d46a43b2a78825cbb8a82bb049110e6 Reviewed-on: https://chromium-review.googlesource.com/567434Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#46573}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/6ada47b..7e59b44 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/b708a0d..08d8c9f TBR=machenbach@chromium.org,hablich@chromium.org Change-Id: I8dd5b454dae8273252f2b8404db2f25da71ef9c8 Reviewed-on: https://chromium-review.googlesource.com/567707Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#46572}
-
Adam Klein authored
Change-Id: I48adcad748a84dccbd542739f436dccfd6adca1d Reviewed-on: https://chromium-review.googlesource.com/567725Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#46571}
-
Adam Klein authored
NOTREECHECKS=true Change-Id: I4ebd05d41d524ac0583b507fcdf7d4c15136d3b8 Reviewed-on: https://chromium-review.googlesource.com/567548Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#46570}
-
- 11 Jul, 2017 23 commits
-
-
Sathya Gunasekaran authored
This patch changes the backing store of slow properties to be a new instance type called PropertyArray. Currently the only difference between this and a FixedArray is the map. A future patch will change the length property to store the hash code. Bug: v8:5717, v8:6404 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Iaebc98f42e6d93c1392772e6f837787beb64afec Reviewed-on: https://chromium-review.googlesource.com/539028Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#46569}
-
Camillo Bruni authored
Change-Id: Id3989d09f6adfb934842a9b0761d811117d69993 Reviewed-on: https://chromium-review.googlesource.com/567003 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46568}
-
Michael Achenbach authored
This reverts commit 82451d45. Reason for revert: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/16923 Original change's description: > [inspector] doesn't run user code to stringify console method arg > > Otherwise user code can produce an exception and we will crash. > > R=jakob@chromium.org > > Bug: chromium:736302 > Change-Id: I078150909b0348a63e8c375b508e34fc4751b4ab > Reviewed-on: https://chromium-review.googlesource.com/565628 > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46566} TBR=kozyatinskiy@chromium.org,jgruber@chromium.org,jakob@chromium.org Change-Id: I6d7e06fad2ab6c1c894c199fe7b3b6afb2930734 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:736302 Reviewed-on: https://chromium-review.googlesource.com/567060Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#46567}
-
Alexey Kozyatinskiy authored
Otherwise user code can produce an exception and we will crash. R=jakob@chromium.org Bug: chromium:736302 Change-Id: I078150909b0348a63e8c375b508e34fc4751b4ab Reviewed-on: https://chromium-review.googlesource.com/565628 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#46566}
-
Georg Neis authored
This reverts commit 7b080310. Reason for revert: There's still another issue. Original change's description: > Reland "[compiler] Move the main pipeline's code assembly pass into the background." > > This is a reland of 66b54ab1 > Original change's description: > > [compiler] Move the main pipeline's code assembly pass into the background. > > > > R=bmeurer@chromium.org > > > > Bug: v8:6048 > > Change-Id: I60bc35c02b5460416c3b0e2872fc72ebf9b808a5 > > Reviewed-on: https://chromium-review.googlesource.com/563386 > > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > > Commit-Queue: Georg Neis <neis@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#46499} > > TBR=bmeurer@chromium.org > > Bug: v8:6048 > Change-Id: Ic841abc893c96271dc4dec7a0d19ba6a8b39164e > Reviewed-on: https://chromium-review.googlesource.com/565140 > Reviewed-by: Georg Neis <neis@chromium.org> > Commit-Queue: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46563} TBR=neis@chromium.org Change-Id: I07ac9d44324d7cfed72531c7084bc8ba9ddef799 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6048 Reviewed-on: https://chromium-review.googlesource.com/567059Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46565}
-
Georg Neis authored
yield* always has an argument. R=rmcilroy@chromium.org Bug: Change-Id: I5d14c0db05b1e1b873831e0f5a18ec479c1399c9 Reviewed-on: https://chromium-review.googlesource.com/566816Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46564}
-
Georg Neis authored
This is a reland of 66b54ab1 Original change's description: > [compiler] Move the main pipeline's code assembly pass into the background. > > R=bmeurer@chromium.org > > Bug: v8:6048 > Change-Id: I60bc35c02b5460416c3b0e2872fc72ebf9b808a5 > Reviewed-on: https://chromium-review.googlesource.com/563386 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Commit-Queue: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46499} TBR=bmeurer@chromium.org Bug: v8:6048 Change-Id: Ic841abc893c96271dc4dec7a0d19ba6a8b39164e Reviewed-on: https://chromium-review.googlesource.com/565140Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46563}
-
Georg Neis authored
Port https://chromium-review.googlesource.com/563658. R=mvstanton@chromium.org Bug: v8:6048 Change-Id: Ic3e23d82a039a1bec7b328e79fefb0ea18a3b3f7 Reviewed-on: https://chromium-review.googlesource.com/566837Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46562}
-
Clemens Hammacher authored
After compiling a function, check that validation produces the same success/error result. R=ahaas@chromium.org Change-Id: I617881e125dccff485f5572557b19709de488d55 Reviewed-on: https://chromium-review.googlesource.com/565722Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#46561}
-
Ulan Degenbaev authored
BUG=chromium:694255 Change-Id: Iaaa7a493bfad8817fba288efd486a5a7e8b0a0fb Reviewed-on: https://chromium-review.googlesource.com/567005 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46560}
-
Georg Neis authored
Port https://chromium-review.googlesource.com/559674. R=bmeurer@chromium.org Bug: v8:6048 Change-Id: Ia419f174a342d19a8cbd3581b9cad6d24e0fbe19 Reviewed-on: https://chromium-review.googlesource.com/566834Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46559}
-
Juliana Franco authored
Change DoComputeInterpretedFrame to print the right bytecode offset, that is, it does not use header size and object tag. Bug: Change-Id: Ibdd16a9d1178b4c7487164676007c6b9fdb3a33a Reviewed-on: https://chromium-review.googlesource.com/566859 Commit-Queue: Juliana Patricia Vicente Franco <jupvfranco@google.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46558}
-
Camillo Bruni authored
Change-Id: I916696c1a15f1eaea1128b1d147bb3e5f50bca9a Reviewed-on: https://chromium-review.googlesource.com/567000 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#46557}
-
Michael Starzinger authored
This fixes the lowering of Reflect.getPrototypeOf and friends to not perform a [[ToObject]] coercion, but bailout instead. We ensure to exclude primitive values from the lowering. This makes the lowering uniform between "Reflect.getPrototypeOf" and "Object.getPrototypeOf". R=bmeurer@chromium.org TEST=mjsunit/regress/regress-crbug-740116 BUG=chromium:740116 Change-Id: If986ee2a3ae4e8f1fd227bdeb4668f523b0dea84 Reviewed-on: https://chromium-review.googlesource.com/565295Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46556}
-
Benedikt Meurer authored
Add support for fast - get Map.prototype.size - get Set.prototype.size by porting both the baseline implementation to the CodeStubAssembler and inlining a fast-path into TurboFan (when the compiler can infer the fact that the receiver is a proper JSCollection from the surrounding graph, i.e. from feedback gathered by a dominating LOAD_IC). R=yangguo@chromium.org Bug: v8:5269, v8:5717 Change-Id: Ie003fd2551462591273bcb8487b80808dcc6cd82 Reviewed-on: https://chromium-review.googlesource.com/566438 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#46555}
-
Ben L. Titzer authored
Bug: v8:5803 Change-Id: Ib5a4af363057d217a269b38ef5c54b0399a2aa55 Reviewed-on: https://chromium-review.googlesource.com/566803Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46554}
-
Ulan Degenbaev authored
BUG=chromium:694255 Change-Id: I8f134ee0871377fc52bba126297570c0453cdc8b Reviewed-on: https://chromium-review.googlesource.com/566827Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46553}
-
Alexandre Talon authored
Each reducer now has a virtual reducer_name function, returning its name (the name of the class containing this reducer). This gets displayed when using the --trace_turbo_reduction flag. Also when using this flags more messages are displayed. Actually when a node is replaced in-place (which is called an update of the node), other reducers can still update it right after the in-place replacement. When a node is really replaced (not in-place), then we stop trying to apply reducers to it before we propagate the reduction through the relevant nodes. Before a message got printed only for the last reduction it went through. So in case a node was reduced in-place several times in a row, only the last update was printed, or none at all if after being reduced in-place it got reduced by being replaced by another node: only the non-in-place replacement was showed. Now each time an in-place reduction is applied to a node, a message gets printed. Bug: Change-Id: Id0f816fecd44c01d0253966c6decc4861be0c2fa Reviewed-on: https://chromium-review.googlesource.com/563365Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Alexandre Talon <alexandret@google.com> Cr-Commit-Position: refs/heads/master@{#46552}
-
Camillo Bruni authored
Change-Id: Ib1ce302489196b2fe98558cafe31d1f60a18db12 Reviewed-on: https://chromium-review.googlesource.com/566820Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#46551}
-
jgruber authored
Switch statements generate a counter for each clause plus a continuation counter. Bug: v8:6000 Change-Id: Ic55a7efda54de1152bd5283d753119aa2764afbd Reviewed-on: https://chromium-review.googlesource.com/558249Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#46550}
-
Jaroslav Sevcik authored
BUG=v8:6410 Change-Id: I140eb9c79a7bf22b71c175fe152473d8bb8e7a76 Reviewed-on: https://chromium-review.googlesource.com/563694Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#46549}
-
Yang Guo authored
This is a reland of bb881c88 Original change's description: > Document RootIndexMap's requirement for immovable roots. > > R=mstarzinger@chromium.org > > Change-Id: I27cf279c77204becc449221e1bcebeacbc275792 > Reviewed-on: https://chromium-review.googlesource.com/565281 > Commit-Queue: Yang Guo <yangguo@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46517} Change-Id: I6eeb68cee3bd2dff0eb6696bbe43a4d602ab960d Reviewed-on: https://chromium-review.googlesource.com/566458Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#46548}
-
Benedikt Meurer authored
This generalizes the existing support for Map and Set iteration in the CSA a bit and makes it possible to reuse the logic to implement forEach as well. It also introduces an empty_ordered_hash_table, which is used as a sentinel for exhausted iterators to avoid the need to deal with undefined there as well (not observable from JavaScript). TBR=ulan@chromium.org R=jgruber@chromium.org Bug: v8:5269, v8:5717 Change-Id: Ifb9ec5ecb20939aa9b7d2471537f8ccd4af04c8f Reviewed-on: https://chromium-review.googlesource.com/565260Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46547}
-