1. 30 Jan, 2019 34 commits
  2. 29 Jan, 2019 6 commits
    • Jakob Kummerow's avatar
      Fix possibly-unaligned read in TickSample::Init · a8268e6b
      Jakob Kummerow authored
      This is a speculative fix for issue 8744. I couldn't get it to
      repro locally, but the stracktrace from the failing bot run points
      at TickSample::Init, and according to code comments in that function
      the value of {regs.sp} can be "arbitrary", so we must read from
      that address using a method that's robust towards unalignment.
      
      Bug: v8:8744
      Change-Id: I7a45cc257e0eb557715ec67d9e66e54a6f2c1867
      Reviewed-on: https://chromium-review.googlesource.com/c/1440463Reviewed-by: 's avatarMaya Lekova <mslekova@chromium.org>
      Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#59186}
      a8268e6b
    • tzik's avatar
      Fix no-inline compiler flag on Windows · f5ba52e2
      tzik authored
      -fno-inline is unavailable on clang-cl nor cl.exe, and causes a build
      failure on Windows bot.
      This CL updates that flag to "/Ob0", which is msvc-equivalent of
      -fno-inline.
      
      Change-Id: Id9ffed03a855ac0b773ee28625472de664c3cb30
      Reviewed-on: https://chromium-review.googlesource.com/c/1442013Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
      Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#59185}
      f5ba52e2
    • Deepti Gandluri's avatar
      Add a contents based constructor to the SharedArrayBuffer API · 40892994
      Deepti Gandluri authored
      The motivation of this change was originally to preserve is_growable
      flag over PostMessage in d8. Adding a more general constructor that
      uses SharedArrayBuffer::Contents.
      
      Change-Id: Ib8f6c36d659e91f6cfb6487f56de34fa7e8841a9
      Bug: v8:8564
      Reviewed-on: https://chromium-review.googlesource.com/c/1383093
      Commit-Queue: Deepti Gandluri <gdeepti@chromium.org>
      Reviewed-by: 's avatarBen Smith <binji@chromium.org>
      Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#59184}
      40892994
    • Michael Lippautz's avatar
      [api, global-handles] Add TracedGlobal · 76c93685
      Michael Lippautz authored
      TracedGlobal integrates with the use case of EmbedderHeapTracer and replaces
      regular weak Global or Persistent nodes for such cases. This allows to simplify
      the case for regular weak handles in a sense that they follow regular weak
      semantics (if the underlying object is otherwise unreachable the weak handle
      will be reset).
      
      TracedGlobal requires slightly different semantics in the sense that it can be
      required to keep them alive on Scavenge garbage collections because there's a
      transitive path that is only known when using the EmbedderHeapTracer.
      TracedGlobal accomodates that use case.
      
      TracedGlobal follows move semantics and can thus be used in regular std
      containers without wrapping data structure.
      
      The internal state uses 20% less memory and allows for only iterating those
      nodes when necessary. The design trades the virtual call when iterating
      interesting persistents in the GC prologue with calling out through the
      EmbedderHeapTracer for each node which is also a virtual call. There is one less
      iteration over the set of handles required though and the design is robust
      against recursive GCs that mutate the embedder state during the prologue
      callback.
      
      Bug: chromium:923361
      Change-Id: Idbacfbe4723cd12af9de21058a4792e51dc4df74
      Reviewed-on: https://chromium-review.googlesource.com/c/1425523
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#59183}
      76c93685
    • Sven Sauleau's avatar
      [wasm] fix js-api module/customSection · d8baf215
      Sven Sauleau authored
      Enables WebAssembly's js-api module/customSection. The specification has
      been updated; see https://github.com/WebAssembly/spec/issues/915. V8 was
      already using DOMString.
      
      Bug: v8:8633
      Change-Id: I4c3e93c21594dbba84b3697e7e85069c3ff8b441
      Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
      Reviewed-on: https://chromium-review.googlesource.com/c/1415554
      Commit-Queue: Sven Sauleau <ssauleau@igalia.com>
      Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#59182}
      d8baf215
    • Andreas Haas's avatar
      [wasm][traphandler] Mark code object validation check as slow · bf505216
      Andreas Haas authored
      In the trap handler we validate the list of registered code objects
      every time we register or de-register a new code object. The complexity
      of this validation is O(num-code-objects * num-instructions). For big
      WebAssembly modules with several hundred thousand code objects, this
      validation causes significant overhead (we saw up to 10x) and makes
      debugging very tedious. With this CL I mark the validation as slow.
      Thereby it is still enabled in most tests on our bots, but it is
      possible to disable validation when debugging large web applications.
      
      The referenced bug issue was created by developers who had problems
      with debugging because of this issue.
      
      R=mark@chromium.org
      
      Bug: v8:8536
      Change-Id: If7ecb554eebcb04eb43a1f791b96c7a42a47e60f
      Reviewed-on: https://chromium-review.googlesource.com/c/1442634Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#59181}
      bf505216