1. 03 May, 2016 1 commit
  2. 30 Mar, 2016 1 commit
  3. 23 Mar, 2016 1 commit
    • cbruni's avatar
      [proxies] use [[GetPrototypeOf]] trap in for-in key accumulation · 2efc1381
      cbruni authored
      With the recent spec change removing the [[Enumerate]] internal method, we now
      have to walk the complete prototype chain. This implies that we call the
      [[GetPrototypeOf]] trap on proxies.
      
      As a secondary change we now trigger the [[GetOwnProperty]] trap for the for-in
      filter step to see whether the properties are still enumerable. Before we did this
      in the key-accumulation phase. This way we slightly reduce the number of traps
      invoked. Whilst this is not ideal, it comes closer to the Spec's example
      implementation.
      
      BUG=v8:1543, v8:4768
      LOG=n
      
      Review URL: https://codereview.chromium.org/1748923003
      
      Cr-Commit-Position: refs/heads/master@{#35017}
      2efc1381
  4. 10 Mar, 2016 1 commit
  5. 07 Mar, 2016 5 commits
  6. 04 Feb, 2016 1 commit
  7. 22 Jan, 2016 2 commits
    • cbruni's avatar
      Revert of [runtime] Do not use the enum-cache for non-prototype objects.... · 1c523a44
      cbruni authored
      Revert of [runtime] Do not use the enum-cache for non-prototype objects. (patchset #1 id:1 of https://codereview.chromium.org/1612413003/ )
      
      Reason for revert:
      let me quickly revert the revert, wut?
      Goal: my CL should not be in the tree!
      
      Original issue's description:
      > Reland of [runtime] Do not use the enum-cache for non-prototype objects. (patchset #1 id:1 of https://codereview.chromium.org/1619803003/ )
      >
      > Reason for revert:
      > the deopt issues have been taken care of by benedikt
      >
      > Original issue's description:
      > > Revert of [runtime] Do not use the enum-cache for non-prototype objects. (patchset #10 id:180001 of https://codereview.chromium.org/1608523002/ )
      > >
      > > Reason for revert:
      > > tanks for-in significantly
      > >
      > > Original issue's description:
      > > > [runtime] Do not use the enum-cache for keys retrieval.
      > > >
      > > > Currently we fail to properly handle shadowed properties. If the
      > > > receiver defines a non-enumerable property that reappears on the
      > > > prototype as enumerable it incorrectly shows up in [[Enumerate]].
      > > > By extending the KeyAccumulator to track non-enumerable properties
      > > > we can now properly filter them out when seeing them further up in
      > > > the prototype-chain.
      > > >
      > > > BUG=v8:705
      > > > LOG=y
      > > >
      > > > Committed: https://crrev.com/ed24dfe80d1da0827b8571839ee52c03ad09c9c7
      > > > Cr-Commit-Position: refs/heads/master@{#33405}
      > >
      > > TBR=jkummerow@chromium.org,bmeurer@chromium.org
      > > # Not skipping CQ checks because original CL landed more than 1 days ago.
      > > BUG=v8:705
      > > LOG=n
      > >
      > > Committed: https://crrev.com/6e0573c6fff1c3041bab106d1197ab1b64aa9a6a
      > > Cr-Commit-Position: refs/heads/master@{#33443}
      >
      > TBR=jkummerow@chromium.org,bmeurer@chromium.org
      > # Skipping CQ checks because original CL landed less than 1 days ago.
      > NOPRESUBMIT=true
      > NOTREECHECKS=true
      > NOTRY=true
      > BUG=v8:705
      >
      > Committed: https://crrev.com/5569e270eda517b5ea74e3a7676b3230cbe2f7a9
      > Cr-Commit-Position: refs/heads/master@{#33458}
      
      TBR=jkummerow@chromium.org,bmeurer@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:705
      
      Review URL: https://codereview.chromium.org/1614313003
      
      Cr-Commit-Position: refs/heads/master@{#33459}
      1c523a44
    • cbruni's avatar
      Reland of [runtime] Do not use the enum-cache for non-prototype objects.... · 5569e270
      cbruni authored
      Reland of [runtime] Do not use the enum-cache for non-prototype objects. (patchset #1 id:1 of https://codereview.chromium.org/1619803003/ )
      
      Reason for revert:
      the deopt issues have been taken care of by benedikt
      
      Original issue's description:
      > Revert of [runtime] Do not use the enum-cache for non-prototype objects. (patchset #10 id:180001 of https://codereview.chromium.org/1608523002/ )
      >
      > Reason for revert:
      > tanks for-in significantly
      >
      > Original issue's description:
      > > [runtime] Do not use the enum-cache for keys retrieval.
      > >
      > > Currently we fail to properly handle shadowed properties. If the
      > > receiver defines a non-enumerable property that reappears on the
      > > prototype as enumerable it incorrectly shows up in [[Enumerate]].
      > > By extending the KeyAccumulator to track non-enumerable properties
      > > we can now properly filter them out when seeing them further up in
      > > the prototype-chain.
      > >
      > > BUG=v8:705
      > > LOG=y
      > >
      > > Committed: https://crrev.com/ed24dfe80d1da0827b8571839ee52c03ad09c9c7
      > > Cr-Commit-Position: refs/heads/master@{#33405}
      >
      > TBR=jkummerow@chromium.org,bmeurer@chromium.org
      > # Not skipping CQ checks because original CL landed more than 1 days ago.
      > BUG=v8:705
      > LOG=n
      >
      > Committed: https://crrev.com/6e0573c6fff1c3041bab106d1197ab1b64aa9a6a
      > Cr-Commit-Position: refs/heads/master@{#33443}
      
      TBR=jkummerow@chromium.org,bmeurer@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:705
      
      Review URL: https://codereview.chromium.org/1612413003
      
      Cr-Commit-Position: refs/heads/master@{#33458}
      5569e270
  8. 21 Jan, 2016 1 commit
    • cbruni's avatar
      Revert of [runtime] Do not use the enum-cache for non-prototype objects.... · 6e0573c6
      cbruni authored
      Revert of [runtime] Do not use the enum-cache for non-prototype objects. (patchset #10 id:180001 of https://codereview.chromium.org/1608523002/ )
      
      Reason for revert:
      tanks for-in significantly
      
      Original issue's description:
      > [runtime] Do not use the enum-cache for keys retrieval.
      >
      > Currently we fail to properly handle shadowed properties. If the
      > receiver defines a non-enumerable property that reappears on the
      > prototype as enumerable it incorrectly shows up in [[Enumerate]].
      > By extending the KeyAccumulator to track non-enumerable properties
      > we can now properly filter them out when seeing them further up in
      > the prototype-chain.
      >
      > BUG=v8:705
      > LOG=y
      >
      > Committed: https://crrev.com/ed24dfe80d1da0827b8571839ee52c03ad09c9c7
      > Cr-Commit-Position: refs/heads/master@{#33405}
      
      TBR=jkummerow@chromium.org,bmeurer@chromium.org
      # Not skipping CQ checks because original CL landed more than 1 days ago.
      BUG=v8:705
      LOG=n
      
      Review URL: https://codereview.chromium.org/1619803003
      
      Cr-Commit-Position: refs/heads/master@{#33443}
      6e0573c6
  9. 20 Jan, 2016 1 commit
    • cbruni's avatar
      [runtime] Do not use the enum-cache for keys retrieval. · ed24dfe8
      cbruni authored
      Currently we fail to properly handle shadowed properties. If the
      receiver defines a non-enumerable property that reappears on the
      prototype as enumerable it incorrectly shows up in [[Enumerate]].
      By extending the KeyAccumulator to track non-enumerable properties
      we can now properly filter them out when seeing them further up in
      the prototype-chain.
      
      BUG=v8:705
      LOG=y
      
      Review URL: https://codereview.chromium.org/1608523002
      
      Cr-Commit-Position: refs/heads/master@{#33405}
      ed24dfe8
  10. 09 Dec, 2015 2 commits
  11. 03 Dec, 2015 1 commit
  12. 02 Dec, 2015 2 commits
  13. 28 Nov, 2015 3 commits
  14. 04 Nov, 2015 1 commit