- 10 Oct, 2018 12 commits
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/1a0ce50..a5cd715 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/db1e69e..83bd7f4 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Iab28e206e9aa2b0376185abb1edb0d9fc4948a3f Reviewed-on: https://chromium-review.googlesource.com/c/1273255 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@{#56511}
-
Sigurd Schneider authored
R=machenbach@chromium.org, sigurds@chromium.org Bug: v8:6666 Change-Id: I9ac0fc393a9f9a66bebb72abd54a429e95aa078a Reviewed-on: https://chromium-review.googlesource.com/c/1270840 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#56510}
-
Maya Lekova authored
This reverts commit 22b56f47. Reason for revert: Speculatively reverting because it increases Android binary size unexpectedly, see https://ci.chromium.org/p/chromium/builders/luci.chromium.try/android-binary-size/72572 Original change's description: > [snapshot] Factor out root serialization code > > 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/1264698 > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Commit-Queue: Dan Elphick <delphick@chromium.org> > Cr-Commit-Position: refs/heads/master@{#56494} TBR=jgruber@chromium.org,delphick@chromium.org,ygg@google.com Change-Id: I7012abec0f33f655efc64dc44f7fa461d7e4b7e9 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8191 Reviewed-on: https://chromium-review.googlesource.com/c/1273098Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#56509}
-
Michael Achenbach authored
TBR=sergiyb@chromium.org NOTRY=true Bug: v8:8278 Change-Id: I000c31366f2b3d894208665ddb6cef49216099a6 Reviewed-on: https://chromium-review.googlesource.com/c/1273097Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#56508}
-
Maya Lekova authored
Bug: v8:8110 Change-Id: I5d180782aed530b059978d4d594df91aa472656a Reviewed-on: https://chromium-review.googlesource.com/c/1273015Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#56507}
-
Benedikt Meurer authored
This implements the editorial change in https://github.com/tc39/ecma262/pull/1146 which removes the need to allocate the throwaway promise in await (the throwaway promise was not exposed to user JavaScript anyways, but this spec change allows us to rely on this behavior). Now we still need the throwaway promise for proper before and after events with both DevTools (which might change) and PromiseHooks. So if either DevTools or PromiseHooks is on, we call into %AwaitPromisesInit, which then allocates the throwaway promise and does all the other debugger/hooks related setup. This gives around 7% improvement on the doxbee-async-es2017-native and around 1-2% on the parallel-async-es2017-native benchmarks. Bug: v8:7253, v8:8285 Ref: tc39/ecma262#1146 Tbr: ulan@chromium.org Change-Id: I972ba0538ec8c00808e95b183603025c7e55a6d3 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/c/1270798 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#56506}
-
Toon Verwaest authored
Divide MarkExpressionAsAssigned into MarkExpressionAsAssigned and MarkPatternAsAssigned so it's clear when we need to mark just a single variable or an entire destructuring assignment pattern. Change-Id: Ia188b3d9b15944a1859676f483df229225ce8404 Reviewed-on: https://chromium-review.googlesource.com/c/1270945 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#56505}
-
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 28 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}
-