1. 07 Oct, 2015 20 commits
  2. 06 Oct, 2015 16 commits
  3. 05 Oct, 2015 4 commits
    • littledan's avatar
      Fix legacy const for-of/in destructuring · 38465598
      littledan authored
      Previously, using legacy const in for-of/in loops led to a check-fail
      in the parser. This was due to the fact that the destructuring bind
      led to an undefined initialization to undefined in the parser, which
      caused the for loop code to go down a strange path. This patch
      eliminates the undefined initialization in variables declared in
      for-in/of loops, so that that path is not used and the error is
      fixed.
      
      BUG=v8:4461
      LOG=Y
      R=adamk
      
      Review URL: https://codereview.chromium.org/1385913003
      
      Cr-Commit-Position: refs/heads/master@{#31117}
      38465598
    • stefan.penner's avatar
      [es6] Align Promise.resolve with the spec · dcbab0f5
      stefan.penner authored
      * Promise.resolve is now works with subclasses
      * Spec removed [[PromiseConstructor]] now can simply use constructor
      * Promise.resolve ignores species
      
      R=littledan@chromium.org,domenic@chromium.org
      BUG=v8:4161,v8:4341
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1362773002
      
      Cr-Commit-Position: refs/heads/master@{#31116}
      dcbab0f5
    • littledan's avatar
      Prohibit let in lexical bindings · 7e113c47
      littledan authored
      This patch prohibits lexical bindings from being called 'let', even in
      sloppy mode, following the ES2015 specification. The change affects
      multiple cases of lexical bindings, including simple let/const declarations
      and both kinds of for loops. var and legacy const bindings still permit
      the name to be let, including in destructuring cases. Tests are added to
      verify, though some cases are commented out since they led to (pre-existing)
      crashes.
      
      BUG=v8:4403
      R=adamk
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1371263003
      
      Cr-Commit-Position: refs/heads/master@{#31115}
      7e113c47
    • mbrandy's avatar
      PPC: Remove register index/code indirection · f53fda63
      mbrandy authored
      Port 5cf1c0bc
      
      Original commit message:
          Previous to this patch, both the lithium and TurboFan register
          allocators tracked allocated registers by "indices", rather than
          the register codes used elsewhere in the runtime. This patch
          ensures that codes are used everywhere, and in the process cleans
          up a bunch of redundant code and adds more structure to how the
          set of allocatable registers is defined.
      
          Some highlights of changes:
      
          * TurboFan's RegisterConfiguration class moved to V8's top level
            so that it can be shared with Crankshaft.
          * Various "ToAllocationIndex" and related methods removed.
          * Code that can be easily shared between Register classes on
            different platforms is now shared.
          * The list of allocatable registers on each platform is declared
            as a list rather than implicitly via the register index <->
            code mapping.
      
      R=danno@chromium.org, bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, dstence@us.ibm.com
      BUG=
      
      Review URL: https://codereview.chromium.org/1381383002
      
      Cr-Commit-Position: refs/heads/master@{#31114}
      f53fda63