1. 19 Jun, 2018 29 commits
  2. 18 Jun, 2018 11 commits
    • Alexey Kozyatinskiy's avatar
      [inspector] added blink try bots on inspector tests change · 71892ad9
      Alexey Kozyatinskiy authored
      Inspector test expectations may be changed without changes inside
      src/inspector directory.
      
      R=dgozman@chromium.org
      
      Bug: none
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel
      Change-Id: I3196209a4b974d4cf32c76c51116d77e589a9dbb
      Reviewed-on: https://chromium-review.googlesource.com/1104303Reviewed-by: 's avatarDmitry Gozman <dgozman@chromium.org>
      Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53809}
      71892ad9
    • Alexey Kozyatinskiy's avatar
      Reland "[inspector] fixed location of top level function return" · 0b690227
      Alexey Kozyatinskiy authored
      This is a reland of 4363a693
      
      Original change's description:
      > [inspector] fixed location of top level function return
      >
      > We should pass false as has_braces argument to create FunctionLiteral
      > for top level function.
      >
      > R=dgozman@chromium.org,bmeurer@chromium.org
      > TBR=bmeurer@chromium.org
      >
      > Bug: none
      > Change-Id: I397f31b562d32c71f3a12bfc9ceeed16c367aa80
      > Reviewed-on: https://chromium-review.googlesource.com/1098018
      > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org>
      > Reviewed-by: Dmitry Gozman <dgozman@chromium.org>
      > Reviewed-by: Yang Guo <yangguo@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#53769}
      TBR=dgozman@chromium.org
      
      Bug: v8:7858
      Change-Id: Ie636bc101f9d29d9d40bd10b96e62da6505c2734
      Reviewed-on: https://chromium-review.googlesource.com/1104497
      Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org>
      Reviewed-by: 's avatarAleksey Kozyatinskiy <kozyatinskiy@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53808}
      0b690227
    • Clemens Hammacher's avatar
      Revert "[wasm] Introduce jump table" · 33f6c3e1
      Clemens Hammacher authored
      This reverts commit 733b7c82.
      
      Reason for revert: breaks arm64 gc-stress: https://ci.chromium.org/buildbot/client.v8.ports/V8%20Linux%20-%20arm64%20-%20sim%20-%20gc%20stress/11659
      
      Original change's description:
      > [wasm] Introduce jump table
      > 
      > This introduces the concept of a jump table for WebAssembly, which is
      > used for every direct and indirect call to any WebAssembly function.
      > For lazy compilation, it will initially contain code to call the
      > WasmCompileLazy builtin, where it passes the function index to be
      > called.
      > For non-lazy-compilation, it will contain a jump to the actual code.
      > The jump table allows to easily redirect functions for lazy
      > compilation, tier-up, debugging and (in the future) code aging. After
      > this CL, we will not need to patch existing code any more for any of
      > these operations.
      > 
      > R=​mstarzinger@chromium.org, titzer@chromium.org
      > 
      > Bug: v8:7758
      > Change-Id: I45f9983c2b06ae81bf5ce9847f4542fb48844a4f
      > Reviewed-on: https://chromium-review.googlesource.com/1097075
      > Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      > Reviewed-by: Ben Titzer <titzer@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#53805}
      
      TBR=mstarzinger@chromium.org,titzer@chromium.org,clemensh@chromium.org,sreten.kovacevic@mips.com
      
      Change-Id: Iea358db2cf13656a65cf69a6d82cbbc10d3e7e1c
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:7758
      Reviewed-on: https://chromium-review.googlesource.com/1105157Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53807}
      33f6c3e1
    • Igor Sheludko's avatar
      [builtins] Remove BuiltinDescriptor. · a2b5e64c
      Igor Sheludko authored
      Now TFJ builtins can use their own descriptors so there's no need to
      keep the hacky BuiltinDescriptor around.
      
      Bug: v8:7754
      Change-Id: Ia7f23a21fb979370fd2149fef13186b83a3d5d30
      Reviewed-on: https://chromium-review.googlesource.com/1104428
      Commit-Queue: Igor Sheludko <ishell@chromium.org>
      Reviewed-by: 's avatarDaniel Clifford <danno@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53806}
      a2b5e64c
    • Clemens Hammacher's avatar
      [wasm] Introduce jump table · 733b7c82
      Clemens Hammacher authored
      This introduces the concept of a jump table for WebAssembly, which is
      used for every direct and indirect call to any WebAssembly function.
      For lazy compilation, it will initially contain code to call the
      WasmCompileLazy builtin, where it passes the function index to be
      called.
      For non-lazy-compilation, it will contain a jump to the actual code.
      The jump table allows to easily redirect functions for lazy
      compilation, tier-up, debugging and (in the future) code aging. After
      this CL, we will not need to patch existing code any more for any of
      these operations.
      
      R=mstarzinger@chromium.org, titzer@chromium.org
      
      Bug: v8:7758
      Change-Id: I45f9983c2b06ae81bf5ce9847f4542fb48844a4f
      Reviewed-on: https://chromium-review.googlesource.com/1097075
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Reviewed-by: 's avatarBen Titzer <titzer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53805}
      733b7c82
    • Dominik Inführ's avatar
      [heap] Move RecordSlot to concurrent marking · 3e5db487
      Dominik Inführ authored
      Move Slot recording to concurrent and incremental marking phase and
      out of the atomic pause. Records more slots to remove
      slot recording completely from the pause.
      
      Bug: chromium:844008
      Change-Id: I13ba20b4839990134dc37bd909fb0a2d66e13c64
      Reviewed-on: https://chromium-review.googlesource.com/1104348
      Commit-Queue: Dominik Inführ <dinfuehr@google.com>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53804}
      3e5db487
    • Clemens Hammacher's avatar
      Make CallInterfaceDescriptor isolate-independent · 3cb376dc
      Clemens Hammacher authored
      Currently each isolate stores its own array of
      {CallInterfaceDescriptorData}. This array has size 173, and each entry
      has 40 bytes. That's already 7kB per isolate.
      Additionally, each {CallInterfaceDescriptorData} allocates two
      heap-allocated arrays, which probably add up to more than the static
      size of the {CallInterfaceDescriptorData}. Note that all the
      {CallInterfaceDescriptorData} instances are initialized eagerly on
      isolate creation.
      
      Since {CallInterfaceDescriptor} is totally isolate independent itself,
      this CL refactors the current design to avoid a copy of them per
      isolate, and instead shares them process-wide. Still, we need to free
      the allocated heap arrays when the last isolate dies to avoid leaks.
      This can probably be refactored later by statically initializing more
      and avoiding the heap allocations all together.
      
      This refactoring will also allow us to use {CallInterfaceDescriptor}s
      from wasm background compilation threads, which are not bound to any
      isolate.
      
      R=mstarzinger@chromium.org, titzer@chromium.org
      
      Bug: v8:6600
      Change-Id: If8625b89951eec8fa8986b49a5c166e874a72494
      Reviewed-on: https://chromium-review.googlesource.com/1100879
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Reviewed-by: 's avatarIgor Sheludko <ishell@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53803}
      3cb376dc
    • Toon Verwaest's avatar
      Drop stack-locals from ScopeInfo · 467eb149
      Toon Verwaest authored
      For now we keep params since NewSloppyArguments uses it to figure out how to structure the arguments object. We should be able to only keep params in case we have a special case though. E.g., leaf functions with no duplicate parameters don't need special treatment. Or we simply encode the parameter index for each context slot. (I'm not sure duplicates need special treatment.)
      
      
      Change-Id: Icfbb844e5331aeb93c50bc07edd58246c8aeb1d7
      Reviewed-on: https://chromium-review.googlesource.com/1104420
      Commit-Queue: Toon Verwaest <verwaest@chromium.org>
      Reviewed-by: 's avatarCamillo Bruni <cbruni@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53802}
      467eb149
    • Clemens Hammacher's avatar
      [wasm] Store WasmModule in shared_ptr during async compilation · 6be6ec00
      Clemens Hammacher authored
      We currently store the {WasmModule} (generated during decoding) in a
      unique_ptr and pass ownership to the {WasmModuleObject} after
      compilation.
      I plan to move the {Managed<NativeModule>} from {WasmCompiledModule} to
      {WasmModuleObject}, which will force us to create the
      {WasmModuleObject} *before* compilation, so that the {CompilationState}
      is available during compilation.
      
      This CL prepares that refactoring by storing the {WasmModule} in a
      {shared_ptr} in the {AsyncCompileJob}. Note that it will eventually be
      stored in a {shared_ptr} in the {Managed} anyway.
      
      R=titzer@chromium.org
      
      Change-Id: Iac5e3c1067af2801e938f77a455a68807801526a
      Reviewed-on: https://chromium-review.googlesource.com/1104117
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Reviewed-by: 's avatarBen Titzer <titzer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53801}
      6be6ec00
    • Théotime Grohens's avatar
      [dataview]: Move DataView setters to Torque. · e947d21e
      Théotime Grohens authored
      This CL completely reimplements the DataView setters in Torque, and
      removes the former C++ runtime implementation.
      
      Change-Id: I66cdd35712e46f3931d6530a4512fa3c8eb3b3bf
      Reviewed-on: https://chromium-review.googlesource.com/1104162
      Commit-Queue: Théotime Grohens <theotime@google.com>
      Reviewed-by: 's avatarMichael Stanton <mvstanton@chromium.org>
      Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53800}
      e947d21e
    • Sigurd Schneider's avatar
      [mjsunit] Improve long-running test · 8f8c53ba
      Sigurd Schneider authored
      Reading up on the bug description, this is a test
      that is triggered by TurboFan execution. This can
      be done with natives and does not need excessive
      loop iterations. Additionally, we have a more specific
      regression test for the original issue in the repo:
      http://crrev.com/c/584837
      
      Bug: v8:7783
      Change-Id: Id022b515b663e6fb897acb29f43ef92b70b547b8
      Reviewed-on: https://chromium-review.googlesource.com/1101018Reviewed-by: 's avatarMichael Stanton <mvstanton@chromium.org>
      Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53799}
      8f8c53ba