1. 18 Nov, 2015 1 commit
    • bmeurer's avatar
      [turbofan] Decouple inlining and native context specialization. · 9b14e5bb
      bmeurer authored
      Retrieve the native context/global object from the Node being
      specialized in the JSNativeContextSpecialization and the
      JSGlobalObjectSpecialization classes. For this we introduce two
      new methods NodeProperties::GetSpecializationNativeContext and
      NodeProperties::GetSpecializationGlobalObject, which walk up
      the context chain and might in the end take the native context
      from the outermost activation (if native context specialization
      is enabled). This allows us to run the native context specialization
      pass as part of the inlining phase without hacking some of that into
      the JSInliner.
      
      Also refactor the NodeProperties::GetSpecializationContext method
      that was previously local to the JSContextSpecialization.
      
      Also refactor two other oddities in JSNativeContextSpecialization.
      
      R=jarin@chromium.org
      BUG=v8:4470, v8:4493
      LOG=n
      
      Review URL: https://codereview.chromium.org/1451143005
      
      Cr-Commit-Position: refs/heads/master@{#32076}
      9b14e5bb
  2. 29 Oct, 2015 1 commit
    • bmeurer's avatar
      [turbofan] Initial support for transitioning stores. · a0b8650e
      bmeurer authored
      Add support for stores that transition to writable data fields,
      based on the BeginRegion/FinishRegion mechanism for atomic regions
      in the scheduler.
      
      This is early work and still a bit rough around the edges, and similar
      to regular stores, we don't support transitioning stores to double
      fields yet.
      
      R=jarin@chromium.org
      BUG=v8:4470
      LOG=n
      
      Review URL: https://codereview.chromium.org/1406153010
      
      Cr-Commit-Position: refs/heads/master@{#31645}
      a0b8650e
  3. 19 Oct, 2015 1 commit
  4. 16 Oct, 2015 2 commits
    • jarin's avatar
      Revert of [turbofan] Initial support for monomorphic/polymorphic property... · 5c534812
      jarin authored
      Revert of [turbofan] Initial support for monomorphic/polymorphic property loads. (patchset #3 id:100001 of https://codereview.chromium.org/1396333010/ )
      
      Reason for revert:
      Waterfall redness.
      
      Original issue's description:
      > [turbofan] Initial support for monomorphic/polymorphic property loads.
      >
      > Native context specialization now lowers monomorphic and
      > polymorphic accesses to data and constant data properties on
      > object and/or prototype chain. We don't deal with accessors
      > yet, and we also completely ignore proxies (which is compatible
      > with what Crankshaft does).
      >
      > The code is more or less the straightforward implementation. We
      > will need to refactor that and extract common patterns once the
      > remaining bits for full load/store support is in.
      >
      > CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_nosnap_rel
      > R=jarin@chromium.org
      > BUG=v8:4470
      > LOG=n
      >
      > Committed: https://crrev.com/3a0bf860b7177f7abef01ff308a53603389d958e
      > Cr-Commit-Position: refs/heads/master@{#31340}
      
      TBR=bmeurer@chromium.org
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:4470
      
      Review URL: https://codereview.chromium.org/1408123002
      
      Cr-Commit-Position: refs/heads/master@{#31341}
      5c534812
    • bmeurer's avatar
      [turbofan] Initial support for monomorphic/polymorphic property loads. · 3a0bf860
      bmeurer authored
      Native context specialization now lowers monomorphic and
      polymorphic accesses to data and constant data properties on
      object and/or prototype chain. We don't deal with accessors
      yet, and we also completely ignore proxies (which is compatible
      with what Crankshaft does).
      
      The code is more or less the straightforward implementation. We
      will need to refactor that and extract common patterns once the
      remaining bits for full load/store support is in.
      
      CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_nosnap_rel
      R=jarin@chromium.org
      BUG=v8:4470
      LOG=n
      
      Review URL: https://codereview.chromium.org/1396333010
      
      Cr-Commit-Position: refs/heads/master@{#31340}
      3a0bf860
  5. 30 Sep, 2015 1 commit
  6. 14 Aug, 2015 1 commit
  7. 22 Apr, 2015 3 commits
  8. 20 Apr, 2015 1 commit
  9. 17 Apr, 2015 1 commit
  10. 16 Apr, 2015 1 commit