1. 10 Dec, 2020 1 commit
  2. 09 Dec, 2020 1 commit
  3. 08 Dec, 2020 3 commits
    • Clemens Backes's avatar
      Reland "[wasm] Pass the script ID to code logging" · a58a5e59
      Clemens Backes authored
      This is a reland of ab4d9717.
      The original CL did a std::move before the final use of the NativeModule.
      PS2 removes that.
      
      TBR=petermarshall@chromium.org, thibaudm@chromium.org
      
      Original change's description:
      > [wasm] Pass the script ID to code logging
      >
      > We didn't pass a script ID with the code creation events for profiling.
      > This made DevTools lose the connection to the wasm script, hence
      > jumping from the profiler entry to the source did not work.
      >
      > This CL changes the timing of code logging a bit such that the script is
      > always allocated before logging. In the queue of code to be logged we
      > then also store the script ID, and finally set it on the {CodeEntry}
      > object.
      >
      > R=thibaudm@chromium.org
      >
      > Bug: chromium:1125986
      > Change-Id: I2248c1d520bc819436bbe732373f7a3446b64f48
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2575057
      > Commit-Queue: Clemens Backes <clemensb@chromium.org>
      > Reviewed-by: Peter Marshall <petermarshall@chromium.org>
      > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#71654}
      
      Bug: chromium:1125986
      Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng
      Change-Id: I2a7c5fe04fff726836b1279e3d05b1702a4efb76
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2578980Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Reviewed-by: 's avatarPeter Marshall <petermarshall@chromium.org>
      Reviewed-by: 's avatarThibaud Michaud <thibaudm@chromium.org>
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71663}
      a58a5e59
    • Clemens Backes's avatar
      Revert "[wasm] Pass the script ID to code logging" · 8d013ea1
      Clemens Backes authored
      This reverts commit ab4d9717.
      
      Reason for revert: UBSan issues: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux64%20UBSan/14184/overview
      
      Original change's description:
      > [wasm] Pass the script ID to code logging
      >
      > We didn't pass a script ID with the code creation events for profiling.
      > This made DevTools lose the connection to the wasm script, hence
      > jumping from the profiler entry to the source did not work.
      >
      > This CL changes the timing of code logging a bit such that the script is
      > always allocated before logging. In the queue of code to be logged we
      > then also store the script ID, and finally set it on the {CodeEntry}
      > object.
      >
      > R=​thibaudm@chromium.org
      >
      > Bug: chromium:1125986
      > Change-Id: I2248c1d520bc819436bbe732373f7a3446b64f48
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2575057
      > Commit-Queue: Clemens Backes <clemensb@chromium.org>
      > Reviewed-by: Peter Marshall <petermarshall@chromium.org>
      > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#71654}
      
      TBR=petermarshall@chromium.org,clemensb@chromium.org,thibaudm@chromium.org
      
      Change-Id: I03c90c77b55e770797a6d66b1d778992a047e07a
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: chromium:1125986
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2575070Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71660}
      8d013ea1
    • Clemens Backes's avatar
      [wasm] Pass the script ID to code logging · ab4d9717
      Clemens Backes authored
      We didn't pass a script ID with the code creation events for profiling.
      This made DevTools lose the connection to the wasm script, hence
      jumping from the profiler entry to the source did not work.
      
      This CL changes the timing of code logging a bit such that the script is
      always allocated before logging. In the queue of code to be logged we
      then also store the script ID, and finally set it on the {CodeEntry}
      object.
      
      R=thibaudm@chromium.org
      
      Bug: chromium:1125986
      Change-Id: I2248c1d520bc819436bbe732373f7a3446b64f48
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2575057
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Reviewed-by: 's avatarPeter Marshall <petermarshall@chromium.org>
      Reviewed-by: 's avatarThibaud Michaud <thibaudm@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71654}
      ab4d9717
  4. 07 Dec, 2020 1 commit
    • Clemens Backes's avatar
      [wasm] Fix code logging of wrappers · a22e8a70
      Clemens Backes authored
      Import wrappers were only logged if logging was enabled during
      compilation. If the profiler is enabled later, and regular wasm code is
      logged via {NativeModule::LogWasmCodes}, the import wrappers were
      missing.
      This CL fixes the long-standing TODO, and adds tests which triggered
      that code path. Those tests were hanging before because the expected
      functions did never appear in the profile.
      
      Drive-by: If {WasmEngine::LogOutstandingCodesForIsolate} detects that
      code logging is disabled by now, it should still clear the {code_to_log}
      vector.
      
      R=thibaudm@chromium.org
      
      Bug: chromium:1125986, chromium:1141787
      Change-Id: I2566ef369bb61a09488f2d932b6c10d92e4cb12f
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2574696Reviewed-by: 's avatarThibaud Michaud <thibaudm@chromium.org>
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71645}
      a22e8a70
  5. 04 Dec, 2020 1 commit
  6. 20 Nov, 2020 1 commit
    • Clemens Backes's avatar
      [wasm][profiler] Fix late enabling of the profiler · 31005b5c
      Clemens Backes authored
      We had a test which first enabled the profiler, and then compiled wasm
      code. In this case, all code objects were registered correctly and the
      profile looked as expected.
      This CL extends the test for also test another order: First compile the
      wasm code, then enable the profiler. In that case, we were reporting a
      wrong debug name of the exported wasm function. The name of that
      function is spec'ed to be the string representation of the function
      index. But for debugging, we want to see a more meaningful name,
      identical to the name we show when reporting the code during
      compilation.
      
      This fix requires handlifying the {SharedFunctionInfo::DebugName}
      method, because for exported wasm functions, it needs to allocate a new
      name on the JS heap.
      In order to avoid this allocation where possible, a second variant is
      added which returns a unique_ptr directly. This can be used in all
      places where the name is just being printed, which turned out to be the
      majority of cases ({DebugName().ToCString()}).
      
      R=petermarshall@chromium.org
      
      Bug: chromium:1141787
      Change-Id: I0343c2f06f0b852007535ff07459b712801ead01
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2543931
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Reviewed-by: 's avatarIgor Sheludko <ishell@chromium.org>
      Reviewed-by: 's avatarPeter Marshall <petermarshall@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71308}
      31005b5c
  7. 25 Feb, 2020 1 commit
  8. 24 Feb, 2020 2 commits
  9. 20 Feb, 2019 1 commit
    • Clemens Hammacher's avatar
      Reland "[inspector] Add wasm profiling test" · 0d4985d0
      Clemens Hammacher authored
      This is a reland of 6202c445.
      Moved skipped test from 'variant == jitless' to
      'lite_mode or variant == jitless'.
      
      Original change's description:
      > [inspector] Add wasm profiling test
      >
      > This adds a first simple test to check that CPU profiles contain wasm
      > function names.
      >
      > R=herhut@chromium.org, kozyatinskiy@chromium.org
      >
      > Bug: v8:8783
      > Change-Id: I26b1fd2b7ec555c073d80a464ee8a799b017b07a
      > Reviewed-on: https://chromium-review.googlesource.com/c/1454597
      > Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      > Reviewed-by: Stephan Herhut <herhut@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#59703}
      
      TBR=herhut@chromium.org
      
      Bug: v8:8783
      Change-Id: I4f68db86bf1caa4f0d68dd4fa227ded25bf5145a
      Reviewed-on: https://chromium-review.googlesource.com/c/1477678Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#59730}
      0d4985d0
  10. 19 Feb, 2019 2 commits