1. 02 Oct, 2015 3 commits
  2. 01 Oct, 2015 24 commits
  3. 30 Sep, 2015 13 commits
    • littledan's avatar
      Extend Annex B 3.3 sloppy-mode block-scoped hoisting to scripts, eval · 76da4933
      littledan authored
      The ES2015 spec is missing an extension of sloppy-mode block-scoped function
      behavior to the global scope in scripts, as well as to eval. This patch
      brings that hoisting to those two areas. The behavior is not perfectly
      spec-compliant since properties created on the global scope should be
      set as enumerable even if they are non-enumerable previously, but the
      attributes will not be modified if the property already exists under
      this patch.
      
      BUG=v8:4441
      LOG=Y
      R=adamk
      TEST=reddit comment functionality seems to be fixed
      
      Review URL: https://codereview.chromium.org/1376623002
      
      Cr-Commit-Position: refs/heads/master@{#31037}
      76da4933
    • mbrandy's avatar
      PPC: Full code shouldn't embed the type feedback vector. · 6fb3708d
      mbrandy authored
      Port c90c60ba
      
      Original commit message:
          Make sure to always reference it indirectly. This allows us to make the vector
          native-context dependent should we wish.
      
      R=mvstanton@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/1381803002
      
      Cr-Commit-Position: refs/heads/master@{#31036}
      6fb3708d
    • mbrandy's avatar
      PPC: Introduce LiteralsArray to hide it's implementation. · aeefe101
      mbrandy authored
      Port d8cdd695
      
      Original commit message:
          The LiteralsArray will soon hold a type feedback vector. Code treats it as an
          ordinary fixed array, and needs to stop that.
      
      R=mvstanton@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/1373823003
      
      Cr-Commit-Position: refs/heads/master@{#31035}
      aeefe101
    • mbrandy's avatar
      PPC: [es6] Fix invalid ToString in implementation of ToName. · 96d6fcff
      mbrandy authored
      Port 09626525
      
      R=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/1377133005
      
      Cr-Commit-Position: refs/heads/master@{#31034}
      96d6fcff
    • mbrandy's avatar
      PPC: [turbofan] Call ArgumentsAccessStub to materialize arguments. · 8de7235c
      mbrandy authored
      Port 9b12ec9a
      
      Original commit message:
          This lowers JSCreateArgument nodes to call the ArgumentsAccessStub for
          help with materializing arguments objects when possible. Along the way
          this changes the calling convention of said stub to take parameters in
          registers instead of on the stack.
      
      R=mstarzinger@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/1376303002
      
      Cr-Commit-Position: refs/heads/master@{#31033}
      8de7235c
    • adamk's avatar
      Two minor cleanups in pattern rewriter · c2c63232
      adamk authored
      - No need to call AsVariableProxy() on a VariableProxy
      - Reduce AST visitor boilerplate using pre-existing macro
        (and re-alphabetize the list of non-patterns).
      
      R=littledan@chromium.org
      
      Review URL: https://codereview.chromium.org/1376633005
      
      Cr-Commit-Position: refs/heads/master@{#31032}
      c2c63232
    • adamk's avatar
      Remove --harmony-arrow-functions flag · 163419e8
      adamk authored
      Arrow functions have been enabled by default since the 4.5 branch.
      
      Review URL: https://codereview.chromium.org/1373633002
      
      Cr-Commit-Position: refs/heads/master@{#31031}
      163419e8
    • adamk's avatar
      [es6] Function constructor-created functions should be named "anonymous" · 51d28914
      adamk authored
      Besides matching the spec, this matches the behavior of Firefox and Edge.
      
      BUG=v8:3699
      LOG=n
      CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel
      
      Review URL: https://codereview.chromium.org/1377603006
      
      Cr-Commit-Position: refs/heads/master@{#31030}
      51d28914
    • adamk's avatar
      Revert "Stage sloppy block-scoped functions (Annex B 3.3)" · bab3b550
      adamk authored
      The current implemention breaks sloppy mode code that uses function
      declarations inside blocks at top-level. Work is ongoing on a patch
      to fix this issue, but in the meantime it seems reasonable to move
      the feature out of staging.
      
      Manual revert of commit 6e07f5a7.
      
      R=littledan@chromium.org
      BUG=chromium:535836
      LOG=y
      
      Review URL: https://codereview.chromium.org/1375213005
      
      Cr-Commit-Position: refs/heads/master@{#31029}
      bab3b550
    • kozyatinskiy's avatar
      [V8] Add name of function for function's closure scope · ce54e162
      kozyatinskiy authored
      Added ScopeDetails.name field for closure scopes. It contains function's debug name of current context of scope.
      
      BUG=493156
      LOG=Y
      R=yurys@chromium.org,yangguo@chromium.org
      
      Review URL: https://codereview.chromium.org/1375813002
      
      Cr-Commit-Position: refs/heads/master@{#31028}
      ce54e162
    • mbrandy's avatar
      PPC: [es6] Introduce spec compliant IsConstructor. · 623e8021
      mbrandy authored
      Port 8fe3ac07
      
      Original commit message:
          There was already a bit on the Map named "function with prototype",
          which basically meant that the Map was a map for a JSFunction that could
          be used as a constructor. Now this CL generalizes that bit to
          IsConstructor, which says that whatever (Heap)Object you are looking at
          can be used as a constructor (i.e. the bit is also set for bound
          functions that can be used as constructors and proxies that have a
          [[Construct]] internal method).
      
          This way we have a single chokepoint for IsConstructor checking, which
          allows us to get rid of the various ways in which we tried to guess
          whether something could be used as a constructor or not.
      
          Drive-by-fix: Renamed IsConstructor on FunctionKind to
          IsClassConstructor to resolve the weird name clash, and the
          IsClassConstructor name also matches the spec.
      
      R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, dstence@us.ibm.com
      BUG=v8:4413, v8:4430
      LOG=n
      
      Review URL: https://codereview.chromium.org/1382673002
      
      Cr-Commit-Position: refs/heads/master@{#31027}
      623e8021
    • mbrandy's avatar
      PPC: [runtime] Remove weird pushing of something on StackOverflow. · aa30d4e2
      mbrandy authored
      Port 556b522a
      
      Original commit message:
          We somehow try to push some stuff on the stack when we detect a stack
          overflow, that we don't need. Even worse we might access outside the
          valid stack bounds. Since we don't need this, it's gone.
      
      R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, dstence@us.ibm.com
      BUG=chromium:534881
      LOG=n
      
      Review URL: https://codereview.chromium.org/1382633002
      
      Cr-Commit-Position: refs/heads/master@{#31026}
      aa30d4e2
    • mbrandy's avatar
      PPC: [builtin] Refactor Invoke to deal with any kind of callable. · ba79bd48
      mbrandy authored
      Port 634d1d86
      
      Original commit message:
          Now both Execution::Call and Execution::New can deal with any
          kind of target and will raise a proper exception if the target is not
          callable (which is not yet spec compliant for New, as we would
          have to check IsConstructor instead, which we don't have yet).
      
          Now we no longer need to do any of these weird call/construct
          delegate gymnastics in C++, and we finally have a single true
          bottleneck for Call/Construct abstract operations in the code
          base, with only a few special handlings left in the compilers to
          optimize the JSFunction case.
      
      R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, dstence@us.ibm.com
      BUG=v8:4430, v8:4413
      LOG=n
      
      Review URL: https://codereview.chromium.org/1374683006
      
      Cr-Commit-Position: refs/heads/master@{#31025}
      ba79bd48