1. 07 Nov, 2016 1 commit
  2. 12 Oct, 2016 2 commits
  3. 05 Oct, 2016 1 commit
  4. 29 Sep, 2016 1 commit
  5. 27 Sep, 2016 1 commit
  6. 22 Sep, 2016 1 commit
  7. 21 Sep, 2016 2 commits
  8. 16 Sep, 2016 1 commit
    • ishell's avatar
      [stubs] Port StoreTransitionStub and ElementsTransitionAndStoreStub to TurboFan. · 130d9893
      ishell authored
      This CL also cleans up related interface descriptors:
      1) unused StoreTransitionDescriptor is removed and VectorStoreTransitionDescriptor is
      renamed to StoreTransitionDescriptor.
      2) on ia32/x87 architectures slot and vector are passed on the stack (dispatcher/handlers
      cleanup will be addressed in a separate CL).
      
      These two stub ports have to be combined in one CL because:
      1) without changing the StoreTransitionDescriptor TF was not able to compile them
      on ia32/x87 (because of lack of registers),
      2) it was not possible to change the descriptor first because Crankshaft was not able
      to deal with the stack allocated parameters in case of a stub failure.
      
      TBR=jkummerow@chromium.org
      BUG=v8:5269
      
      Review-Url: https://codereview.chromium.org/2313093002
      Cr-Commit-Position: refs/heads/master@{#39476}
      130d9893
  9. 01 Sep, 2016 1 commit
  10. 23 Aug, 2016 1 commit
  11. 01 Aug, 2016 1 commit
  12. 26 Jul, 2016 1 commit
  13. 25 Jul, 2016 1 commit
  14. 14 Jul, 2016 1 commit
  15. 24 Jun, 2016 1 commit
  16. 22 Jun, 2016 1 commit
    • rmcilroy's avatar
      [Interpreter] Add intrinsics called as stubs. · 485e7751
      rmcilroy authored
      Adds support for intrinsics which can be called as stubs. Namely:
       - HasProperty
       - MathPow
       - NewObject
       - NumberToString
       - RegExpConstructResult
       - RegExpExec
       - Substring
       - ToString
       - ToName
       - ToLength
       - ToNumber
       - ToObject
      
      Also adds interface descriptors for stub calls which have arguments
      passed on the stack.
      
      BUG=v8:4280
      LOG=N
      
      Review-Url: https://codereview.chromium.org/2051573002
      Cr-Commit-Position: refs/heads/master@{#37185}
      485e7751
  17. 15 Jun, 2016 1 commit
  18. 14 Jun, 2016 1 commit
    • ishell's avatar
      [ic] Split LoadIC into LoadGlobalIC and LoadIC. · d9e8764f
      ishell authored
      The former will handle loads of predeclared global variables (vars and
      functions), lets, consts and undeclared variables. The latter will handle
      named loads from explicit receiver. In addition, named loads does not
      depend of the TypeofMode.
      
      TypeofMode related cleanup will be done in the follow-up CL.
      
      BUG=chromium:576312
      LOG=Y
      TBR=bmeurer@chromium.org
      
      Review-Url: https://codereview.chromium.org/1912633002
      Cr-Commit-Position: refs/heads/master@{#36965}
      d9e8764f
  19. 10 Jun, 2016 1 commit
  20. 08 Jun, 2016 1 commit
  21. 02 Jun, 2016 1 commit
  22. 24 May, 2016 1 commit
  23. 17 May, 2016 1 commit
    • bmeurer's avatar
      [es6] Reintroduce the instanceof operator in the backends. · 551e0aa1
      bmeurer authored
      This adds back the instanceof operator support in the backends and
      introduces a @@hasInstance protector cell on the isolate that guards the
      fast path for the InstanceOfStub. This way we recover the ~10%
      regression on Octane EarleyBoyer in Crankshaft and greatly improve
      TurboFan and Ignition performance of instanceof.
      
      R=ishell@chromium.org
      TBR=hpayer@chromium.org,rossberg@chromium.org
      BUG=chromium:597249, v8:4447
      LOG=n
      
      Review-Url: https://codereview.chromium.org/1980483003
      Cr-Commit-Position: refs/heads/master@{#36275}
      551e0aa1
  24. 10 May, 2016 1 commit
    • bmeurer's avatar
      [turbofan] Initial version of allocation folding and write barrier elimination. · b8229ec4
      bmeurer authored
      This adds a new pass MemoryOptimizer that walks over the effect chain
      from Start and lowers all Allocate, LoadField, StoreField, LoadElement,
      and StoreElement nodes, trying to fold allocations into allocation
      groups and eliminate write barriers on StoreField and StoreElement if
      possible (i.e. if the object belongs to the current allocation group and
      that group allocates in new space).
      
      R=hpayer@chromium.org, jarin@chromium.org
      BUG=v8:4931, chromium:580959
      LOG=n
      
      Review-Url: https://codereview.chromium.org/1963583004
      Cr-Commit-Position: refs/heads/master@{#36128}
      b8229ec4
  25. 03 May, 2016 2 commits
  26. 20 Apr, 2016 2 commits
  27. 19 Apr, 2016 2 commits
  28. 22 Mar, 2016 1 commit
  29. 21 Mar, 2016 1 commit
    • bmeurer's avatar
      [stubs] Unify the type conversion call interface descriptors. · 524d0194
      bmeurer authored
      Up until now all type conversions (i.e. ToNumber, ToString and friends)
      had their own specific call interface descriptors, where some of them
      had to match (i.e. ToString and NumberToString have to use the same
      argument register). Instead of all the different descriptors, it's
      sufficient to have a single TypeConversionDescriptor instead.
      
      R=jarin@chromium.org
      
      Review URL: https://codereview.chromium.org/1823523002
      
      Cr-Commit-Position: refs/heads/master@{#34916}
      524d0194
  30. 09 Mar, 2016 3 commits
    • vogelheim's avatar
      Rework CallApi*Stubs. · 5096492f
      vogelheim authored
      - Eliminate stubs with a variable number of arguments.
        (That only worked due to their very limited use. These
         stubs' interface descriptors were basically lying
         about their number of args, which will fail when used
         generically.)
      - Fix all CallApi*Stubs' interface descriptors to no
        longer lie about their arguments.
      - Unify CallApi*Stub, for * in Function, Accessor,
        FunctionWithFixedArgs.
        (Since these are now all doing the same thing.)
      - Rename the unified stub (and interface descriptors) to
        *ApiCallback*, since that's really what they're doing.
      - Refuse inlining an API callback if its number of
        parameters exceeds the supported number of args.
      
      BUG=
      
      Committed: https://crrev.com/d238b953a474272c0e3ea22ef6a9b63fa9729340
      Cr-Commit-Position: refs/heads/master@{#34614}
      
      Review URL: https://codereview.chromium.org/1748123003
      
      Cr-Commit-Position: refs/heads/master@{#34627}
      5096492f
    • vogelheim's avatar
      Revert of Rework CallApi*Stubs. (patchset #5 id:100001 of... · 52a741d1
      vogelheim authored
      Revert of Rework CallApi*Stubs. (patchset #5 id:100001 of https://codereview.chromium.org/1748123003/ )
      
      Reason for revert:
      Breaks Chromium.
      
      Original issue's description:
      > Rework CallApi*Stubs.
      >
      > - Eliminate stubs with a variable number of arguments.
      >   (That only worked due to their very limited use. These
      >    stubs' interface descriptors were basically lying
      >    about their number of args, which will fail when used
      >    generically.)
      > - Fix all CallApi*Stubs' interface descriptors to no
      >   longer lie about their arguments.
      > - Unify CallApi*Stub, for * in Function, Accessor,
      >   FunctionWithFixedArgs.
      >   (Since these are now all doing the same thing.)
      > - Rename the unified stub (and interface descriptors) to
      >   *ApiCallback*, since that's really what they're doing.
      > - Refuse inlining an API callback if its number of
      >   parameters exceeds the supported number of args.
      >
      > BUG=
      >
      > Committed: https://crrev.com/d238b953a474272c0e3ea22ef6a9b63fa9729340
      > Cr-Commit-Position: refs/heads/master@{#34614}
      
      TBR=danno@chromium.org,jkummerow@chromium.org,mstarzinger@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=
      
      Review URL: https://codereview.chromium.org/1775933005
      
      Cr-Commit-Position: refs/heads/master@{#34624}
      52a741d1
    • vogelheim's avatar
      Rework CallApi*Stubs. · d238b953
      vogelheim authored
      - Eliminate stubs with a variable number of arguments.
        (That only worked due to their very limited use. These
         stubs' interface descriptors were basically lying
         about their number of args, which will fail when used
         generically.)
      - Fix all CallApi*Stubs' interface descriptors to no
        longer lie about their arguments.
      - Unify CallApi*Stub, for * in Function, Accessor,
        FunctionWithFixedArgs.
        (Since these are now all doing the same thing.)
      - Rename the unified stub (and interface descriptors) to
        *ApiCallback*, since that's really what they're doing.
      - Refuse inlining an API callback if its number of
        parameters exceeds the supported number of args.
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1748123003
      
      Cr-Commit-Position: refs/heads/master@{#34614}
      d238b953
  31. 15 Feb, 2016 3 commits