- 12 Jul, 2017 4 commits
-
-
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 25 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}
-
Igor Sheludko authored
Bug: chromium:734395 Change-Id: Ieb45948f6efd2ccecd3d1ed761eb9e4614903480 Reviewed-on: https://chromium-review.googlesource.com/563661Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#46546}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/4dba73a..6ada47b Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/00b0c16..b708a0d TBR=machenbach@chromium.org,hablich@chromium.org Change-Id: I182bf955ce7527b27c2c6109be13d810bd903e14 Reviewed-on: https://chromium-review.googlesource.com/566325Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#46545}
-
- 10 Jul, 2017 11 commits
-
-
Adam Klein authored
This enforces that its enumeration values fit in a byte, as required by Map's {instance_type} field (and probably other parts of the system). Clang helpfully emits this error message if an enum value goes out of range: enumerator value 256 is not representable in the underlying type 'uint8_t' (aka 'unsigned char') Change-Id: I533cd5afc755e7163c2fd40f7b00d9adfd960895 Reviewed-on: https://chromium-review.googlesource.com/565892Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#46544}
-
Deepti Gandluri authored
- Implement js-api changes for WebAssembly.Memory to accept a shared parameter - Update allocation to use SharedArrayBuffers BUG=v8:6532 R=binji@chromium.org, bradnelson@chromium.org Change-Id: I021491217568751b06fbd7b4b08b1dd88910e21d Reviewed-on: https://chromium-review.googlesource.com/564058 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#46543}
-
Alexey Kozyatinskiy authored
This is a reland of 5b44ba0e Original change's description: > (Reland) [parser] moved load property position after dot > > Currently LdaNamedProperty bytecode for expressions like a.b has position before dot. This CL moves this location after dot. > It's important for later removing of Nop bytecodes in expressions like a.b() where a is local variable, property call and property load should have the same position. > > R=jgruber@chromium.org > TBR=marja@chromium.org > > Bug: v8:6425 > Change-Id: I05c21ca5e018da9c432c6bc963c7a96799336d1c > Reviewed-on: https://chromium-review.googlesource.com/562879 > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46484} TBR=marja@chromium.org,jgruber@chromium.org Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Bug: v8:6425 Change-Id: I5eba5fe43ad31c5c781ffcc8c604cd9c98baa57e Reviewed-on: https://chromium-review.googlesource.com/565907Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#46542}
-
Karl Schimpf authored
This Cl fixes a fundamental misunderstanding when Wasm memory histograms were added. They were added using HISTOGRAM_MEMORY_LIST(). This macro implements aggregating memory histograms that handle cases memory cases that are not module specific. The fixed memory histograms are all module specific, and are simple histograms. In addition, it removes field is_sync from ModuleCompiler and WasmCompilationUnit, since the field is no longer needed to make the fixed memory histograms synchronous. Bug: v8:6361 Change-Id: I696109b4fd1a4aadc87a6bdbbc4b7daefd58ea51 Reviewed-on: https://chromium-review.googlesource.com/565349Reviewed-by: Brad Nelson <bradnelson@chromium.org> Commit-Queue: Karl Schimpf <kschimpf@chromium.org> Cr-Commit-Position: refs/heads/master@{#46541}
-
Karl Schimpf authored
Adds missing opcodes for exception handling for the function body decoder. Also adds error messages if the exception handling construct is not yet functional. Note that the previous prototype for catch and throw have been marked as not yet functional. This was done because it doesn't model exceptions the way the proposal suggests. Rather, they implement a hard-coded (c++ model) of exceptions. Bug: v8:6577 Change-Id: Ife170b9f0cb2be91b11082e43c4795ce81a427dc Reviewed-on: https://chromium-review.googlesource.com/564138Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Karl Schimpf <kschimpf@chromium.org> Cr-Commit-Position: refs/heads/master@{#46540}
-
Karl Schimpf authored
Modifies V8 to be able to parse the exception section (defining exception types), when the experimental_wasm_eh flag is true. Bug: v8:6577 Change-Id: I5d8b3fddaf5b0dec6b14ddd0992f9fb883e8dc90 Reviewed-on: https://chromium-review.googlesource.com/561757 Commit-Queue: Karl Schimpf <kschimpf@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#46539}
-
Benedikt Meurer authored
This improves the general Array constructor call performance (w/o usable AllocationSite feedback) in TurboFan by ~2x, i.e. for example invoking the Array constructor like this var a = Array.call(undefined, n); instead of var a = Array(n); such that the CallIC doesn't know that it's eventually calling the Array constructor. It also thus changes the single argument Array constructor to always return holey arrays. Previously the single argument case for the Array constructor was somehow trying to dynamically detect 0 and in that case returned a packed array instead of a holey one. That adds quite a lot of churn, and doesn't seem to be very useful, especially since this might lead to unnecessary feedback pollution later. R=mvstanton@chromium.org Bug: v8:2229, v8:5269, v8:6399 Change-Id: I3d7cb9bd975ec0e491e3cdbcf1230185cfd1e3de Reviewed-on: https://chromium-review.googlesource.com/565721Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46538}
-
Adam Klein authored
It's already skipped (for slowness) in debug, asan, and msan builds. TBR=machenbach@chromium.org Change-Id: I1d7cb38d88e621f6d14344426bc5f931b1d6ffcd Reviewed-on: https://chromium-review.googlesource.com/565741Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#46537}
-
Caitlin Potter authored
In https://chromium-review.googlesource.com/c/472247/, I avoided running DesugarLexicalBindingsInForStatement() if there were no lexical loop variables, the function was not resumable, and the variables are not captured by eval or a function declaration. I think it's now possible to limit this further, and only do the more extensive desugaring if there's a function declaration / eval() call in the loop body. `yield` and `await` are not an issue as those loop variables are written to the register file and not lost. This change just removes the `is_resumable()` condition. If it passes tests, I think it's safe. BUG=v8:4762, v8:5460, v8:6579 Change-Id: I92d0308ad9401c1338411bc9ae9021f978803d3a Reviewed-on: https://chromium-review.googlesource.com/563587 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#46536}
-
Ulan Degenbaev authored
concurrent marking. The function should use relaxed store similar to other JSObject setters. BUG=chromium:694255 Change-Id: I032f0763a5f2420d120bce976533aa0007868b97 Reviewed-on: https://chromium-review.googlesource.com/565573Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46535}
-
Benedikt Meurer authored
This reverts commit 39e335c7. Reason for revert: Breaks debug builds on Linux, especially mksnapshot fails now, i.e.: FAILED: mksnapshot python "../../build/toolchain/gcc_link_wrapper.py" --output="./mksnapshot" -- ../../third_party/llvm-build/Release+Asserts/bin/clang++ -pie -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--no-as-needed -lpthread -Wl,--as-needed -fuse -ld=gold -B../../third_party/binutils/Linux_x64/Release/bin -Wl,--threads -Wl,--thread-count=4 -Wl,--icf=all -m64 -Werror -Wl,--gdb-index --sysroot=../../build/linux/debian_jessie_amd64-sysroot -L../../build/linux/debian_jessie_amd64-sysroot/lib/x86_64-linux-gnu -Wl,-rpat h-link=../../build/linux/debian_jessie_amd64-sysroot/lib/x86_64-linux-gnu -L../../build/linux/debian_jessie_amd64-sysroot/usr/lib/x86_64-linux-gnu -Wl,-rpath-link=../../build/linux/debian_jessie_amd64-sysroot/usr/lib/x86_64-linux-gnu -Wl,-rpath-link=. -Wl,--disable-new-dt ags -rdynamic -nodefaultlibs -o "./mksnapshot" -Wl,--start-group @"./mksnapshot.rsp" -Wl,--end-group -ldl -lpthread -lrt -lc -lm -lgcc_s ../../src/elements.cc:3362: error: undefined reference to 'v8::internal::(anonymous namespace)::ElementsKindTraits<(v8::internal::ElementsKind)7>::Kind' ../../src/elements.cc:3362: error: undefined reference to 'v8::internal::(anonymous namespace)::ElementsKindTraits<(v8::internal::ElementsKind)8>::Kind' ../../src/elements.cc:3953: error: undefined reference to 'v8::internal::(anonymous namespace)::ElementsKindTraits<(v8::internal::ElementsKind)9>::Kind' ../../src/profiler/heap-snapshot-generator.cc:187: error: undefined reference to 'v8::internal::(anonymous namespace)::SnapshotSizeConstants<4ul>::kExpectedHeapGraphEdgeSize' ../../src/elements.cc:3953: error: undefined reference to 'v8::internal::(anonymous namespace)::ElementsKindTraits<(v8::internal::ElementsKind)10>::Kind' ../../src/profiler/heap-snapshot-generator.cc:198: error: undefined reference to 'v8::internal::(anonymous namespace)::SnapshotSizeConstants<4ul>::kExpectedHeapEntrySize' ../../src/profiler/heap-snapshot-generator.cc:199: error: undefined reference to 'v8::internal::(anonymous namespace)::SnapshotSizeConstants<8ul>::kExpectedHeapGraphEdgeSize' ../../src/profiler/heap-snapshot-generator.cc:200: error: undefined reference to 'v8::internal::(anonymous namespace)::SnapshotSizeConstants<8ul>::kExpectedHeapEntrySize' clang: error: linker command failed with exit code 1 (use -v to see invocation) ninja: build stopped: subcommand failed. Original change's description: > [base] Make USE a variadic template > > This will allow for passing more than one variable. This is > particularly interesting for calling a method on each type in a > parameter pack, as in: > > template<typename... T> > void foo(T&&... ts) { > USE(do_something(ts)...); > } > > Drive-by fix: Allow to pass arbitrary types to USE, including > references. This might prevent a copy for pass-by-value. > > R=ishell@chromium.org > > Change-Id: I8f894d730bbcd195ed83705f98771994b4bc906f > Reviewed-on: https://chromium-review.googlesource.com/565561 > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46527} TBR=clemensh@chromium.org,ishell@chromium.org Change-Id: Ibd3f0529e7a3136c4bcac15443da3d9f8dde8510 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/565141Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46534}
-