1. 19 Sep, 2016 23 commits
  2. 18 Sep, 2016 5 commits
  3. 17 Sep, 2016 4 commits
  4. 16 Sep, 2016 8 commits
    • bakkot's avatar
      [AST] Add method to concatenate AstRawStrings · e68258bd
      bakkot authored
      Normally the parser just uses AstConsStrings to concatenate, but some
      types require an AstRawString. This patch adds an AstValueFactory
      method which produces one from two AstRawStrings.
      
      Review-Url: https://codereview.chromium.org/2348783002
      Cr-Commit-Position: refs/heads/master@{#39482}
      e68258bd
    • adamk's avatar
      [modules] Introduce v8::Module to the API and return it from CompileModule · aa6db9d9
      adamk authored
      R=neis@chromium.org
      BUG=v8:1569
      
      Review-Url: https://codereview.chromium.org/2347933002
      Cr-Commit-Position: refs/heads/master@{#39481}
      aa6db9d9
    • littledan's avatar
      async/await: Don't trigger uncaught rejection handlers on throwaway Promises · 61a6b6f2
      littledan authored
      This patch implements a bug fix to the async/await specification described
      at https://github.com/tc39/ecma262/pull/692#issuecomment-247488411
      Namely, the intermediate values of Promises may be rejected, and they do
      not have .then called on them anymore (now that the memory leak is fixed),
      but they do not correspond do unhandled rejections. This change has been
      tested manually with integration with Blink; once it is checked in and
      rolled, then further tests can be added on the Blink side for the uncaught
      rejection handler and async/await.
      
      BUG=v8:4483
      
      Review-Url: https://codereview.chromium.org/2338273007
      Cr-Commit-Position: refs/heads/master@{#39480}
      61a6b6f2
    • littledan's avatar
      Fix async/await memory leak · a0ba18e9
      littledan authored
      This patch closes a memory leak in async/await where the desugaring
      was creating a situation analagous to that described in v8:5002.
      Intermediate Promises were being kept alive, so a long-running loop
      would cause linear memory usage on the heap. This patch returns
      undefined to the 'then' callback passed into PerformPromiseThen
      in order to avoid this hazard. Test expectations are fixed to remove
      expecting extraneous events which occurred on Promises that are
      now not given unnecessarily complex resolution paths before being
      thrown away.
      
      BUG=v8:5390
      
      Review-Url: https://codereview.chromium.org/2334323006
      Cr-Commit-Position: refs/heads/master@{#39479}
      a0ba18e9
    • martyn.capewell's avatar
      [turbofan] Reduce some Float64 division to multiplication · 5ae2d0e5
      martyn.capewell authored
      For denominators that are powers of two, replace Float64 division with
      multiplication by the reciprocal.
      
      Additionally, replace division by -1 with negation, and multiplication by two
      with addition.
      
      BUG=
      
      Review-Url: https://codereview.chromium.org/2347573002
      Cr-Commit-Position: refs/heads/master@{#39478}
      5ae2d0e5
    • neis's avatar
      [modules] Turn JSModule into Module. · 7c05d8a4
      neis authored
      Rename JSModule to Module and make it a Struct rather than a JSObject.  We will
      later add a separate JSModuleNamespace object to implement the 'import * as foo'
      syntax.
      
      BUG=v8:1569
      
      Review-Url: https://codereview.chromium.org/2345823002
      Cr-Commit-Position: refs/heads/master@{#39477}
      7c05d8a4
    • 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
    • vogelheim's avatar
      Revert of [Tracing] Remove unnecessary memory allocation in runtime call... · eb7ba290
      vogelheim authored
      Revert of [Tracing] Remove unnecessary memory allocation in runtime call stats. (patchset #1 id:1 of https://codereview.chromium.org/2342643004/ )
      
      Reason for revert:
      Revert because this breaks V8's roll into Chromium. ASAN complains about memory accesses in a particular unit test.
      
      Borked roll CL:
      https://codereview.chromium.org/2348833002/
      
      Reproduce breakage with:
      
      1, args.gn:
        v8_deprecation_warnings = true
        use_goma = true
        is_asan = true
      2, ninja -C out/... content_browsertests
      3, out/.../content_browsertests --gtest_filter=V8SamplingProfilerTest.*
      
      Original issue's description:
      > [Tracing] Remove unnecessary memory allocation in runtime call stats.
      >
      > Previously we didn't implement TRACE_STR_COPY when we write trace events to
      > file, which causes us to allocate a growing independent memory chunk for dumped
      > runtime call stats table. Since we now have a fully functional TRACE_STR_COPY,
      > this memory allocation can be avoided, this patch removes it.
      >
      > BUG=v8:5089
      >
      > Committed: https://crrev.com/e1997bb7d780d12e3a89078e8dd652dcf1d90039
      > Cr-Commit-Position: refs/heads/master@{#39462}
      
      TBR=cbruni@chromium.org,fmeawad@chromium.org,lpy@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:5089
      
      Review-Url: https://codereview.chromium.org/2349593004
      Cr-Commit-Position: refs/heads/master@{#39475}
      eb7ba290