1. 17 Apr, 2018 1 commit
  2. 12 Feb, 2018 1 commit
  3. 09 Jan, 2018 2 commits
  4. 18 Dec, 2017 1 commit
  5. 02 Dec, 2017 1 commit
    • Mathias Bynens's avatar
      Normalize casing of hexadecimal digits · 822be9b2
      Mathias Bynens authored
      This patch normalizes the casing of hexadecimal digits in escape
      sequences of the form `\xNN` and integer literals of the form
      `0xNNNN`.
      
      Previously, the V8 code base used an inconsistent mixture of uppercase
      and lowercase.
      
      Google’s C++ style guide uses uppercase in its examples:
      https://google.github.io/styleguide/cppguide.html#Non-ASCII_Characters
      
      Moreover, uppercase letters more clearly stand out from the lowercase
      `x` (or `u`) characters at the start, as well as lowercase letters
      elsewhere in strings.
      
      BUG=v8:7109
      TBR=marja@chromium.org,titzer@chromium.org,mtrofin@chromium.org,mstarzinger@chromium.org,rossberg@chromium.org,yangguo@chromium.org,mlippautz@chromium.org
      NOPRESUBMIT=true
      
      Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: I790e21c25d96ad5d95c8229724eb45d2aa9e22d6
      Reviewed-on: https://chromium-review.googlesource.com/804294
      Commit-Queue: Mathias Bynens <mathias@chromium.org>
      Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49810}
      822be9b2
  6. 08 Nov, 2017 1 commit
  7. 25 Oct, 2017 1 commit
    • Clemens Hammacher's avatar
      [asm.js] Limit number of local variables · bb56b7ec
      Clemens Hammacher authored
      We have an internal limit of 50000 local variables per wasm function.
      This limit is checked when decoding the function body. For asm.js, we
      skip function body validation, since by construction the code we
      generate is correct. This makes us fail unexpectedly when trying to
      (lazily) compile an asm.js function with more than 50000 locals.
      Hence, check this limit in the asm parser and bail out if it is
      exceeded.
      
      R=mstarzinger@chromium.org
      
      Bug: chromium:775710
      Change-Id: I89d2069e133fb0f84947d477ae1ac5eda85571aa
      Reviewed-on: https://chromium-review.googlesource.com/732660Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48929}
      bb56b7ec
  8. 18 Oct, 2017 1 commit
  9. 04 Oct, 2017 1 commit
  10. 27 Sep, 2017 1 commit
  11. 26 Sep, 2017 1 commit
    • Michael Starzinger's avatar
      [asm.js] Fix Math.abs signature to return unsigned. · 02d999ab
      Michael Starzinger authored
      This fixes the signature of "Math.abs" from "(signed) -> signed" to
      "(signed) -> unsigned" and hence fixes cases where the absolute value
      would overflow the range of signed 32-bit values. This is in sync with
      spec erratas (and ECMAScript semantics).
      
      Note that this also switches the underlying implementation of the above
      absolute value function to a branch-free version.
      
      R=clemensh@chromium.org
      TEST=mjsunit/regress/regress-6838-3
      BUG=v8:6838
      
      Change-Id: Ib13b7ecd336ae386cbde7c574e727bf52f841e00
      Reviewed-on: https://chromium-review.googlesource.com/684181
      Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
      Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48169}
      02d999ab
  12. 25 Sep, 2017 2 commits
  13. 15 Sep, 2017 1 commit
    • Andreas Haas's avatar
      [wasm] Streaming compilation for WebAssembly. · 549692cb
      Andreas Haas authored
      In this CL I implement streaming compilation for WebAssembly,
      as described in the design doc I have sent out already.
      
      In this implementation the decoding of sections other than the
      code section is done immediately on the foreground thread.
      Eventually all decoding should happen in the background. I
      think it is acceptable to do the decoding on the foreground
      thread for now because I have finished it already, and
      decoding in the background would add even more complexity to
      this CL.
      
      Bug:v8:6785
      
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: I285e1e5e1a5a243113c92571b25ee9bae551d0ed
      Reviewed-on: https://chromium-review.googlesource.com/631721Reviewed-by: 's avatarMircea Trofin <mtrofin@chromium.org>
      Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48022}
      549692cb
  14. 07 Sep, 2017 1 commit
  15. 28 Aug, 2017 1 commit
    • Michael Starzinger's avatar
      [asm.js] Correctly set minimum memory size to zero. · 89f839e5
      Michael Starzinger authored
      This makes sure the minimum memory size for WebAssembly modules derived
      from asm.js is set to zero. It allows instatiation without allocating an
      underlying memory, when such memory is unused. It also fixes a bug in
      patching of embedded memory sizes for asm.js modules.
      
      R=ahaas@chromium.org
      TEST=mjsunit/regress/regress-crbug-759327
      BUG=chromium:759327
      
      Change-Id: If5a965b96a03cbb5ba15bc41fbaf359f74961f41
      Reviewed-on: https://chromium-review.googlesource.com/637912
      Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
      Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#47646}
      89f839e5
  16. 22 Aug, 2017 2 commits
  17. 09 Aug, 2017 1 commit
  18. 26 Jul, 2017 1 commit
  19. 13 Jul, 2017 1 commit
  20. 09 Jun, 2017 1 commit
    • Clemens Hammacher's avatar
      [base] Introduce base::Optional, cloned from chromium · 58ca2115
      Clemens Hammacher authored
      base::Optional is a replacement for std::optional, until we switch to
      C++17 and can use std::optional directly.
      The implementation is copied from chromium's base::Optional, but put in
      the {v8::base} namespace instead of just {base}. Also, the
      specialization of std::hash for base::Optional is omitted, since it's
      disallowed in the style guide.
      
      A first use in the AsmJsParser is introduced, if that one sticks, I
      will refactor more uses of std::unique_ptr to use base::Optional
      instead, avoiding the heap allocation.
      
      R=mstarzinger@chromium.org
      BUG=v8:6474
      
      Change-Id: I019599d4bf9ff0105bf592dfb96d6050feba18ae
      Reviewed-on: https://chromium-review.googlesource.com/528884
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#45810}
      58ca2115
  21. 01 Jun, 2017 1 commit
  22. 31 May, 2017 1 commit
  23. 30 May, 2017 1 commit
    • Clemens Hammacher's avatar
      [asm] Use ZoneVector instead of std::vector · f6f33f6f
      Clemens Hammacher authored
      This CL replaces the last usages of std::vector in the AsmJsParser by
      ZoneVector. This allows to also measure the memory consumption of these
      vectors, since it is now contained in the zone memory.
      ZoneVectors are reused to avoid accumulating lots of unused memory.
      
      This also saves 2.6% performance (avg over 1000 runs) on my local
      workstation.
      
      R=mstarzinger@chromium.org
      
      Change-Id: I04c96db558d9c362b1494ddd9e975edf2783403c
      Reviewed-on: https://chromium-review.googlesource.com/516985Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#45591}
      f6f33f6f
  24. 22 May, 2017 2 commits
  25. 19 May, 2017 1 commit
  26. 15 May, 2017 2 commits
  27. 12 May, 2017 1 commit
  28. 11 May, 2017 1 commit
  29. 10 May, 2017 1 commit
  30. 09 May, 2017 2 commits
  31. 05 May, 2017 3 commits
  32. 03 May, 2017 1 commit