1. 18 Mar, 2016 1 commit
  2. 15 Mar, 2016 1 commit
  3. 14 Mar, 2016 1 commit
  4. 11 Mar, 2016 1 commit
  5. 10 Mar, 2016 1 commit
  6. 01 Mar, 2016 1 commit
  7. 25 Feb, 2016 1 commit
  8. 23 Feb, 2016 1 commit
    • littledan's avatar
      Ensure Array.prototype.indexOf returns +0 rather than -0 · 8798ef2d
      littledan authored
      A recent ES2016 draft spec clarification indicates that, if -0 is
      passed into Array.prototype.indexOf or Array.prototype.lastIndexOf
      as the starting index, and the result is found at index 0, then +0
      rather than -0 should be returned. This patch ensures that V8 has
      that result, which is consistent with what some other browsers
      return. The patch allows a couple test262 tests to pass.
      
      R=adamk
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1729653002
      
      Cr-Commit-Position: refs/heads/master@{#34229}
      8798ef2d
  9. 19 Feb, 2016 1 commit
  10. 17 Feb, 2016 3 commits
  11. 11 Feb, 2016 1 commit
  12. 10 Feb, 2016 1 commit
    • littledan's avatar
      Use a for-of loop in Array.from · defcc642
      littledan authored
      If Array.from is passed an iterable, then it will copy the contents
      to the newly created Array (or subclass). The iteration protocol here
      includes calling IteratorClose if the loop is exited early due to an
      exception thrown. This patch converts Array.from to use a for-of loop
      rather than explicitly invoking the iteration protocol so that, when
      IteratorClose is invoked on early for-of exit, then Array.from will
      call IteratorClose in the appropriate case.
      
      R=neis
      LOG=Y
      BUG=v8:4739
      
      Review URL: https://codereview.chromium.org/1686433003
      
      Cr-Commit-Position: refs/heads/master@{#33859}
      defcc642
  13. 09 Feb, 2016 2 commits
    • bmeurer's avatar
      Revert of [builtins] Remove bunch of uses of %_Arguments and... · dca275ba
      bmeurer authored
      Revert of [builtins] Remove bunch of uses of %_Arguments and %_ArgumentsLength. (patchset #1 id:1 of https://codereview.chromium.org/1678953004/ )
      
      Reason for revert:
      Breaks tree
      
      Original issue's description:
      > [builtins] Remove bunch of uses of %_Arguments and %_ArgumentsLength.
      >
      > There are a bunch of places in our builtins where we use %_Arguments and
      > %_ArgumentsLength for no good reason, as arguments object and/or rest
      > parameter is as good and performant in these cases. Now the only uses
      > of %_Arguments and %_ArgumentsLength left are in string.js, which
      > requires dedicated investigation.
      >
      > R=yangguo@chromium.org
      >
      > Committed: https://crrev.com/2160429fd458e3c095475e718c97f77ac90d906f
      > Cr-Commit-Position: refs/heads/master@{#33834}
      
      TBR=yangguo@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      
      Review URL: https://codereview.chromium.org/1677063005
      
      Cr-Commit-Position: refs/heads/master@{#33835}
      dca275ba
    • bmeurer's avatar
      [builtins] Remove bunch of uses of %_Arguments and %_ArgumentsLength. · 2160429f
      bmeurer authored
      There are a bunch of places in our builtins where we use %_Arguments and
      %_ArgumentsLength for no good reason, as arguments object and/or rest
      parameter is as good and performant in these cases. Now the only uses
      of %_Arguments and %_ArgumentsLength left are in string.js, which
      requires dedicated investigation.
      
      R=yangguo@chromium.org
      
      Review URL: https://codereview.chromium.org/1678953004
      
      Cr-Commit-Position: refs/heads/master@{#33834}
      2160429f
  14. 03 Feb, 2016 1 commit
  15. 07 Jan, 2016 1 commit
    • littledan's avatar
      Add Array support for @@species and subclassing · 6e962237
      littledan authored
      This patch implements @@species, guarded behind the --harmony-species
      flag, on Arrays. Methods which return an Array will instead return
      the appropriate instance based on the ArraySpeciesCreate algorithm.
      The algorithm is implemented in C++ to get access to realm information
      and to implement some Array methods in C++, but it is also accessed
      from JavaScript through a new runtime function. A couple interactive
      Octane runs show no performance regression with the flag turned off,
      but turning --harmony-species on will surely have a significant
      regression, as Array methods now heavily use ObjectDefineProperty.
      
      BUG=v8:4093
      LOG=Y
      R=adamk,cbruni
      
      Review URL: https://codereview.chromium.org/1560763002
      
      Cr-Commit-Position: refs/heads/master@{#33144}
      6e962237
  16. 04 Jan, 2016 1 commit
  17. 17 Dec, 2015 1 commit
  18. 12 Dec, 2015 1 commit
  19. 11 Dec, 2015 1 commit
    • adamk's avatar
      Rewrite Object.prototype.toString in C++ · ed698f3d
      adamk authored
      The main impetus is to improve performance when --harmony-tostring
      is enabled, thanks to using a generic property load instead of a
      megamorphic IC.
      
      This also reduces duplication, as the API function
      v8::Object::ObjectProtoToString can share the runtime implementation.
      
      The only functional change in this patch is to drop an accidental difference
      between the JS and API implementations: the arguments object should toString
      as "[object Arguments]". The JS side was corrected in
      https://code.google.com/p/v8/source/detail?r=3279, but the API version was
      missed in that patch.
      
      BUG=chromium:555127, v8:3502
      LOG=n
      CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
      
      Review URL: https://codereview.chromium.org/1509533003
      
      Cr-Commit-Position: refs/heads/master@{#32777}
      ed698f3d
  20. 08 Dec, 2015 1 commit
  21. 07 Dec, 2015 1 commit
  22. 03 Dec, 2015 1 commit
  23. 26 Nov, 2015 1 commit
  24. 25 Nov, 2015 2 commits
  25. 20 Nov, 2015 1 commit
  26. 05 Nov, 2015 1 commit
  27. 04 Nov, 2015 1 commit
  28. 28 Oct, 2015 1 commit
    • littledan's avatar
      Avoid calling %AddElement with a number out of array index range · 700bbdc6
      littledan authored
      This patch wraps callsites to %AddElement to fall back to adding a
      named property in case it is given an argument of 2**32 or greater.
      The change is needed because %AddElement is called by Array functions
      in various places, and ES2015 changes these Array functions to use
      ToLength rather than ToUint32, so several callsites of %AddElement
      which used to be reliable array indices may be larger numbers. While
      the proper long-term solution may be to call out to
      Object.defineProperty, this fix should allow the ToLength semantics
      to be shipped while preserving correctness and not requiring a
      rewrite.
      
      BUG=v8:4516
      LOG=Y
      R=adamk
      TEST=Interactively ran Array.prototype.slice on an Array-like which
      exceeded array bounds, and found that this did not check-fail at
      runtime as it did before.
      Microbenchmarked this technique against the previous version on a
      simple reverse implementation and found at most a 1% slowdown, as
      opposed to other techniques, like calling %DefineDataPropertyUnchecked,
      which had a 20% slowdown or Object.defineProperty with a 80% slowdown.
      
      Review URL: https://codereview.chromium.org/1420663003
      
      Cr-Commit-Position: refs/heads/master@{#31640}
      700bbdc6
  29. 27 Oct, 2015 3 commits
  30. 22 Oct, 2015 1 commit
  31. 20 Oct, 2015 2 commits
  32. 16 Oct, 2015 1 commit
  33. 15 Oct, 2015 1 commit