1. 20 Jan, 2017 1 commit
  2. 25 Oct, 2016 1 commit
  3. 21 Oct, 2016 3 commits
    • jgruber's avatar
      [regexp] Use consistent map checks for fast paths · eb10dc4c
      jgruber authored
      These map checks were implemented for TF code already. This CL makes
      sure that parts implemented in C++ follow the same logic, which is:
      
      An object is an unmodified regexp if:
      1) it's a receiver,
      2) its map is the initial regexp map,
      3) its prototype is a receiver,
      4) and its prototype's map is the initial prototype's initial map.
      
      We can now be smarter in @@replace and @@split since checking maps
      (unlike the previous check of RegExp.prototype.exec) is not observable,
      so we can perform fast-path checks at a time of our choosing.
      
      BUG=v8:5339,v8:5434,v8:5123
      
      Review-Url: https://chromiumcodereview.appspot.com/2434983002
      Cr-Commit-Position: refs/heads/master@{#40501}
      eb10dc4c
    • machenbach's avatar
      Revert of [regexp] Use consistent map checks for fast paths (patchset #7... · 0b7e35ff
      machenbach authored
      Revert of [regexp] Use consistent map checks for fast paths (patchset #7 id:120001 of https://chromiumcodereview.appspot.com/2434983002/ )
      
      Reason for revert:
      https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/10853
      
      Original issue's description:
      > [regexp] Use consistent map checks for fast paths
      >
      > These map checks were implemented for TF code already. This CL makes
      > sure that parts implemented in C++ follow the same logic, which is:
      >
      > An object is an unmodified regexp if:
      > 1) it's a receiver,
      > 2) its map is the initial regexp map,
      > 3) its prototype is a receiver,
      > 4) and its prototype's map is the initial prototype's initial map.
      >
      > We can now be smarter in @@replace and @@split since checking maps
      > (unlike the previous check of RegExp.prototype.exec) is not observable,
      > so we can perform fast-path checks at a time of our choosing.
      >
      > BUG=v8:5339,v8:5434,v8:5123
      
      TBR=yangguo@chromium.org,jgruber@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:5339,v8:5434,v8:5123
      
      Review-Url: https://chromiumcodereview.appspot.com/2438283002
      Cr-Commit-Position: refs/heads/master@{#40499}
      0b7e35ff
    • jgruber's avatar
      [regexp] Use consistent map checks for fast paths · bac992a1
      jgruber authored
      These map checks were implemented for TF code already. This CL makes
      sure that parts implemented in C++ follow the same logic, which is:
      
      An object is an unmodified regexp if:
      1) it's a receiver,
      2) its map is the initial regexp map,
      3) its prototype is a receiver,
      4) and its prototype's map is the initial prototype's initial map.
      
      We can now be smarter in @@replace and @@split since checking maps
      (unlike the previous check of RegExp.prototype.exec) is not observable,
      so we can perform fast-path checks at a time of our choosing.
      
      BUG=v8:5339,v8:5434,v8:5123
      
      Review-Url: https://chromiumcodereview.appspot.com/2434983002
      Cr-Commit-Position: refs/heads/master@{#40495}
      bac992a1
  4. 14 Oct, 2016 2 commits
  5. 12 Oct, 2016 1 commit