1. 15 Feb, 2016 1 commit
  2. 11 Feb, 2016 2 commits
  3. 10 Feb, 2016 2 commits
  4. 08 Feb, 2016 2 commits
  5. 04 Feb, 2016 3 commits
  6. 03 Feb, 2016 1 commit
  7. 01 Feb, 2016 3 commits
  8. 29 Jan, 2016 2 commits
  9. 27 Jan, 2016 1 commit
    • littledan's avatar
      Stage RegExp subclassing · 8c663eea
      littledan authored
      This patch stages the first part of RegExp subclassing--defining
      Symbol.{match,replace,search,split}, but keeping their original
      definitions which are restricted to a RegExp receiver and do not
      call out to the core 'exec' method. This is being staged separately
      because the two sets of extension points are separate features with
      separate functionality. The amount of behavior which is held behind
      the flag is very small, just exposing the symbols as properties of
      Symbol--the behavior that the String methods call out to these Symbol
      properties has already been shipping unflagged.
      
      R=yangguo@chromium.org
      BUG=v8:4305,v8:4343,v8:4344,v8:4345
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1637703003
      
      Cr-Commit-Position: refs/heads/master@{#33534}
      8c663eea
  10. 26 Jan, 2016 1 commit
  11. 25 Jan, 2016 3 commits
  12. 23 Jan, 2016 1 commit
  13. 22 Jan, 2016 1 commit
  14. 20 Jan, 2016 2 commits
    • mstarzinger's avatar
      [interpreter] First implementation of stack unwinding. · 0b3066b8
      mstarzinger authored
      This implements a first prototype of stack unwinding for interpreted
      frames. The unwinding machinery performs a range-based lookup in the
      given handler table and potentially continues dispatching at the handler
      offset. Note that this does not yet correctly restore the context to the
      correct value when the handler is being entered.
      
      R=rmcilroy@chromium.org,oth@chromium.org
      BUG=v8:4674
      LOG=n
      
      Review URL: https://codereview.chromium.org/1605633003
      
      Cr-Commit-Position: refs/heads/master@{#33414}
      0b3066b8
    • mythria's avatar
      [Interpreter] Marks that 'throw' has returned a value. · 232e28d6
      mythria authored
      This is to fix some of the failing test262 tests with ignition flag.
      In few test262 tests, there is a throw from the script scope. Rewriter::Rewrite
      pass converts expression statements into assignment statements in script scope.
      This causes interpreter to fail because assignment expression expects a result
      in accumulator but throw statement does not return a value. To fix this, we
      now mark that accumulator contains a value when visiting throw statement.
      
      BUG=v8:4280
      LOG=N
      
      Review URL: https://codereview.chromium.org/1523423003
      
      Cr-Commit-Position: refs/heads/master@{#33408}
      232e28d6
  15. 19 Jan, 2016 1 commit
  16. 18 Jan, 2016 1 commit
  17. 15 Jan, 2016 1 commit
  18. 14 Jan, 2016 1 commit
  19. 11 Jan, 2016 3 commits
    • littledan's avatar
      Ship ES2015 sloppy-mode const semantics · 95145fa8
      littledan authored
      This patch moves the semantics of 'const' in sloppy mode to match those
      in strict mode, that is, const makes lexical (let-like) bindings, must
      have an initializer, and does not create properties of the global object.
      
      R=adamk
      LOG=Y
      BUG=v8:3305
      CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
      
      Review URL: https://codereview.chromium.org/1571873004
      
      Cr-Commit-Position: refs/heads/master@{#33218}
      95145fa8
    • littledan's avatar
      Partial rollback of Promise error checking · ee9d7aca
      littledan authored
      As V8 becomes more and more spec-compliant, Promise polyfill libraries
      like core.js expect fully correct. However, our Promises do not yet
      support Symbol.species. Therefore, a case like
      
      ```
      var test = new Promise(function(){});
      test.constructor = function(){};
      Promise.resolve(test)
      ```
      
      would lead to an unhandled Promise rejection, whereas it should not
      because test.constructor[Symbol.species] is undefined, so test.then
      should end up constructing %Promise% as a fallback, rather than
      calling test.constructor as if it were a constructor, which leads
      this error checking code to throw.
      
      For now, this patch removes the error checking code (which was not
      present until recently). In an interactive test using core.js, the
      error message on the console goes away with this patch. When @@species
      support is in place, this patch can be reverted. A regression test
      is added which checks for the same thing.
      
      Partially reverted patch was originally out for review at
      https://codereview.chromium.org/1531073004
      
      BUG=v8:4633
      LOG=Y
      R=adamk,caitp88@gmail.com
      
      Review URL: https://codereview.chromium.org/1578893002
      
      Cr-Commit-Position: refs/heads/master@{#33217}
      ee9d7aca
    • caitpotter88's avatar
      [promise] use PromiseCapabilities directly for Promise.race resolve/reject · ee1671b9
      caitpotter88 authored
      Does not remove the extra private state added, as doing so seems to break the
      debugger.
      
      Fixes new Test262 tests:
      - built-ins/Promise/race/same-resolve-function
      - built-ins/Promise/race/same-reject-function
      
      BUG=v8:4632
      LOG=N
      R=littledan@chromium.org, cbruni@chromium.org
      
      Review URL: https://codereview.chromium.org/1538853002
      
      Cr-Commit-Position: refs/heads/master@{#33214}
      ee1671b9
  20. 08 Jan, 2016 2 commits
  21. 07 Jan, 2016 3 commits
    • caitpotter88's avatar
      [promise] Make Promise.all match spec, and always respect [[AlreadyResolved]] · 7459d8ce
      caitpotter88 authored
      Testing the promise status is not enough to ensure that resolve functions are
      called only once.
      
      This change adds a similar version of the [[AlreadyResolved]] slot to the
      Promise.all resolve element function, and also ensures that [[AlreadyResolved]]
      is respected in the Promise executor, and when resolving thenables. This means
      replacing PromiseReject() shortcuts with promiseCapability.reject(), which has
      an [[AlreadyResolved]] record in a context slot.
      
      Also ensures that changes to the list accumulator in Promise.all() is not observable
      via accessors installed in the Array prototype chain, using the same mechanism used
      in several Array methods.
      
      Fixes the following Test262 tests:
      - built-ins/Promise/all/call-resolve-element-items.js
      - built-ins/Promise/all/call-resolve-element.js
      - built-ins/Promise/all/call-resolve-element-after-return.js
      - built-ins/Promise/all/same-reject-function.js
      - built-ins/Promise/all/resolve-from-same-thenable.js
      - built-ins/Promise/all/resolve-before-loop-exit.js
      - built-ins/Promise/all/resolve-before-loop-exit-from-same.js
      - built-ins/Promise/exception-after-resolve-in-executor.js
      - built-ins/Promise/exception-after-resolve-in-thenable-job.js
      - built-ins/Promise/all/does-not-invoke-array-setters.js
      
      BUG=v8:4633
      LOG=N
      R=littledan@chromium.org, cbruni@chromium.org
      
      Review URL: https://codereview.chromium.org/1534813005
      
      Cr-Commit-Position: refs/heads/master@{#33163}
      7459d8ce
    • caitpotter88's avatar
      [promise] unskip more passing Test262 tests · c12a47a5
      caitpotter88 authored
      BUG=v8:4633
      LOG=N
      R=adamk@chromium.org, littledan@chromium.org, cbruni@chromium.org
      
      Review URL: https://codereview.chromium.org/1568433004
      
      Cr-Commit-Position: refs/heads/master@{#33160}
      c12a47a5
    • rmcilroy's avatar
      [Interpreter] Skip a couple more flaky test262 tests on Ignition. · 50cac443
      rmcilroy authored
      BUG=v8:4280
      LOG=N
      NOTRY=true
      TBR=machenbach@chromium.org
      
      Review URL: https://codereview.chromium.org/1563163003
      
      Cr-Commit-Position: refs/heads/master@{#33151}
      50cac443
  22. 06 Jan, 2016 1 commit
  23. 05 Jan, 2016 2 commits
    • caitpotter88's avatar
      [promise] Make Promise.reject match spec, and validate promise capabilities · e4af5cdb
      caitpotter88 authored
      Correctly validate promise capabilities in NewPromiseCapabilities() and in
      GetCapabilitiesExtractor(). Also explicitly follows Promise.race step 2 and
      similar cases in the spec, rather than passing tests asserting these steps
      are taken in NewPromiseCapability
      
      Also changes Promise.reject to match specification.
      
      Fixes the following test262 tests:
      
      - built-ins/Promise/all/capability-executor-called-twice.js
      - built-ins/Promise/all/capability-executor-not-callable.js
      - built-ins/Promise/prototype/then/capability-executor-called-twice.js
      - built-ins/Promise/prototype/then/capability-executor-not-callable.js
      - built-ins/Promise/reject/capability-executor-called-twice.js
      - built-ins/Promise/reject/capability-executor-not-callable.js
      - built-ins/Promise/resolve/capability-executor-called-twice.js
      - built-ins/Promise/resolve/capability-executor-not-callable.js
      - built-ins/Promise/race/capability-executor-called-twice.js
      - built-ins/Promise/race/capability-executor-not-callable.js
      - built-ins/Promise/reject/S25.4.4.4_A3.1_T1.js
      - built-ins/Promise/race/S25.4.4.3_A3.1_T2.js
      
      Per v8:3641, mjsunit/es6/debug-promises/throw-with-undefined-reject.js becomes invalid. The exception is thrown before the chain handler is ever invoked, and is caught externally by d8's own handler --- thus evading the uncaught exception event.
      
      BUG=v8:4633, v8:4631, v8:4243, v8:3641
      LOG=N
      R=littledan@chromium.org, cbruni@chromium.org
      
      Review URL: https://codereview.chromium.org/1531073004
      
      Cr-Commit-Position: refs/heads/master@{#33128}
      e4af5cdb
    • machenbach's avatar
      [test] Skip test for ignition. · bb3972f6
      machenbach authored
      NOTRY=true
      TBR=rmcilroy@chromium.org, mythria@chromium.org
      BUG=v8:4280
      LOG=N
      
      Review URL: https://codereview.chromium.org/1562463002
      
      Cr-Commit-Position: refs/heads/master@{#33121}
      bb3972f6