1. 04 Feb, 2016 1 commit
  2. 29 Jan, 2016 1 commit
    • jkummerow's avatar
      Introduce {FAST,SLOW}_STRING_WRAPPER_ELEMENTS · f4872f74
      jkummerow authored
      String wrappers (new String("foo")) are special objects: their string
      characters are accessed like elements, and they also have an elements
      backing store. This used to require a bunch of explicit checks like:
      
      if (obj->IsJSValue() && JSValue::cast(obj)->value()->IsString()) {
        /* Handle string characters */
      }
      // Handle regular elements (for string wrappers and other objects)
      obj->GetElementsAccessor()->Whatever(...);
      
      This CL introduces new ElementsKinds for string wrapper objects (one for
      fast elements, one for dictionary elements), which allow folding the
      special-casing into new StringWrapperElementsAccessors.
      
      No observable change in behavior is intended.
      
      Review URL: https://codereview.chromium.org/1612323003
      
      Cr-Commit-Position: refs/heads/master@{#33616}
      f4872f74
  3. 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
  4. 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
  5. 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
  6. 09 Dec, 2015 1 commit
  7. 02 Dec, 2015 2 commits
  8. 28 Nov, 2015 3 commits
  9. 18 Nov, 2015 1 commit
  10. 04 Nov, 2015 1 commit