1. 13 Jul, 2017 1 commit
  2. 02 Mar, 2017 1 commit
    • tebbi's avatar
      [wasm] change reducer order in WASM pipeline to make build predictable again · 12ce15c3
      tebbi authored
      BinopMatcher does not notify the reducers using it when it flips inputs to commutative operators. This leads to value numbering not being re-executed in this case. Together with the fact that value numbering might still reduce such a modified node in the case of a hash collision merging the buckets of two equivalent nodes, this leads to unpredictable behaviour.
      
      This is the easiest fix for the problem: Always running value numbering last. This is also a performance improvement because value numbering never changes but only replaces nodes.
      
      R=mstarzinger@chromium.org
      
      Review-Url: https://codereview.chromium.org/2728983002
      Cr-Commit-Position: refs/heads/master@{#43552}
      12ce15c3
  3. 24 Feb, 2017 1 commit
  4. 03 Nov, 2016 1 commit
  5. 17 Oct, 2016 1 commit
  6. 16 Sep, 2016 1 commit
  7. 15 Aug, 2016 1 commit
  8. 25 Jul, 2016 1 commit
  9. 13 Jul, 2016 1 commit
  10. 30 Jun, 2016 1 commit
    • bmeurer's avatar
      [turbofan] Introduce CheckIf simplified operator. · 483291d2
      bmeurer authored
      This adds a new CheckIf operator and changes all direct uses of
      DeoptimizeIf and DeoptimizeUnless on the JavaScript level to use
      CheckIf (or one of the more concrete check operators) instead.
      This way we do not depend on particular frame states, but the
      effect/control linearizer will assign an appropriate frame
      state instead.
      
      R=jarin@chromium.org
      BUG=v8:5141
      
      Review-Url: https://codereview.chromium.org/2115513002
      Cr-Commit-Position: refs/heads/master@{#37423}
      483291d2
  11. 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
  12. 18 Apr, 2016 1 commit
  13. 11 Jan, 2016 1 commit
  14. 01 Sep, 2015 2 commits
  15. 31 Aug, 2015 1 commit
    • mstarzinger's avatar
      [turbofan] Remove usage of Unique<T> from graph. · 6e65e6db
      mstarzinger authored
      The usage of Unique<T> throughout the TurboFan IR does not have any
      advantage. There is no single point in time when they are initialized
      and most use-sites looked through to the underlying Handle<T> anyways.
      Also there already was a mixture of Handle<T> versus Unique<T> in the
      graph and this unifies the situation to use Handle<T> everywhere.
      
      R=bmeurer@chromium.org,titzer@chromium.org
      
      Review URL: https://codereview.chromium.org/1314473007
      
      Cr-Commit-Position: refs/heads/master@{#30458}
      6e65e6db
  16. 19 Jun, 2015 1 commit
  17. 20 Apr, 2015 1 commit
  18. 08 Apr, 2015 2 commits
  19. 07 Apr, 2015 1 commit
  20. 30 Mar, 2015 1 commit
    • bmeurer's avatar
      [turbofan] Add backend support for float32 operations. · 8dad78cd
      bmeurer authored
      This adds the basics necessary to support float32 operations in TurboFan.
      The actual functionality required to detect safe float32 operations will
      be added based on this later. Therefore this does not affect production
      code except for some cleanup/refactoring.
      
      In detail, this patchset contains the following features:
      - Add support for float32 operations to arm, arm64, ia32 and x64
        backends.
      - Add float32 machine operators.
      - Add support for float32 constants to simplified lowering.
      - Handle float32 representation for phis in simplified lowering.
      
      In addition, contains the following (related) cleanups:
      - Fix/unify naming of backend instructions.
      - Use AVX comparisons when available.
      - Extend ArchOpcodeField to 9 bits (required for arm64).
      - Refactor some code duplication in instruction selectors.
      
      BUG=v8:3589
      LOG=n
      R=dcarney@chromium.org
      
      Review URL: https://codereview.chromium.org/1044793002
      
      Cr-Commit-Position: refs/heads/master@{#27509}
      8dad78cd
  21. 09 Mar, 2015 1 commit
  22. 24 Feb, 2015 1 commit
  23. 18 Dec, 2014 1 commit
  24. 12 Dec, 2014 1 commit
  25. 11 Dec, 2014 1 commit
  26. 05 Dec, 2014 1 commit
  27. 28 Nov, 2014 1 commit
  28. 26 Nov, 2014 3 commits
  29. 24 Nov, 2014 2 commits
  30. 17 Nov, 2014 2 commits
  31. 07 Nov, 2014 1 commit
  32. 31 Oct, 2014 1 commit
  33. 29 Oct, 2014 1 commit
  34. 28 Oct, 2014 1 commit