1. 09 Aug, 2016 2 commits
  2. 03 Aug, 2016 1 commit
  3. 02 Aug, 2016 2 commits
  4. 01 Aug, 2016 3 commits
  5. 28 Jul, 2016 3 commits
  6. 22 Jul, 2016 1 commit
  7. 20 Jul, 2016 2 commits
  8. 19 Jul, 2016 2 commits
  9. 18 Jul, 2016 2 commits
  10. 12 Jul, 2016 1 commit
  11. 11 Jul, 2016 1 commit
    • jgruber's avatar
      Correctly format builtin constructors in stack traces · be5808bf
      jgruber authored
      CallSite::IsConstructor() was unable to recognize builtin construct stubs
      (NumberConstructor_ConstructStub and StringConstructor_ConstructStub) as
      constructors, and thus these frames were not formatted correctly in stack
      traces.
      
      Fix this by explicitly marking their Code objects as construct stubs and
      passing along a special receiver value when we encounter such cases in
      CaptureSimpleStackTrace.
      
      R=mstarzinger@chromium.org, yangguo@chromium.org
      BUG=
      
      Review-Url: https://codereview.chromium.org/2125163004
      Cr-Commit-Position: refs/heads/master@{#37631}
      be5808bf
  12. 07 Jul, 2016 2 commits
  13. 06 Jul, 2016 1 commit
  14. 05 Jul, 2016 3 commits
  15. 01 Jul, 2016 5 commits
    • caitpotter88's avatar
      [builtins] make AsyncFunction constructor a subclass of Function · cd9e5f30
      caitpotter88 authored
      Corrects a small problem with the current implementation of the AsyncFunction
      constructor.
      
      See https://tc39.github.io/ecmascript-asyncawait/#async-function-constructor for
      details.
      
      BUG=v8:4483
      R=littledan@chromium.org, adamk@chromium.org, jwolfe@igalia.com
      
      Review-Url: https://codereview.chromium.org/2118653004
      Cr-Commit-Position: refs/heads/master@{#37484}
      cd9e5f30
    • littledan's avatar
      Implement immutable prototype chains · 0ff7b483
      littledan authored
      This patch implements "immutable prototype exotic objects" from the ECMAScript
      spec, which are objects whose __proto__ cannot be changed, but are not otherwise
      frozen. They are introduced in order to prevent a Proxy from being introduced
      to the prototype chain of the global object.
      
      The API is extended by a SetImmutablePrototype() call in ObjectTemplate, which
      can be used to vend new immutable prototype objects. Additionally, Object.prototype
      is an immutable prototype object.
      
      In the implementation, a new bit is added to Maps to say whether the prototype is
      immutable, which is read by SetPrototype. Map transitions to the immutable prototype
      state are not saved in the transition tree because the main use case is just for
      the prototype chain of the global object, which there will be only one of per
      Context, so no need to take up the extra word for a pointer in each full transition
      tree.
      
      BUG=v8:5149
      
      Review-Url: https://codereview.chromium.org/2108203002
      Cr-Commit-Position: refs/heads/master@{#37482}
      0ff7b483
    • bmeurer's avatar
      [builtins] Unify most of the remaining Math builtins. · 0a0fe8fb
      bmeurer authored
      Import fdlibm versions of acos, acosh, asin and asinh, which are more
      precise and produce the same result across platforms (we were using
      libm versions for asin and acos so far, where both speed and precision
      depended on the operating system so far). Introduce appropriate TurboFan
      operators for these functions and use them both for inlining and for the
      generic builtin.
      
      Also migrate the Math.imul and Math.fround builtins to TurboFan builtins
      to ensure that their behavior is always exactly the same as the inlined
      TurboFan version (i.e. C++ truncation semantics for double to float
      don't necessarily meet the JavaScript semantics).
      
      For completeness, also migrate Math.sign, which can even get some nice
      love in TurboFan.
      
      Drive-by-fix: Some alpha-sorting on the Math related functions, and
      cleanup the list of Math intrinsics that we have to export via the
      native context currently.
      
      BUG=v8:3266,v8:3496,v8:3509,v8:3952,v8:5169,v8:5170,v8:5171,v8:5172
      TBR=rossberg@chromium.org
      R=franzih@chromium.org
      
      Review-Url: https://codereview.chromium.org/2116753002
      Cr-Commit-Position: refs/heads/master@{#37476}
      0a0fe8fb
    • franzih's avatar
      [builtins] Migrate Math.hypot() to C++ builtins. · fe1a07fe
      franzih authored
      Migrate Math.hypot() from JS to C++ builtins. Use normalization and
      Kahan summation to avoid overflow and rounding errors.
      
      R=bmeurer@chromium.org
      BUG=v8:5165, v8:5086
      LOG=n
      
      Review-Url: https://codereview.chromium.org/2102223005
      Cr-Commit-Position: refs/heads/master@{#37473}
      fe1a07fe
    • bradnelson's avatar
      Hooking up asm-wasm conversion. · f20323dc
      bradnelson authored
      Directs 'use asm' traffic through asm-wasm conversion when --validate-asm is passed.
      
      Adds a builtin that handles the fallback to JS.
      
      BUG= https://bugs.chromium.org/p/v8/issues/detail?id=4203
      TEST=asm-wasm
      R=mstarzinger@chromium.org,titzer@chromium.org
      LOG=N
      
      Review-Url: https://codereview.chromium.org/2057403003
      Cr-Commit-Position: refs/heads/master@{#37470}
      f20323dc
  16. 30 Jun, 2016 2 commits
  17. 29 Jun, 2016 1 commit
    • jwolfe's avatar
      Allow trailing commas in function parameter lists · 1ac09655
      jwolfe authored
      Add a flag harmony_trailing_commas_in_parameters that allows trailing
      commas in function parameter declaration lists and function call
      parameter lists. Trailing commas are allowed in parenthetical lists like
      `(a, b, c,)` only if the next token is `=>`, thereby making it an arrow
      function declaration. Only 1 trailing comma is allowed, not `(a,,)`. A
      trailing comma must follow a non-rest parameter, so `(,)` and `(...a,)`
      are still SyntaxErrors. However, a trailing comma is allowed after a
      spread parameter, e.g. `a(...b,);`.
      
      Add parser tests for all of the above.
      
      BUG=v8:5051
      LOG=y
      
      Review-Url: https://codereview.chromium.org/2094463002
      Cr-Commit-Position: refs/heads/master@{#37355}
      1ac09655
  18. 28 Jun, 2016 1 commit
    • bmeurer's avatar
      [turbofan] Introduce Float64Pow and NumberPow operators. · e607e12e
      bmeurer authored
      Introduce a new machine operator Float64Pow that for now is backed by
      the existing MathPowStub to start the unification of Math.pow, and at
      the same time address the main performance issue that TurboFan still has
      with the imaging-darkroom benchmark in Kraken.
      
      Also migrate the Math.pow builtin itself to a TurboFan builtin and
      remove a few hundred lines of hand-written platform code for special
      handling of the fullcodegen Math.pow version.
      
      BUG=v8:3599,v8:5086,v8:5157
      
      Review-Url: https://codereview.chromium.org/2103733003
      Cr-Commit-Position: refs/heads/master@{#37323}
      e607e12e
  19. 27 Jun, 2016 4 commits
  20. 24 Jun, 2016 1 commit