1. 07 May, 2020 1 commit
    • Jakob Gruber's avatar
      [nci] Add NCI build- and runtime flags · 475c5faa
      Jakob Gruber authored
      In upcoming work these flags will be used to configure the
      experimental native context independent code feature.
      
      Build-time flags:
      
      v8_enable_nci_code
      
      Defines:
      
      V8_ENABLE_NCI_CODE
      
      Runtime flags:
      
      --turbo-nci
      --turbo-nci-as-highest_tier
      --print-nci-code
      --trace-turbo-nci
      
      Drive-by: Remove unused embedded builtins and jitless defines.
      
      Bug: v8:8888
      Change-Id: I4466b440634a787bd84b052fe2466b22540216a4
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2184295Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
      Commit-Queue: Jakob Gruber <jgruber@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#67650}
      475c5faa
  2. 06 May, 2020 1 commit
    • Andreas Haas's avatar
      [predictable] Run worker task on the foreground task runner · d6a02c02
      Andreas Haas authored
      On the PredictablePlatform, worker tasks were executed immediately
      instead of posting them in a task queue first. This approach caused
      problems because the execution of the worker task blocked progress of
      the posting task, and the worker task was always executed in the
      context of the posting task, e.g. with an already open HandleScope.
      
      With this CL, worker tasks get posted into the foreground task queue
      of the nullptr isolate instead of executing them immediately.
      The tasks of the nullptr isolate are then executed after a task of
      some other task queue is executed. As the worker tasks are thereby
      executed on the same thread as foreground tasks, the behavior is
      deterministic.
      
      A consequence of this approach is that each pumping the message loop
      of an Isolate may also execute other Isolate's background tasks.
      
      This approach is needed because we don't have a BackgroundTaskRunner but
      merely a CallOnWorkerThread method that doesn't know which Isolate the
      task corresponds to.
      
      R=clemensb@chromium.org, mlippautz@chromium.org
      
      Bug: v8:9670
      Change-Id: I6847ae042146431bc2376d27280be8829f529b95
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2182453
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#67616}
      d6a02c02
  3. 05 May, 2020 4 commits
  4. 30 Apr, 2020 1 commit
  5. 29 Apr, 2020 1 commit
  6. 28 Apr, 2020 2 commits
    • Clemens Backes's avatar
      [wasm] Remove the --wasm-interpret-all flag · 6f4991fa
      Clemens Backes authored
      The interpreter will be moved to be test-only, hence
      --wasm-interpret-all also needs to be removed.
      
      Since we don't have any non-compiling tier any more, we also remove the
      implication from --jitless to --wasm-lazy-compilation. Instead, we add
      another CHECK that we can't be in jitless mode if we trigger any wasm
      compilation.
      
      All tests that just ran other tests and additionally passed
      --wasm-interpret-all become redundant and are deleted. Also all
      regression tests that explicitly specify --wasm-interpret-all are not
      needed any more.
      
      R=thibaudm@chromium.org
      
      Bug: v8:10389
      Change-Id: I5ddf20a842117a6c05e277a5308f5cfe42e6bfa5
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2164792
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Reviewed-by: 's avatarThibaud Michaud <thibaudm@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#67419}
      6f4991fa
    • Paolo Severini's avatar
      Wasm debugging with LLDB: access Wasm engine state · 74e93186
      Paolo Severini authored
      This changelist makes the GDB-stub actually execute GDB-remote commands, by
      accessing the Wasm engine state. More precisely:
      - class GdbServer registers DebugDelegates that receive debug notifications when
        a new Wasm module is loaded, when execution suspends at a breakpoint or for an
        unhandled exception.
      - Since the GDB-remote commands arrive on a separate thread, all
        queries from the debugger are transformed into Task objects, that are posted
        into a TaskRunner that runs in the Isolate thread.
      - class WasmModuleDebug contains the logic to retrieve the value of globals, locals, memory ranges from the
        Wasm engine and to add/remove breakpoints.
      
      Build with: v8_enable_wasm_gdb_remote_debugging = true
      Run with: --wasm-gdb-remote
      Test with: python tools\run-tests.py --outdir=out\debug_x64 debugging -j 1
      
      Bug: chromium:1010467
      Change-Id: I9703894620a027d3c920926db92e2ff809d84ab8
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1941139Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Commit-Queue: Paolo Severini <paolosev@microsoft.com>
      Cr-Commit-Position: refs/heads/master@{#67412}
      74e93186
  7. 25 Apr, 2020 1 commit
  8. 24 Apr, 2020 3 commits
  9. 23 Apr, 2020 3 commits
    • Bill Budge's avatar
      Revert "[offthread] Move stress-background-compile to compiler.cc" · 5f040f9b
      Bill Budge authored
      This reverts commit a441cbfb.
      
      Reason for revert: causes DeepEagerCompilationPeakMemory to fail.
      
      https://ci.chromium.org/p/v8/builders/ci/V8%20Linux/36681
      
      Original change's description:
      > [offthread] Move stress-background-compile to compiler.cc
      > 
      > Make --stress-background-compile a V8 flag rather than a d8 flag, so
      > that it also tests unittests/cctests.
      > 
      > Now, with this flag, every top-level script compile (that fulfills a
      > couple of restrictions) will be both main-thread and background-thread
      > compiled, taking the result of the background compile. In the future,
      > we'll probably want to verify that the two results are equivalent.
      > 
      > One of the necessary changes to allow tests to pass was to introduce a
      > concept of a "temporary" script (with a temporary script id), which
      > doesn't get added to the script list. This is to avoid the main-thread
      > compile part of the stress-test having a debugger-visible side-effect,
      > e.g. in tests that enumerate scripts. We can't just create new ids for
      > such scripts, as then script-id expectation files no longer match.
      > 
      > Bug: chromium:1011762
      > Change-Id: I500bbf2cabea762e69aca3dbae247daae71192cb
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2120541
      > Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#67332}
      
      TBR=rmcilroy@chromium.org,leszeks@chromium.org
      
      Change-Id: I8716b332b07fe4f394b5a32c986bbe652325582d
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: chromium:1011762
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2163143Reviewed-by: 's avatarBill Budge <bbudge@chromium.org>
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#67347}
      5f040f9b
    • Leszek Swirski's avatar
      [offthread] Move stress-background-compile to compiler.cc · a441cbfb
      Leszek Swirski authored
      Make --stress-background-compile a V8 flag rather than a d8 flag, so
      that it also tests unittests/cctests.
      
      Now, with this flag, every top-level script compile (that fulfills a
      couple of restrictions) will be both main-thread and background-thread
      compiled, taking the result of the background compile. In the future,
      we'll probably want to verify that the two results are equivalent.
      
      One of the necessary changes to allow tests to pass was to introduce a
      concept of a "temporary" script (with a temporary script id), which
      doesn't get added to the script list. This is to avoid the main-thread
      compile part of the stress-test having a debugger-visible side-effect,
      e.g. in tests that enumerate scripts. We can't just create new ids for
      such scripts, as then script-id expectation files no longer match.
      
      Bug: chromium:1011762
      Change-Id: I500bbf2cabea762e69aca3dbae247daae71192cb
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2120541
      Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#67332}
      a441cbfb
    • Gus Caplan's avatar
      Implement logical assignment · b151d8db
      Gus Caplan authored
      https://tc39.es/proposal-logical-assignment/
      
      Bug: v8:10372
      Change-Id: I538d54af6b4b24d450d1398c74f76dd57fdb0147
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2158119Reviewed-by: 's avatarShu-yu Guo <syg@chromium.org>
      Reviewed-by: 's avatarMarja Hölttä <marja@chromium.org>
      Reviewed-by: 's avatarMythri Alle <mythria@chromium.org>
      Commit-Queue: Marja Hölttä <marja@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#67330}
      b151d8db
  10. 22 Apr, 2020 1 commit
  11. 21 Apr, 2020 3 commits
  12. 20 Apr, 2020 4 commits
  13. 18 Apr, 2020 1 commit
  14. 15 Apr, 2020 1 commit
  15. 09 Apr, 2020 2 commits
  16. 08 Apr, 2020 2 commits
  17. 06 Apr, 2020 2 commits
  18. 04 Apr, 2020 1 commit
  19. 03 Apr, 2020 3 commits
  20. 01 Apr, 2020 2 commits
  21. 31 Mar, 2020 1 commit