- 10 Oct, 2018 5 commits
-
-
Hai Dang authored
Bug: v8:7980 Change-Id: I640119fc9a9af66370c47f4d5b16244a1cc3f716 Reviewed-on: https://chromium-review.googlesource.com/c/1256810 Commit-Queue: Hai Dang <dhai@google.com> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#56504}
-
Toon Verwaest authored
Change-Id: Icdab6d279ca42bf44f29db257484acd74666baab Reviewed-on: https://chromium-review.googlesource.com/c/1273075Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#56503}
-
Benedikt Meurer authored
This change introduces new intrinsics used to desugar async functions in the Parser and the BytecodeGenerator, namely we introduce a new %_AsyncFunctionEnter intrinsic that constructs the generator object for the async function (and in the future will also create the outer promise for the async function). This generator object is internal and never escapes to user code, plus since async functions don't have a "prototype" property, we can just a single map here instead of tracking the prototype/initial_map on every async function. This saves one word per async function plus one initial_map per async function that was invoked at least once. We also introduce two new intrinsics %_AsyncFunctionReject, which rejects the outer promise with the caught exception, and another %_AsyncFunctionResolve, which resolves the outer promise with the right hand side of the `return` statement. These functions also perform the DevTools part of the job (aka popping from the promise stack and sending the debug event). This allows us to get rid of the implicit try-finally from async functions completely; because the finally block only called to the %AsyncFunctionPromiseRelease builtin, which was used to inform DevTools. In essence we now turn an async function like ```js async function f(x) { return await bar(x); } ``` into something like this (in Parser and BytecodeGenerator respectively): ``` function f(x) { .generator_object = %_AsyncFunctionEnter(.closure, this); .promise = %AsyncFunctionCreatePromise(); try { .tmp = await bar(x); return %_AsyncFunctionResolve(.promise, .tmp); } catch (e) { return %_AsyncFunctionReject(.promise, e); } } ``` Overall the bytecode for async functions gets significantly shorter already (and will get even shorter once we put the outer promise into the async function generator object). For example the bytecode for a simple async function ```js async function f(x) { return await x; } ``` goes from 175 bytes to 110 bytes (a ~38% reduction in size), which is in particular due to the simplification around the try-finally removal. Overall this seems to improve the doxbee-async-es2017-native test by around 2-3%. On the test case mentioned in v8:8276 we go from 1124ms to 441ms, which corresponds to a 60% reduction in total execution time! Tbr: marja@chromium.org Bug: v8:7253, v8:7522, v8:8276 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Id29dc92de7490b387ff697860c900cee44c9a7a4 Reviewed-on: https://chromium-review.googlesource.com/c/1269041 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#56502}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/a7674ea..1a0ce50 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/9ec8468..357c5c2 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/71e3be7..db1e69e Rolling v8/third_party/icu: https://chromium.googlesource.com/chromium/deps/icu/+log/c52a2a2..ccad447 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/7792d28..2e889f5 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I103aff00a9a5c2218c6152a9da8d0307a2cb07c1 Reviewed-on: https://chromium-review.googlesource.com/c/1272192 Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#56501}
-
Igor Sheludko authored
... and remove Heap::RootCanBeWrittenAfterInitialization() and Heap::RootCanBeTreatedAsConstant() in favour of RootsTable::IsImmortalImmovable(). Bug: v8:8238 Change-Id: I804d06136de9584b8c4940fd8ab9d18fb3ef7980 Reviewed-on: https://chromium-review.googlesource.com/c/1270837 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#56500}
-
- 09 Oct, 2018 35 commits
-
-
Michael Lippautz authored
Change-Id: Ib24a7f2c8c69828c5457595f891dbcb6b2a70296 Reviewed-on: https://chromium-review.googlesource.com/c/1270923Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#56499}
-
Michael Lippautz authored
Provide flag to set a deterministic GC schedule. The GC still uses multiple tasks but on a fixed growing strategy. Change-Id: I937cf77ae0b0d1e513d4976a23c7f23a151d77c5 Reviewed-on: https://chromium-review.googlesource.com/c/1270838 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#56498}
-
Sigurd Schneider authored
Pair operations needed more than 5 registers; this allows one operand to go into a slot or an immediate, which allows pair operations even if ebx if not allocatable because it holds the root register. Change-Id: Ic08b2e0ca93744a434e3d41af97da45b779756aa Bug: v8:6666 Reviewed-on: https://chromium-review.googlesource.com/c/1271055 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#56497}
-
Clemens Hammacher authored
This flag stresses different interleavings of background and foreground tasks by delaying the execution of each task by a random value between 0 and 100ms (with a quadratic distribution favoring smaller delayes). The implementation is encapsulated in the new {DelayedTasksPlatform} class, which wraps each task in a {DelayedTask} which first sleeps for the given number of microseconds, then executes the actual task. Both the old {PredictablePlatform} and the new {DelayedTasksPlatform} are moved to the new d8-platforms.cc file with an interface to create them in d8-platforms.h. R=yangguo@chromium.org, mslekova@chromium.org Bug: v8:8278 Change-Id: I5847fb2da31ffde773195da7ad3f56a0390cc05b Reviewed-on: https://chromium-review.googlesource.com/c/1270592 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#56496}
-
Sergiy Byelozyorov authored
This is a reland of 2bac24fe Original change's description: > [tools] Report infra failure on incorrect usage or uncaptured exceptions > > TBR=machenbach@chromium.org > > No-Try: true > Bug: chromium:893464 > Change-Id: If7d9f839a715468ded293a488e7fa12fc4ef3347 > Reviewed-on: https://chromium-review.googlesource.com/c/1270995 > Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> > Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#56485} TBR=machenbach@google.com Test: ran run_perf_test.py locally (it reports same errors as before this CL) No-Try: true Bug: chromium:893464 Change-Id: I1bb2fae6fe2e2b7350695e491d7c3d52ff06db14 Reviewed-on: https://chromium-review.googlesource.com/c/1270965 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#56495}
-
Dan Elphick authored
Factors out a new method Serializer::SerializeRoot which attempts to serialize a given object as a Root if it is one and the Serializer's policy allows that root to be serialized (implemented as a new virtual method RootCanBeSerialized).. This is in preparation for adding a ReadOnlySerializer which change the way read-only roots are serialized. Bug: v8:8191 Change-Id: I7fbb4e9520fba8b836a0b6bf95ca39abc3ded79e Reviewed-on: https://chromium-review.googlesource.com/c/1264698Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#56494}
-
Sigurd Schneider authored
Drive-by: Fix bug where 8x16ExtractLane could extract garbage value. Change-Id: I7eaa758c0c649e4e79e64039d1db6e19092d1293 Bug: v8:6666 Reviewed-on: https://chromium-review.googlesource.com/c/1271056 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#56493}
-
Sergiy Byelozyorov authored
This reverts commit 2bac24fe. Reason for revert: broke perf tests Original change's description: > [tools] Report infra failure on incorrect usage or uncaptured exceptions > > TBR=machenbach@chromium.org > > No-Try: true > Bug: chromium:893464 > Change-Id: If7d9f839a715468ded293a488e7fa12fc4ef3347 > Reviewed-on: https://chromium-review.googlesource.com/c/1270995 > Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> > Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#56485} TBR=machenbach@chromium.org,sergiyb@chromium.org Change-Id: I0f8f9d9d4053669b285c51703fad5223b3d831c3 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:893464 Reviewed-on: https://chromium-review.googlesource.com/c/1270964Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#56492}
-
Igor Sheludko authored
Bug: v8:8238 Change-Id: I112b6ec9c32afe03f43670aa3ed572af7525b26b Reviewed-on: https://chromium-review.googlesource.com/c/1270586 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#56491}
-
Toon Verwaest authored
Additionally the CL outlines ParseFunctionExpression from ParseMemberExpression, drops IsTrivialExpression, and inlines ParsePrimaryExpression. This allows the parser to be turned into a bottom-up parser through inlining. Change-Id: Id9247dfb1cc7505ee8398b371d4727316ec8f332 Reviewed-on: https://chromium-review.googlesource.com/c/1270920 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#56490}
-
Toon Verwaest authored
ParseAndClassifyIdentifier cannot result in invalid assignment patterns, so don't check for them. Change-Id: I038c651502e10d17b2da1c21527ef1b9e4cd16ea Reviewed-on: https://chromium-review.googlesource.com/c/1270916 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#56489}
-
Maya Lekova authored
The test started flaking on almost every run since 1 day, disabling until the root cause is triaged. NOTRY=true Bug: v8:8219 Change-Id: Id3cf219874e79cefc41bb63a9a4a04b6288d5350 Reviewed-on: https://chromium-review.googlesource.com/c/1270942 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#56488}
-
Igor Sheludko authored
Bug: v8:8238 Change-Id: I0883e36ddbacb3e6f222e33f5e4604b31723872f Reviewed-on: https://chromium-review.googlesource.com/c/1270919Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#56487}
-
Michael Starzinger authored
This fixes handling of two corner cases with catch-all blocks: 1) The catch-all blocks are conceptually outside the corresponding try. 2) Reachability of catch-all is determined by parent reachability. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-catchall BUG=v8:8091 Change-Id: Idfd8310bc232f3ce389763023c5a33f1ef90e0b5 Reviewed-on: https://chromium-review.googlesource.com/c/1270816Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56486}
-
Sergiy Byelozyorov authored
TBR=machenbach@chromium.org No-Try: true Bug: chromium:893464 Change-Id: If7d9f839a715468ded293a488e7fa12fc4ef3347 Reviewed-on: https://chromium-review.googlesource.com/c/1270995 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#56485}
-
Alexey Kozyatinskiy authored
Current implementation might take significant amount of time to traverse big message. We can reuse builtin JSON.stringify replacer feature to achieve big performance boost. R=dgozman@chromium.org Bug: none Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I59c15f3abb951e2aac938436657b18f608df5099 Reviewed-on: https://chromium-review.googlesource.com/c/1270263Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#56484}
-
Marja Hölttä authored
Minimal implementation to run a simple example (see test) demonstrating the weakness of WeakCell. - Behind FLAG_harmony_weak_refs - Add WeakFactory & WeakCell, no WeakRef in this version. Spec clarifications: goo.gl/7ujBAk Design doc: goo.gl/nvof2T BUG=v8:8179 Change-Id: Iea2a7a2201e6380644235d190a542ab46e082382 Reviewed-on: https://chromium-review.googlesource.com/c/1238579Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#56483}
-
Mythri authored
Bug: v8:7284 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;luci.chromium.try:linux-chromeos-dbg;luci.chromium.try:linux-chromeos-rel Change-Id: I2a652fd99caaf04201da45c485b670cc2c35c2e7 Reviewed-on: https://chromium-review.googlesource.com/c/1264755 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#56482}
-
Toon Verwaest authored
Instead directly declare the parameters as they are "added to the list". Change-Id: I3245b5834157eb9f443ceb5da47db231a237d673 Reviewed-on: https://chromium-review.googlesource.com/c/1270815Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#56481}
-
Igor Sheludko authored
This is a reland of e3a42cfd Original change's description: > [cleanup] Remove Heap::kOldSpaceRoots constant > > ... in favour of RootsTable::IsImmortalImmovable(). > > Bug: v8:8238 > Change-Id: Ic8434a1658b9ba982a93dd268dbfe52a6cc5c6a2 > Reviewed-on: https://chromium-review.googlesource.com/c/1270582 > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#56472} TBR=ulan@chromium.org,yangguo@chromium.org Bug: v8:8238 Change-Id: I20edf9c4a596670ad2e6cf1ee87e679ee4a66bee Reviewed-on: https://chromium-review.googlesource.com/c/1270593Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#56480}
-
Georg Neis authored
Change-Id: I9e5eb7132da7e11ab4427fc07bacee667df3ef41 Reviewed-on: https://chromium-review.googlesource.com/c/1270587Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#56479}
-
Michael Starzinger authored
This adds support for multiple catch blocks being attached to a single try block. The implemented semantics are that type checks are performed in order from top to bottom. Note that multiple catch blocks of the same type are not prohibited and will be accepted, making the second such block essentially unreachable. The current proposal neither explicitly allows nor prohibits it. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions BUG=v8:8091 Change-Id: I31e7a07a7cffdd909a58342e00f05e52ed1a3182 Reviewed-on: https://chromium-review.googlesource.com/c/1270591Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56478}
-
Clemens Hammacher authored
Drive-by: Fix a bug in {ProcessParameter} which was uncovered by this CL. R=titzer@chromium.org CC=sigurds@chromium.org, jgruber@chromium.org Bug: v8:6666 Change-Id: Ia775e8b4b9fdb9cecc226bdd870319a73950c18f Reviewed-on: https://chromium-review.googlesource.com/c/1270589 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#56477}
-
Michael Starzinger authored
This adds support to wire control flow of catch-all expressions into an existing try-catch cascade. Note that multiple typed catch blocks are not yet supported, only one typed catch block followed by one catch-all block is supported. In case the explicit catch-all block is missing, we emulate the correct semantics by internally always emitting a catch-all containing a simple rethrow instruction. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-catchall BUG=v8:8091 Change-Id: I6b29a98c4f1a558fabe6012f4ba6c7b7d43529bb Reviewed-on: https://chromium-review.googlesource.com/c/1270585Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56476}
-
Maya Lekova authored
This reverts commit e3a42cfd. Reason for revert: Breaking compilation on "V8 Linux - noi18n - debug" bot, see https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20noi18n%20-%20debug/23170 Original change's description: > [cleanup] Remove Heap::kOldSpaceRoots constant > > ... in favour of RootsTable::IsImmortalImmovable(). > > Bug: v8:8238 > Change-Id: Ic8434a1658b9ba982a93dd268dbfe52a6cc5c6a2 > Reviewed-on: https://chromium-review.googlesource.com/c/1270582 > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#56472} TBR=ulan@chromium.org,yangguo@chromium.org,ishell@chromium.org Change-Id: I3a160716c9d558f4ab89b45a7257a461733f7273 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8238 Reviewed-on: https://chromium-review.googlesource.com/c/1270588Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#56475}
-
Florian Sattler authored
Change-Id: Ieae88990f3d960c13a2bafc223e12061e994fce0 Reviewed-on: https://chromium-review.googlesource.com/c/1270580Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#56474}
-
Ross McIlroy authored
Simplify the logic in the CompilerDispatcher to use BackgroundCompileTasks directly, rather than having a (now unecessary) CompilerDispatcherJob abstraction. In the process, the CompilerDispatcherTracer is removed, and the idle task logic is simplified finalize already compiled jobs until the idle task deadline. BUG=v8:8238, v8:8041 Change-Id: I1ea2366f959b6951de222d62fde80725b3cc70ff Reviewed-on: https://chromium-review.googlesource.com/c/1260123 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#56473}
-
Igor Sheludko authored
... in favour of RootsTable::IsImmortalImmovable(). Bug: v8:8238 Change-Id: Ic8434a1658b9ba982a93dd268dbfe52a6cc5c6a2 Reviewed-on: https://chromium-review.googlesource.com/c/1270582 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#56472}
-
Sigurd Schneider authored
Change-Id: I41b5c8e2700ebef102ffd3e7bdc9140978d971b7 Bug: v8:6666 Reviewed-on: https://chromium-review.googlesource.com/c/1264281Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#56471}
-
Sigurd Schneider authored
R=jarin@chromium.org Change-Id: Ib4dd0135e7ade3bbe5dd89ae8d2915ca6707f015 Bug: v8:6666 Reviewed-on: https://chromium-review.googlesource.com/c/1264275Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#56470}
-
Toon Verwaest authored
This will avoid queueing the error for any valid-syntax JS, whereas currently we'll queue it for any assignment expression that doesn't look like the start of an arrow function. The final error will look the same even if we delay queueing it. Since the formals weren't parenthesized we won't actually throw the queued error, but the tracked "binding pattern error". Change-Id: I80e9d8ef4fb8244829c274a7d656637080583769 Reviewed-on: https://chromium-review.googlesource.com/c/1270583Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#56469}
-
Toon Verwaest authored
This flag has been on by default for some time. Once https://chromium-review.googlesource.com/c/v8/v8/+/1270578 lands we need it to be able to find duplicate parameters (to be spec-compliant). Change-Id: I222023d7cd955127d3ecca42283b37063e962c58 Reviewed-on: https://chromium-review.googlesource.com/c/1270581 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#56468}
-
Toon Verwaest authored
Now duplicate parameter detection depends on tracking of unresolved references. This also fixes finding duplicate parameters of arrow functions nested in other arrow functions. Change-Id: I644bfdc513244637345c1069e5c7e5fde713da63 Reviewed-on: https://chromium-review.googlesource.com/c/1270578 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#56467}
-
Igor Sheludko authored
... by removing entries corresponding to read only roots (which are immortal immovable by definition) and using READ_ONLY_ROOT_LIST explicitly. This CL also renames the list to MUTABLE_IMMORTAL_IMMOVABLE_ROOT_LIST and moves Heap::RootIsImmortalImmovable() to RootsTable::IsImmortalImmovable(). Bug: v8:8238 Change-Id: I3e44a06d7a816955bc3471e788e883fb053b03d9 Reviewed-on: https://chromium-review.googlesource.com/c/1269035Reviewed-by: Dan Elphick <delphick@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#56466}
-
Michael Achenbach authored
The regexp for finding resources to be pushed to Android devices was too lax. On empty strings it tried to check for more resources on a directory and hung. The last test262 roll contains tests with empty imports that started hanging in this way. TBR=neis@chromium.org NOTRY=true Bug: v8:7834 Change-Id: Ie58f1b18bdd99b7b40c1fb39b25e2f481932e0f3 Reviewed-on: https://chromium-review.googlesource.com/c/1270579Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#56465}
-