1. 11 Dec, 2015 1 commit
  2. 10 Dec, 2015 1 commit
    • jarin's avatar
      [turbofan] Make MachineType a pair of enums. · bb2a830d
      jarin authored
      MachineType is now a class with two enum fields:
      - MachineRepresentation
      - MachineSemantic
      
      Both enums are usable on their own, and this change switches some places from using MachineType to use just MachineRepresentation. Most notably:
      - register allocator now uses just the representation.
      - Phi and Select nodes only refer to representations.
      
      Review URL: https://codereview.chromium.org/1513543003
      
      Cr-Commit-Position: refs/heads/master@{#32738}
      bb2a830d
  3. 15 Sep, 2015 1 commit
  4. 08 Jul, 2015 1 commit
  5. 03 Jul, 2015 1 commit
  6. 23 Jun, 2015 1 commit
  7. 08 Apr, 2015 1 commit
  8. 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
  9. 20 Mar, 2015 1 commit
  10. 12 Mar, 2015 1 commit
  11. 10 Mar, 2015 1 commit
    • bmeurer's avatar
      [turbofan] Unify Math.floor / Math.ceil optimization. · 022ea7e0
      bmeurer authored
      Provide an intrinsic %MathFloor / %_MathFloor that is used to optimize
      both Math.ceil and Math.floor, and use the JS inlining mechanism to
      inline Math.ceil into TurboFan code. Although we need to touch code
      outside of TurboFan to make this work, this does not affect the way we
      handle Math.ceil and/or Math.floor in CrankShaft, because for CrankShaft
      the old-style builtin function id based inlining still kicks in first.
      
      Once this solution is stabilized, we can use it for Math.floor as well.
      And once that is settled, we can establish it as the unified way to
      inline builtins, and get rid of the specialized builtin function id
      based inlining at some point.
      
      Note that "builtin" applies to basically every piece of internal
      JavaScript/intrinsics based code, so this also applies to the yet to be
      defined JavaScript based code stubs and handlers.
      
      BUG=v8:3953
      LOG=n
      R=yangguo@chromium.org,svenpanne@chromium.org
      
      Review URL: https://codereview.chromium.org/990963003
      
      Cr-Commit-Position: refs/heads/master@{#27086}
      022ea7e0
  12. 05 Mar, 2015 1 commit
  13. 02 Jan, 2015 1 commit
  14. 29 Oct, 2014 1 commit
  15. 28 Oct, 2014 1 commit
  16. 24 Oct, 2014 1 commit
  17. 14 Oct, 2014 1 commit
  18. 01 Oct, 2014 5 commits
  19. 30 Sep, 2014 1 commit
  20. 24 Sep, 2014 1 commit
  21. 22 Sep, 2014 2 commits
  22. 12 Sep, 2014 1 commit
  23. 11 Sep, 2014 1 commit
  24. 10 Sep, 2014 1 commit
  25. 04 Sep, 2014 1 commit
  26. 02 Sep, 2014 1 commit
  27. 01 Sep, 2014 1 commit
  28. 20 Aug, 2014 1 commit
  29. 19 Aug, 2014 2 commits