1. 06 Apr, 2017 1 commit
  2. 29 Mar, 2017 1 commit
    • Caitlin Potter's avatar
      [async-iteration] implement AsyncGenerator · bf463c4d
      Caitlin Potter authored
      - Introduce new struct AsyncGeneratorRequest, which holds
        information pertinent to resuming execution of an
        AsyncGenerator, such as the Promise associated with the async
        generator request. It is intended to be used as a singly
        linked list, and holds a pointer to the next item in te queue.
      
      - Introduce JSAsyncGeneratorObject (subclass of
        JSGeneratorObject), which includes several new internal fields
        (`queue` which contains a singly linked list of
        AsyncGeneratorRequest objects, and `await_input` which
        contains the sent value from an Await expression (This is
        necessary to prevent function.sent (used by yield*) from
        having the sent value observably overwritten during
        execution).
      
      - Modify SuspendGenerator to accept a set of Flags, which
        indicate whether the suspend is for a Yield or Await, and
        whether it takes place on an async generator or ES6
        generator.
      
      - Introduce interpreter intrinsics and TF intrinsic lowering for
        accessing the await input of an async generator
      
      - Modify the JSGeneratorStore operator to understand whether or
        not it's suspending for a normal yield, or an AsyncGenerator
        Await. This ensures appropriate registers are stored.
      
      - Add versions of ResumeGeneratorTrampoline which store the
        input value in a different field depending on wether it's an
        AsyncGenerator Await resume, or an ordinary resume. Also modifies
        whether debug code will assert that the generator object is a
        JSGeneratorObject or a JSAsyncGeneratorObject depending on the
        resume type.
      
      BUG=v8:5855
      R=bmeurer@chromium.org, rmcilroy@chromium.org, jgruber@chromium.org,
      littledan@chromium.org, neis@chromium.org
      TBR=marja@chromium.org
      
      Change-Id: I9d58df1d344465fc937fe7eed322424204497187
      Reviewed-on: https://chromium-review.googlesource.com/446961
      Commit-Queue: Caitlin Potter <caitp@igalia.com>
      Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
      Reviewed-by: 's avatarHannes Payer <hpayer@chromium.org>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#44240}
      bf463c4d
  3. 27 Mar, 2017 2 commits
  4. 22 Mar, 2017 2 commits
  5. 17 Mar, 2017 1 commit
  6. 15 Mar, 2017 1 commit
  7. 15 Feb, 2017 1 commit
  8. 13 Feb, 2017 1 commit
  9. 10 Feb, 2017 1 commit
  10. 09 Feb, 2017 2 commits
  11. 07 Feb, 2017 1 commit
  12. 06 Feb, 2017 1 commit
  13. 27 Jan, 2017 1 commit
    • yangguo's avatar
      [liveedit] reimplement frame restarting. · 3f47c63d
      yangguo authored
      Previously, when restarting a frame, we would rewrite all frames
      between the debugger activation and the frame to restart to squash
      them, and replace the return address with that of a builtin to
      leave that rewritten frame, and restart the function by calling it.
      
      We now simply remember the frame to drop to, and upon returning
      from the debugger, we check whether to drop the frame, load the
      new FP, and restart the function.
      
      R=jgruber@chromium.org, mstarzinger@chromium.org
      BUG=v8:5587
      
      Review-Url: https://codereview.chromium.org/2636913002
      Cr-Commit-Position: refs/heads/master@{#42725}
      3f47c63d
  14. 24 Jan, 2017 1 commit
  15. 18 Jan, 2017 2 commits
  16. 13 Jan, 2017 1 commit
  17. 12 Jan, 2017 1 commit
  18. 03 Jan, 2017 1 commit
  19. 02 Jan, 2017 1 commit
  20. 29 Dec, 2016 1 commit
  21. 20 Dec, 2016 1 commit
    • yangguo's avatar
      [api] add API for Promise status and result. · 28432588
      yangguo authored
      Currently, to find out a Promise's status and result, one has to use the
      debug context. This is for example done in Node.js. This new API is a
      better replacement, also in the context of the debug context being
      deprecated eventually.
      
      R=franzih@chromium.org, gsathya@chromium.org, jochen@chromium.org
      BUG=v8:5764
      
      Review-Url: https://codereview.chromium.org/2589113002
      Cr-Commit-Position: refs/heads/master@{#41855}
      28432588
  22. 19 Dec, 2016 1 commit
  23. 16 Dec, 2016 1 commit
  24. 22 Nov, 2016 1 commit
  25. 21 Nov, 2016 1 commit
  26. 17 Nov, 2016 4 commits
  27. 14 Nov, 2016 1 commit
  28. 11 Nov, 2016 1 commit
  29. 27 Oct, 2016 1 commit
  30. 24 Oct, 2016 1 commit
    • adamk's avatar
      [full-codegen] Eliminate unnecessary hole checks for stores · 231c8ac0
      adamk authored
      Loads already used source position elimination to avoid unnecessary hole checks,
      but for reasons unknown stores did not. This CL corrects that, making full-codegen's
      hole elimination equivalent to ignition's.
      
      Also introduced a HoleCheckMode enum class to avoid more bool flags and updated
      VariableProxy and BytecodeGenerator appropriately.
      
      Review-Url: https://codereview.chromium.org/2441543005
      Cr-Commit-Position: refs/heads/master@{#40522}
      231c8ac0
  31. 13 Oct, 2016 1 commit
  32. 11 Oct, 2016 1 commit
  33. 10 Oct, 2016 1 commit