1. 11 Apr, 2015 1 commit
  2. 09 Apr, 2015 1 commit
  3. 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
  4. 27 Mar, 2015 1 commit
  5. 23 Mar, 2015 1 commit
  6. 18 Mar, 2015 1 commit
  7. 12 Mar, 2015 1 commit
  8. 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
  9. 05 Mar, 2015 1 commit
  10. 27 Feb, 2015 1 commit
  11. 13 Feb, 2015 1 commit
  12. 11 Feb, 2015 1 commit
  13. 06 Feb, 2015 1 commit
  14. 05 Feb, 2015 3 commits
  15. 04 Feb, 2015 2 commits
    • loislo's avatar
      Revert of Externalize deoptimization reasons. (patchset #6 id:100001 of... · bfc5d83b
      loislo authored
      Revert of Externalize deoptimization reasons. (patchset #6 id:100001 of https://codereview.chromium.org/874323003/)
      
      Reason for revert:
      it broke the build
      
      Original issue's description:
      > Externalize deoptimization reasons.
      >
      > 1) The hardcoded strings were converted into DeoptReason enum.
      >
      > 2) Deopt comment were converted into a pair location and deopt reason entries so
      > the deopt reason tracking mode would less affect the size of the RelocInfo table and heap.
      >
      > 3) DeoptReason entry in RelocInfo reuses kCommentTag value and generates short entry in RelocInfo table.
      >
      > BUG=452067
      > LOG=n
      >
      > Committed: https://crrev.com/c49820e45b57f128a98690940875c049f612dde6
      > Cr-Commit-Position: refs/heads/master@{#26434}
      
      TBR=alph@chromium.org,mstarzinger@chromium.org,svenpanne@chromium.org,yurys@chromium.org
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=452067
      
      Review URL: https://codereview.chromium.org/892843007
      
      Cr-Commit-Position: refs/heads/master@{#26435}
      bfc5d83b
    • loislo's avatar
      Externalize deoptimization reasons. · c49820e4
      loislo authored
      1) The hardcoded strings were converted into DeoptReason enum.
      
      2) Deopt comment were converted into a pair location and deopt reason entries so
      the deopt reason tracking mode would less affect the size of the RelocInfo table and heap.
      
      3) DeoptReason entry in RelocInfo reuses kCommentTag value and generates short entry in RelocInfo table.
      
      BUG=452067
      LOG=n
      
      Review URL: https://codereview.chromium.org/874323003
      
      Cr-Commit-Position: refs/heads/master@{#26434}
      c49820e4
  16. 02 Dec, 2014 3 commits
  17. 03 Nov, 2014 1 commit
  18. 13 Oct, 2014 2 commits
  19. 09 Oct, 2014 1 commit
  20. 02 Oct, 2014 1 commit
  21. 25 Sep, 2014 1 commit
  22. 24 Sep, 2014 1 commit
  23. 19 Sep, 2014 1 commit
  24. 06 Aug, 2014 1 commit
  25. 04 Aug, 2014 1 commit
  26. 30 Jul, 2014 1 commit
  27. 05 Jun, 2014 1 commit
  28. 04 Jun, 2014 1 commit
  29. 03 Jun, 2014 1 commit
  30. 27 May, 2014 1 commit
  31. 20 May, 2014 1 commit
  32. 16 May, 2014 1 commit
    • yangguo@chromium.org's avatar
      Decouple CpuFeatures from serializer state. · fe243379
      yangguo@chromium.org authored
      Traditionally, we cross compile a snapshot iff the serializer is enabled.
      This will change in the future.
      
      Changes:
       - CpuFeatures probing is done once per process, depending on whether we
         cross compile.
       - CpuFeatures are consolidated into the platform-independent assembler.h
         as much as possible.
       - FLAG_enable_<feature> will only be checked at probing time (already the
         case for ARM).
       - The serializer state is cached by the MacroAssembler.
       - PlatformFeatureScope is no longer necessary.
       - CPUFeature enum values no longer map to CPUID bit fields.
      
      R=svenpanne@chromium.org
      
      Review URL: https://codereview.chromium.org/285233010
      
      git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21347 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      fe243379
  33. 13 May, 2014 2 commits