1. 26 Sep, 2017 12 commits
  2. 25 Sep, 2017 24 commits
  3. 23 Sep, 2017 1 commit
  4. 22 Sep, 2017 3 commits
    • Benedikt Meurer's avatar
      [es2015] Introduce dedicated GetTemplateObject bytecode. · 79ac69b8
      Benedikt Meurer authored
      Tagged templates were previously desugared during parsing using some
      combination of runtime support written in JavaScript and C++, which
      prevented some optimizations from happening, namely the constant folding
      of the template object in TurboFan optimized code. This CL adds a new
      bytecode GetTemplateObject (with a corresponding GetTemplateObject AST
      node), which represents the abstract operation in the ES6 specification
      and allows TurboFan to simply constant-fold template objects at compile
      time (which is explicitly supported by the specification).
      
      This also pays down some technical debt by removing the template.js
      runtime support and therefore should reduce the size of the native
      context (snapshot) a bit.
      
      With this change in-place the ES6 version microbenchmark in the
      referenced tracking bug is now faster than the transpiled Babel
      code, it goes from
      
        templateStringTagES5: 4552 ms.
        templateStringTagES6: 14185 ms.
        templateStringTagBabel: 7626 ms.
      
      to
      
        templateStringTagES5: 4515 ms.
        templateStringTagES6: 7491 ms.
        templateStringTagBabel: 7639 ms.
      
      which corresponds to a solid 45% reduction in execution time. With some
      further optimizations the ES6 version should be able to outperform the
      ES5 version. This micro-benchmark should be fairly representative of the
      six-speed-templatestringtag-es6 benchmark, and as such that benchmark
      should also improve by around 50%.
      
      Bug: v8:6819,v8:6820
      Tbr: mlippautz@chromium.org
      Change-Id: I821085e3794717fc7f52b5c306fcb93ba03345dc
      Reviewed-on: https://chromium-review.googlesource.com/677462Reviewed-by: 's avatarMythri Alle <mythria@chromium.org>
      Reviewed-by: 's avatarCaitlin Potter <caitp@igalia.com>
      Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48126}
      79ac69b8
    • Karl Schimpf's avatar
      Fix UMA stats for WASM functions · 87713b37
      Karl Schimpf authored
      Fixes the collection of V8.WasmFuncctionSizeBytes.wasm for UMA stats.
      
      Bug: v8:6852
      Change-Id: Ib25d249dd2856ffb8a3205e54ba052c1bc9a09cf
      Reviewed-on: https://chromium-review.googlesource.com/678448Reviewed-by: 's avatarMircea Trofin <mtrofin@chromium.org>
      Commit-Queue: Karl Schimpf <kschimpf@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48125}
      87713b37
    • Bill Budge's avatar
      [Memory] Move GetRandomMmapAddr from base::OS platform to v8::internal. · d607f1e7
      Bill Budge authored
      - Moves GetRandomMmapAddr from platform to v8::internal allocation
        primitives, in preparation for delegating this to the embedder.
      - Adds hint parameters to OS functions that used to use this function.
      
      Bug: chromium:756050
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: Iad72e6eac9c08a3e22c2cd2b2905623b8e514ae0
      Reviewed-on: https://chromium-review.googlesource.com/677777Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48124}
      d607f1e7