- 01 Feb, 2017 1 commit
-
-
jgruber authored
This implements storing named captures on the regexp result object. For instance, /(?<a>.)/u.exec("b") will return a result such that: result.group.a // "b" https://tc39.github.io/proposal-regexp-named-groups/ BUG=v8:5437 Review-Url: https://codereview.chromium.org/2630233003 Cr-Original-Original-Original-Commit-Position: refs/heads/master@{#42532} Committed: https://chromium.googlesource.com/v8/v8/+/70000946eb2a9155679528702a766219a1fcf154 Review-Url: https://codereview.chromium.org/2630233003 Cr-Original-Original-Commit-Position: refs/heads/master@{#42570} Committed: https://chromium.googlesource.com/v8/v8/+/ee94fa11ed63477393c6534c352ebac6e502396c Review-Url: https://codereview.chromium.org/2630233003 Cr-Original-Commit-Position: refs/heads/master@{#42676} Committed: https://chromium.googlesource.com/v8/v8/+/8bf52534f6bf86821a1589dcbcb7335052c1f94f Review-Url: https://codereview.chromium.org/2630233003 Cr-Commit-Position: refs/heads/master@{#42838}
-
- 26 Jan, 2017 2 commits
-
-
jgruber authored
Revert of [regexp] Create property on result for each named capture (patchset #9 id:160001 of https://codereview.chromium.org/2630233003/ ) Reason for revert: Some heap tests are broken leading to failures on nosnap builds: https://build.chromium.org/p/client.v8.ports/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20nosnap%20-%20debug/builds/3677 Reverting again until tests are fixed to keep bots green. Original issue's description: > [regexp] Store named captures on the regexp result > > This implements storing named captures on the regexp result object. > For instance, /(?<a>.)/u.exec("b") will return a result such that: > > result.group.a // "b" > > https://tc39.github.io/proposal-regexp-named-groups/ > > BUG=v8:5437 > > Review-Url: https://codereview.chromium.org/2630233003 > Cr-Original-Original-Commit-Position: refs/heads/master@{#42532} > Committed: https://chromium.googlesource.com/v8/v8/+/70000946eb2a9155679528702a766219a1fcf154 > Review-Url: https://codereview.chromium.org/2630233003 > Cr-Original-Commit-Position: refs/heads/master@{#42570} > Committed: https://chromium.googlesource.com/v8/v8/+/ee94fa11ed63477393c6534c352ebac6e502396c > Review-Url: https://codereview.chromium.org/2630233003 > Cr-Commit-Position: refs/heads/master@{#42676} > Committed: https://chromium.googlesource.com/v8/v8/+/8bf52534f6bf86821a1589dcbcb7335052c1f94f TBR=yangguo@chromium.org,littledan@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5437 Review-Url: https://codereview.chromium.org/2654233002 Cr-Commit-Position: refs/heads/master@{#42681}
-
jgruber authored
This implements storing named captures on the regexp result object. For instance, /(?<a>.)/u.exec("b") will return a result such that: result.group.a // "b" https://tc39.github.io/proposal-regexp-named-groups/ BUG=v8:5437 Review-Url: https://codereview.chromium.org/2630233003 Cr-Original-Original-Commit-Position: refs/heads/master@{#42532} Committed: https://chromium.googlesource.com/v8/v8/+/70000946eb2a9155679528702a766219a1fcf154 Review-Url: https://codereview.chromium.org/2630233003 Cr-Original-Commit-Position: refs/heads/master@{#42570} Committed: https://chromium.googlesource.com/v8/v8/+/ee94fa11ed63477393c6534c352ebac6e502396c Review-Url: https://codereview.chromium.org/2630233003 Cr-Commit-Position: refs/heads/master@{#42676}
-
- 20 Jan, 2017 5 commits
-
-
jgruber authored
Revert of [regexp] Create property on result for each named capture (patchset #7 id:120001 of https://codereview.chromium.org/2630233003/ ) Reason for revert: Breaks arm64. Original issue's description: > [regexp] Store named captures on the regexp result > > This implements storing named captures on the regexp result object. > For instance, /(?<a>.)/u.exec("b") will return a result such that: > > result.group.a // "b" > > The spec proposal is not yet final, so this may still change in the future. > > BUG=v8:5437 > > Review-Url: https://codereview.chromium.org/2630233003 > Cr-Original-Commit-Position: refs/heads/master@{#42532} > Committed: https://chromium.googlesource.com/v8/v8/+/70000946eb2a9155679528702a766219a1fcf154 > Review-Url: https://codereview.chromium.org/2630233003 > Cr-Commit-Position: refs/heads/master@{#42570} > Committed: https://chromium.googlesource.com/v8/v8/+/ee94fa11ed63477393c6534c352ebac6e502396c TBR=yangguo@chromium.org,littledan@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5437 Review-Url: https://codereview.chromium.org/2639403008 Cr-Commit-Position: refs/heads/master@{#42577}
-
jgruber authored
This implements storing named captures on the regexp result object. For instance, /(?<a>.)/u.exec("b") will return a result such that: result.group.a // "b" The spec proposal is not yet final, so this may still change in the future. BUG=v8:5437 Review-Url: https://codereview.chromium.org/2630233003 Cr-Original-Commit-Position: refs/heads/master@{#42532} Committed: https://chromium.googlesource.com/v8/v8/+/70000946eb2a9155679528702a766219a1fcf154 Review-Url: https://codereview.chromium.org/2630233003 Cr-Commit-Position: refs/heads/master@{#42570}
-
jgruber authored
Revert of [regexp] Create property on result for each named capture (patchset #5 id:80001 of https://codereview.chromium.org/2630233003/ ) Reason for revert: Breaks no18n build: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20noi18n%20-%20debug/builds/11604 Original issue's description: > [regexp] Store named captures on the regexp result > > This implements storing named captures on the regexp result object. > For instance, /(?<a>.)/u.exec("b") will return a result such that: > > result.group.a // "b" > > The spec proposal is not yet final, so this may still change in the future. > > BUG=v8:5437 > > Review-Url: https://codereview.chromium.org/2630233003 > Cr-Commit-Position: refs/heads/master@{#42532} > Committed: https://chromium.googlesource.com/v8/v8/+/70000946eb2a9155679528702a766219a1fcf154 TBR=yangguo@chromium.org,littledan@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5437 Review-Url: https://codereview.chromium.org/2643213002 Cr-Commit-Position: refs/heads/master@{#42534}
-
jgruber authored
This implements storing named captures on the regexp result object. For instance, /(?<a>.)/u.exec("b") will return a result such that: result.group.a // "b" The spec proposal is not yet final, so this may still change in the future. BUG=v8:5437 Review-Url: https://codereview.chromium.org/2630233003 Cr-Commit-Position: refs/heads/master@{#42532}
-
caitp authored
Flag is used by followup patches split apart from https://codereview.chromium.org/2622833002/, and tests for each split out CL ends up using Symbol.asyncIterator, so it makes sense to land it first (behind a flag). BUG=v8:5855 R=littledan@chromium.org, adamk@chromium.org Review-Url: https://codereview.chromium.org/2645923003 Cr-Commit-Position: refs/heads/master@{#42527}
-
- 17 Jan, 2017 2 commits
-
-
rmcilroy authored
Creates an AstStringConstants container which pre-initializes the string constants used by AstValueFactory. This ensures that all AstValueFactories will produce the same AstValue objects for constants, and so they can be used by the BytecodeGenerator without having to pass the AstValueFactory to it, enabling construction off-thread. BUG=v8:5203 Review-Url: https://codereview.chromium.org/2630343002 Cr-Original-Commit-Position: refs/heads/master@{#42381} Committed: https://chromium.googlesource.com/v8/v8/+/d611496b8ed30af787d8668f96b400617c858508 Review-Url: https://codereview.chromium.org/2630343002 Cr-Commit-Position: refs/heads/master@{#42394}
-
rmcilroy authored
A GC could happen when creating the Module string, which would cause the JSModuleNamespace to be seen in an incomplete state. Instead make this string a root object so that we don't need to allocate it during NewJSModuleNamespace construction. BUG=v8:1569 Review-Url: https://codereview.chromium.org/2631223002 Cr-Commit-Position: refs/heads/master@{#42393}
-
- 16 Jan, 2017 2 commits
-
-
rmcilroy authored
Revert of [Parser] Introduce AstStringConstants to share constants across AstValueFactory (patchset #4 id:80001 of https://codereview.chromium.org/2630343002/ ) Reason for revert: Seems to break modules-namespace2 on gcstress. Original issue's description: > [Parser] Introduce AstStringConstants to share constants across AstValueFactory > > Creates an AstStringConstants container which pre-initializes the > string constants used by AstValueFactory. This ensures that all > AstValueFactories will produce the same AstValue objects for constants, > and so they can be used by the BytecodeGenerator without having to pass > the AstValueFactory to it, enabling construction off-thread. > > BUG=v8:5203 > > Review-Url: https://codereview.chromium.org/2630343002 > Cr-Commit-Position: refs/heads/master@{#42381} > Committed: https://chromium.googlesource.com/v8/v8/+/d611496b8ed30af787d8668f96b400617c858508 TBR=ahaas@chromium.org,marja@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5203 Review-Url: https://codereview.chromium.org/2638783002 Cr-Commit-Position: refs/heads/master@{#42382}
-
rmcilroy authored
Creates an AstStringConstants container which pre-initializes the string constants used by AstValueFactory. This ensures that all AstValueFactories will produce the same AstValue objects for constants, and so they can be used by the BytecodeGenerator without having to pass the AstValueFactory to it, enabling construction off-thread. BUG=v8:5203 Review-Url: https://codereview.chromium.org/2630343002 Cr-Commit-Position: refs/heads/master@{#42381}
-
- 12 Jan, 2017 1 commit
-
-
littledan authored
With the new initialization semantics, the V8 ECMA 402 (Intl) implementation does not need to indirect through a symbol to get at the underlying object. This patch removes that indirection, simplifying the implementation. R=yangguo@chromium.org BUG=v8:5751 CQ_INCLUDE_TRYBOTS=master.tryserver.v8:v8_linux_noi18n_rel_ng Review-Url: https://codereview.chromium.org/2601833002 Cr-Commit-Position: refs/heads/master@{#42281}
-
- 10 Jan, 2017 1 commit
-
-
kozyatinskiy authored
... which were done after the promise has been resolved. Goal of this CL - change promise instrumentation to support better callbacks, chained after promise resolution and prepare instrumentation for adding new asyncTaskCreated instrumentation. Instrumentation changes: - asyncTaskScheduled(recurring) when promise is fulfilled or rejected, - asyncTaskCancelled when promise is collected (since [1] we can be sure that promise will survive scheduled microtasks). Minor changes: - async task type in inspector <-> debugger API transferred by enum instead of string, - Debug manages async task ids based on promise objects. More details: https://docs.google.com/document/d/1u19N45f1gSF7M39mGsycJEK3IPyJgIXCBnWyiPeuJFE [1] https://codereview.chromium.org/2581503003/ BUG=chromium:632829,v8:5738 R=dgozman@chromium.org,yangguo@chromium.org,gsathya@chromium.org Review-Url: https://codereview.chromium.org/2578923002 Cr-Commit-Position: refs/heads/master@{#42178}
-
- 23 Dec, 2016 2 commits
-
-
gsathya authored
BUG=v8:5343 Review-Url: https://codereview.chromium.org/2604483002 Cr-Commit-Position: refs/heads/master@{#41947}
-
littledan authored
ECMA 402 v2 made Intl constructors more strict in terms of how they would initialize objects, refusing to initialize objects which have already been constructed. However, when Chrome tried to ship these semantics, we ran into web compatibility issues. This patch tries to square the circle and implement the simpler v2 object semantics while including a compatibility workaround to allow objects to sort of be initialized later, storing the real underlying Intl object in a symbol-named property. The new semantics are described in this PR against the ECMA 402 spec: https://github.com/tc39/ecma402/pull/84 BUG=v8:4360, v8:4870 LOG=Y Review-Url: https://codereview.chromium.org/2582993002 Cr-Commit-Position: refs/heads/master@{#41943}
-
- 21 Dec, 2016 1 commit
-
-
gsathya authored
This removes RegExpPrototypeSpeciesGetter and IteratorPrototypeIterator and uses ReturnReceiver builtin instead. This patch also ports the PromiseSpecies to TF by reusing this builtin. BUG=v8:5343 Review-Url: https://codereview.chromium.org/2590373002 Cr-Commit-Position: refs/heads/master@{#41879}
-
- 16 Dec, 2016 1 commit
-
-
rossberg authored
- Implement new WebAssembly.LinkError exception - Implement stricter checks for glboal imports - Add tests - Refactor handling of import names - Add TODOs for empty import names R=titzer@chromium.org BUG= Review-Url: https://codereview.chromium.org/2584843002 Cr-Commit-Position: refs/heads/master@{#41764}
-
- 13 Dec, 2016 1 commit
-
-
gsathya authored
Splits PromiseHandle into two TF builtins to account for catch prediction. An exception in PromiseHandleReject builtin results in a "caught" prediction whereas an expception in PromiseHandle results in a "promise rejection" prediction. An extra is_exception_caught bit is added to Code to mark this catch prediction behavior. BUG=v8:5343 Review-Url: https://codereview.chromium.org/2572623002 Cr-Commit-Position: refs/heads/master@{#41683}
-
- 08 Dec, 2016 1 commit
-
-
gsathya authored
-- Moves promiseHasHandlerSymbol to inobject property -- Ports PromiseResolveClosure to TF -- Fix a non spec async-await test which fails now because we do a map check for native promise check (instead of IsPromise). Changing the constructor (in the test) invalidates the map check. This patch results in a 7.1% performance improvement in the bluebird benchmark (over 5 runs). BUG=v8:5343 Review-Url: https://codereview.chromium.org/2541283002 Cr-Commit-Position: refs/heads/master@{#41569}
-
- 06 Dec, 2016 3 commits
-
-
https://codereview.chromium.org/2536463002/gsathya authored
This reverts commit 4c7cccf9. BUG=v8:5343 Review-Url: https://codereview.chromium.org/2554943002 Cr-Commit-Position: refs/heads/master@{#41534}
-
yangguo authored
This is done by reimplementing Symbol.for directly on top of NameDictionary. A nice side effect is the removal of src/js/symbol.js R=jochen@chromium.org, peria@chromium.org BUG=chromium:617892 Review-Url: https://codereview.chromium.org/2551763003 Cr-Commit-Position: refs/heads/master@{#41520}
-
https://codereview.chromium.org/2536463002/machenbach authored
Reason for revert: Breaks layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/11861 See: https://github.com/v8/v8/wiki/Blink-layout-tests Original issue's description: > Object > -- New JSObject for promises: JSPromise > > Builtins > -- PromiseThen TFJ > -- PromiseCreateAndSet TFJ for internal use > -- PerformPromiseThen TFJ for internal use > -- PromiseInit for initial promise setup > -- SpeciesConstructor for use in PromiseThen > -- ThrowIfNotJSReceiver for use in SpeciesConstructor > -- AppendPromiseCallback to update FixedArray with new callback > -- InternalPerformPromiseThen > > Promises.js > -- Cleanup unused symbols > -- Remove PerformPromiseThen > -- Remove PromiseThen > -- Remove PromiseSet > -- Remove PromiseAttachCallbacks > > Runtime > -- PromiseSet to set promise inobject values > -- Refactor functions to use FixedArrays for callbacks instead of > JSArray > -- Runtime_PromiseStatus to return promise status > -- Runtime_PromiseResult to return promise result > -- Runtime_PromiseDeferred to return deferred attached to promise > -- Runtime_PromiseRejectReactions to return reject reactions attached > to promise > > This CL results in a 13.07% improvement in the promises benchmark > (over 5 runs). > > BUG=v8:5343 > > Committed: https://crrev.com/30b564c76f490f8f6b311a74b25b26cf0a96be2d > Cr-Commit-Position: refs/heads/master@{#41503} TBR=bmeurer@chromium.org,jgruber@chromium.org,caitp@igalia.com,gsathya@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5343 Review-Url: https://codereview.chromium.org/2554013002 Cr-Commit-Position: refs/heads/master@{#41512}
-
- 05 Dec, 2016 1 commit
-
-
gsathya authored
-- New JSObject for promises: JSPromise Builtins -- PromiseThen TFJ -- PromiseCreateAndSet TFJ for internal use -- PerformPromiseThen TFJ for internal use -- PromiseInit for initial promise setup -- SpeciesConstructor for use in PromiseThen -- ThrowIfNotJSReceiver for use in SpeciesConstructor -- AppendPromiseCallback to update FixedArray with new callback -- InternalPerformPromiseThen Promises.js -- Cleanup unused symbols -- Remove PerformPromiseThen -- Remove PromiseThen -- Remove PromiseSet -- Remove PromiseAttachCallbacks Runtime -- PromiseSet to set promise inobject values -- Refactor functions to use FixedArrays for callbacks instead of JSArray -- Runtime_PromiseStatus to return promise status -- Runtime_PromiseResult to return promise result -- Runtime_PromiseDeferred to return deferred attached to promise -- Runtime_PromiseRejectReactions to return reject reactions attached to promise This CL results in a 13.07% improvement in the promises benchmark (over 5 runs). BUG=v8:5343 Review-Url: https://codereview.chromium.org/2536463002 Cr-Commit-Position: refs/heads/master@{#41503}
-
- 24 Oct, 2016 1 commit
-
-
jgruber authored
This results in a speedup of around 2x. RegExpExec is also ported in this CL. BUG=v8:5339 Review-Url: https://codereview.chromium.org/2441993002 Cr-Commit-Position: refs/heads/master@{#40532}
-
- 19 Oct, 2016 1 commit
-
-
gsathya authored
Moving the rest of the debugging code is blocked on making IsPromise inlinable. BUG=v8:5343 Review-Url: https://chromiumcodereview.appspot.com/2431793003 Cr-Commit-Position: refs/heads/master@{#40440}
-
- 18 Oct, 2016 1 commit
-
-
caitp authored
Implements the variations of CreateArrayIterator() in TFJ builtins (ArrayPrototypeValues, ArrayPrototypeEntries and ArrayPrototypeKeys), and provides two new Object types with numerous maps which identify certain behaviours, which will be useful for inlining. Removes src/js/array-iterator.js entirely Also adds support for printing Symbol literals inserted by the Parser during desugaring when FLAG_print_builtin_ast is set to true. BUG=v8:5388 R=bmeurer@chromium.org, cbruni@chromium.org TBR=ulan@chromium.org Review-Url: https://codereview.chromium.org/2405253006 Cr-Commit-Position: refs/heads/master@{#40373}
-
- 17 Oct, 2016 1 commit
-
-
gsathya authored
BUG=v8:5343 Review-Url: https://codereview.chromium.org/2415023002 Cr-Commit-Position: refs/heads/master@{#40369}
-
- 13 Oct, 2016 1 commit
-
-
rossberg authored
R=ahaas@chromium.org, titzer@chromium.org BUG=v8:5507 Review-Url: https://codereview.chromium.org/2421453002 Cr-Commit-Position: refs/heads/master@{#40280}
-
- 10 Oct, 2016 3 commits
-
-
gsathya authored
The behavior was changed in https://codereview.chromium.org/2357423002 Review-Url: https://codereview.chromium.org/2403163002 Cr-Commit-Position: refs/heads/master@{#40142}
-
adamk authored
These were used by the JS implementation, but are now dead code. R=caitp@igalia.com BUG=v8:5388 Review-Url: https://codereview.chromium.org/2410533002 Cr-Commit-Position: refs/heads/master@{#40140}
-
jgruber authored
This CL ports RegExp.prototype.test, RegExp.prototype.match and RegExp.prototype.search to C++. Performance regressions are expected but should be improved in an upcoming CL. BUG=v8:5339 Review-Url: https://codereview.chromium.org/2394713003 Cr-Commit-Position: refs/heads/master@{#40122}
-
- 06 Oct, 2016 1 commit
-
-
jgruber authored
Flag getters are implemented as TurboFan stubs while the rest are written as C++. This distinction is somewhat arbitrary and more getters could be ported to TurboFan in the future. BUG=v8:5339 Review-Url: https://codereview.chromium.org/2389233002 Cr-Commit-Position: refs/heads/master@{#40036}
-
- 05 Oct, 2016 1 commit
-
-
jgruber authored
This moves the RegExp constructor to C++. Local runs of octane/regexp are performance-neutral: C++: 4970.1 +- 404.981 JS: 4869.2 +- 586.743 That's probably only the case because exec and replace dominate octane/regexp. There's potential for improvement here, for instance by adding a fast-path if new.target is an unmodified JSRegExp function. BUG=v8:5339 Review-Url: https://codereview.chromium.org/2384613004 Cr-Commit-Position: refs/heads/master@{#39981}
-
- 23 Sep, 2016 1 commit
-
-
littledan authored
This patch tracks the stack of async functions differently from other Promise async stack tracking. With this patch, the stack trace of a callstack of async functions should look similarly to the call stack if all of the functions were synchronous. An example can be found in the updated test expectations: https://codereview.chromium.org/2362923002 . The new stack traces are implemented using existing mechanisms in the inspector. The inspector has two ways to save async stack traces: recurring and non-recurring stacks. An example of a non-recurring stack is setTimeout, and a recurring one is saved for setInterval. Recurring stacks are deleted only when a special "cancel" function is called, rather than being deleted after being used the first time. Previous Promise async stack tracking always used non-recurring stacks. For async functions, this patch saves a recurring stack. The top frame of the stack is duplicated, as the resuming function contains a similar frame; the devtools frontend is responsible for removing or marking this frame, which it can do based on seeing the [async function] line which follows it. The second frame will instead be provided by the resuming execution context. The recurring stack is saved when the async function is entered, and it is deleted from a finally block. The id of the stack is saved in the outer Promise being constructed by the async function. When an intermediate throwaway Promise will be triggered as a reaction, it will be identified as such based on its debugging metadata, and the corresponding async function's recurring stack will be used. BUG=v8:4483 Review-Url: https://codereview.chromium.org/2357423002 Cr-Commit-Position: refs/heads/master@{#39695}
-
- 20 Sep, 2016 2 commits
-
-
littledan authored
This patch knits together Promises returned by async/await such that when one async function awaits the result of another one, catch prediction works across the boundaries, whether the exception comes synchronously or asynchronously. Edges are added in three places: - When a locally uncaught await happens, if the value passed into await is a Promise, from the awaited value to the Promise under construction in the broader async function - From a "throwaway" Promise, which may be found on the Promise debug stack, to the Promise under construction in the async function that surrounds it - When a Promise is resolved with another Promise (e.g., when returning a Promise from an async function) In this reland, the caught tests are broken up into four parts to avoid timeouts. BUG=v8:5167 Review-Url: https://codereview.chromium.org/2346363004 Cr-Commit-Position: refs/heads/master@{#39564}
-
littledan authored
Revert of Async/await Promise dependency graph (patchset #30 id:550001 of https://codereview.chromium.org/2317383002/ ) Reason for revert: Need to break up test into smaller tests to avoid timeouts Original issue's description: > Async/await Promise dependency graph > > This patch knits together Promises returned by async/await such that when > one async function awaits the result of another one, catch prediction works > across the boundaries, whether the exception comes synchronously or > asynchronously. Edges are added in three places: > - When a locally uncaught await happens, if the value passed into await > is a Promise, from the awaited value to the Promise under construction > in the broader async function > - From a "throwaway" Promise, which may be found on the Promise debug > stack, to the Promise under construction in the async function that > surrounds it > - When a Promise is resolved with another Promise (e.g., when returning a > Promise from an async function) > > BUG=v8:5167 > > Committed: https://crrev.com/7265fdde7c76b9f875b40b0b139515936d491d64 > Cr-Commit-Position: refs/heads/master@{#39522} TBR=adamk@chromium.org,jgruber@chromium.org,kozyatinskiy@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5167 Review-Url: https://codereview.chromium.org/2351953002 Cr-Commit-Position: refs/heads/master@{#39523}
-
- 19 Sep, 2016 1 commit
-
-
littledan authored
This patch knits together Promises returned by async/await such that when one async function awaits the result of another one, catch prediction works across the boundaries, whether the exception comes synchronously or asynchronously. Edges are added in three places: - When a locally uncaught await happens, if the value passed into await is a Promise, from the awaited value to the Promise under construction in the broader async function - From a "throwaway" Promise, which may be found on the Promise debug stack, to the Promise under construction in the async function that surrounds it - When a Promise is resolved with another Promise (e.g., when returning a Promise from an async function) BUG=v8:5167 Review-Url: https://codereview.chromium.org/2317383002 Cr-Commit-Position: refs/heads/master@{#39522}
-
- 13 Sep, 2016 1 commit
-
-
littledan authored
Handle some examples of the "asynchronous case" by marking await expressions as either caught or uncaught; in the caught case, this marks the Promise passed in as having a catch predicted. The marking is done in AST numbering, which chooses between two different runtime function calls based on catch prediction. BUG=v8:5167 Review-Url: https://codereview.chromium.org/2276243002 Cr-Commit-Position: refs/heads/master@{#39394}
-
- 06 Sep, 2016 1 commit
-
-
jshin authored
Spec discussion: https://github.com/tc39/ecma402/issues/30 It's in stage 4 and Firefox has already implemented it. For now, it's added to HARMONY_IN_PROGRESS bucket behind '--datetime-format-to-parts' flag. BUG=v8:5244 TEST=intl/date-format/date-format-to-parts.js TEST=test262/intl402/DateTimeFormat/prototype/formatToParts/* Review-Url: https://codereview.chromium.org/2273953003 Cr-Commit-Position: refs/heads/master@{#39225}
-