1. 21 Jul, 2016 2 commits
  2. 20 Jul, 2016 1 commit
  3. 19 Jul, 2016 2 commits
    • oth's avatar
      [interpreter] Update ForInPrepare to conditionally use runtime. · 263131cf
      oth authored
      Copies the behaviour of FullCode in attempting to get the state for
      ForInPrepare inline and falling back to the runtime if necessary.
      
      BUG=v8:4280
      LOG=N
      
      Review-Url: https://codereview.chromium.org/2155153002
      Cr-Commit-Position: refs/heads/master@{#37874}
      263131cf
    • bmeurer's avatar
      [stubs] Improve code generation for ToBoolean. · 0abba435
      bmeurer authored
      Introduce a proper CodeStubAssembler::BranchIfToBooleanIsTrue helper
      method, that branches to if_true/if_false labels depending on whether
      the value that is passed would yield true or false when fed to
      ToBoolean. Use this helper to implement the bytecode handlers w/o having
      to materialize the temporary booleans and essentially branching twice.
      The CodeStubAssembler::BranchIfToBooleanIsTrue helper favors the most
      likely case of a Boolean constant now.
      
      Also migrate the ToBooleanStub to a ToBoolean TurboFan builtin, that
      also uses the helper method under the hood.
      
      Remove the now obsolete Oddball::to_boolean field.
      
      R=hpayer@chromium.org, rmcilroy@chromium.org, yangguo@chromium.org
      
      Review-Url: https://codereview.chromium.org/2151163002
      Cr-Commit-Position: refs/heads/master@{#37849}
      0abba435
  4. 15 Jul, 2016 2 commits
  5. 14 Jul, 2016 2 commits
  6. 13 Jul, 2016 1 commit
  7. 11 Jul, 2016 2 commits
  8. 05 Jul, 2016 4 commits
  9. 30 Jun, 2016 1 commit
  10. 27 Jun, 2016 1 commit
  11. 24 Jun, 2016 2 commits
    • jyan's avatar
      [compiler] Fix turbofan string allocation · fa5e0490
      jyan authored
      The hash field is supposed to be 4 bytes even in 64-bit. But the
      default parameter of StoreObjectFieldNoWriteBarrier using kTagged
      will generate 64-bit store. Fix by Replacing kTagged with kWord32.
      
      This causes ~200 test failures on big-endian, because hash field
      offset in BE is 12 instead of 8 in LE platforms.
      
      R=bmeurer@chromium.org, epertoso@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com, bjaideep@ca.ibm.com
      BUG=
      
      Review-Url: https://codereview.chromium.org/2095003003
      Cr-Commit-Position: refs/heads/master@{#37256}
      fa5e0490
    • ishell's avatar
      [ic] Let LoadGlobalIC load the variable name from TypeFeedbackMetadata. · cfcb3597
      ishell authored
      This simplifies the calling convention of LoadGlobalIC.
      
      Currently we do a linear search to get the name but I'll address this in a follow-up CL.
      
      BUG=chromium:576312
      TBR=rossberg@chromium.org
      
      Review-Url: https://codereview.chromium.org/2084913006
      Cr-Commit-Position: refs/heads/master@{#37253}
      cfcb3597
  12. 15 Jun, 2016 1 commit
  13. 09 Jun, 2016 2 commits
  14. 07 Jun, 2016 1 commit
  15. 06 Jun, 2016 3 commits
  16. 02 Jun, 2016 2 commits
  17. 01 Jun, 2016 4 commits
  18. 31 May, 2016 1 commit
    • bmeurer's avatar
      [builtins] Migrate String.fromCharCode to TurboFan code stub. · 7554360f
      bmeurer authored
      When we moved the String.fromCharCode builtin to C++, we slightly
      regressed the fast single character code argument case. Recovered some
      of the performance by implementing the builtin using the TurboFan
      CodeStubAssembler.
      
      Drive-by-fix: Make sure the stack trace from the implicit ToNumber
      conversion in String.fromCharCode includes the builtin by adding a
      regression test for that.
      
      R=yangguo@chromium.org
      BUG=chromium:609831,chromium:613947,v8:5049
      
      Review-Url: https://codereview.chromium.org/2021143003
      Cr-Commit-Position: refs/heads/master@{#36611}
      7554360f
  19. 24 May, 2016 1 commit
  20. 21 May, 2016 2 commits
  21. 19 May, 2016 2 commits
    • danno's avatar
      [turbofan] Add FixedArray peephole optimizations to CodeStubAssembler · cbdb3738
      danno authored
      Previously, CodeStubAssembler macros performing FixedArray element accesses had
      to compute offsets to elements explicitly with a fair amount of duplicated
      code. Furthermore, any peephole optimizations that could produce better code--
      like recognizing constant indices or combining array index computation with Smi
      untagging--were also duplicated.
      
      This change factors the code to compute FixedArray index offsets into a common
      routine in the CodeStubAssembler that applies standard peephole optimizations to
      all accesses. In order to do this, it also introduces limited introspection into
      the up-until-now opaque Node* type exported from code-assembler.h, allowing
      Nodes to be queried whether they are constant and extracting their constant
      value in that case.
      
      Review-Url: https://codereview.chromium.org/1989363004
      Cr-Commit-Position: refs/heads/master@{#36370}
      cbdb3738
    • danno's avatar
      [turbofan] Add DebugBreak machine operator and support · 78b1585f
      danno authored
      Review-Url: https://codereview.chromium.org/1995543003
      Cr-Commit-Position: refs/heads/master@{#36355}
      78b1585f
  22. 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