1. 10 Mar, 2015 2 commits
    • 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
    • bmeurer's avatar
      [turbofan] Context specialize during inlining. · a556a104
      bmeurer authored
      Context specialization enables inlining (at least currently it is the
      only enabler for inlining), but inlining enables more possibilities for
      context specialization. So we really need to run them together.
      
      This is especially important with the "module based builtins" that we're
      working towards.
      
      BUG=v8:3952
      LOG=n
      
      Review URL: https://codereview.chromium.org/988423004
      
      Cr-Commit-Position: refs/heads/master@{#27085}
      a556a104
  2. 09 Mar, 2015 30 commits
  3. 06 Mar, 2015 8 commits