1. 02 May, 2022 30 commits
  2. 01 May, 2022 1 commit
  3. 30 Apr, 2022 1 commit
  4. 29 Apr, 2022 8 commits
    • Rohan Pavone's avatar
      Revert "Reland "[osr] Use the new OSR cache"" · 896f6e74
      Rohan Pavone authored
      This reverts commit 91453880.
      
      Reason for revert: Breaking the Fuchsia Deterministic Builder
      
      Original change's description:
      > Reland "[osr] Use the new OSR cache"
      >
      > This is a reland of commit 91da3883
      >
      > Fixed: Use an X register for JumpIfCodeTIsMarkedForDeoptimization
      > on arm64.
      >
      > Original change's description:
      > > [osr] Use the new OSR cache
      > >
      > > This CL switches over our OSR system to be based on the feedback
      > > vector osr caches.
      > >
      > > - OSRing to Sparkplug is fully separated from OSR urgency. If
      > >   SP code exists, we simply jump to it, no need to maintain an
      > >   installation request.
      > > - Each JumpLoop checks its dedicated FeedbackVector cache slot.
      > >   If a valid target code object exists, we enter it *without*
      > >   calling into runtime to fetch the code object.
      > > - Finally, OSR urgency still remains as the heuristic for
      > >   requesting Turbofan OSR compile jobs. Note it no longer has a
      > >   double purpose of being a generic untargeted installation
      > >   request.
      > >
      > > With the new system in place, we can remove now-unnecessary
      > > hacks:
      > >
      > > - Early OSR tierup is replaced by the standard OSR system. Any
      > >   present OSR code is automatically entered.
      > > - The synchronous OSR compilation fallback is removed. With
      > >   precise installation (= per-JumpLoop-bytecode) we no longer
      > >   have the problem of 'getting unlucky' with JumpLoop/cache entry
      > >   mismatches. Execution has moved on while compiling? Simply spawn
      > >   a new concurrent compile job.
      > > - Remove the synchronous (non-OSR) Turbofan compile request now
      > >   that we always enter available OSR code as early as possible.
      > > - Tiering into Sparkplug no longer messes with OSR state.
      > >
      > > Bug: v8:12161
      > > Change-Id: I0a85e53d363504b7dac174dbaf69c03c35e66700
      > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596167
      > > Commit-Queue: Jakob Linke <jgruber@chromium.org>
      > > Auto-Submit: Jakob Linke <jgruber@chromium.org>
      > > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
      > > Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      > > Cr-Commit-Position: refs/heads/main@{#80147}
      >
      > Bug: v8:12161
      > Change-Id: Ib3597cf1d99cdb5d0f2c5ac18e311914f376231d
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3606232
      > Auto-Submit: Jakob Linke <jgruber@chromium.org>
      > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
      > Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      > Cr-Commit-Position: refs/heads/main@{#80167}
      
      Bug: v8:12161
      Change-Id: I73e2d98660e9edfbe07a152a14402380ea9227de
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3615219Reviewed-by: 's avatarDeepti Gandluri <gdeepti@chromium.org>
      Commit-Queue: Deepti Gandluri <gdeepti@chromium.org>
      Owners-Override: Deepti Gandluri <gdeepti@chromium.org>
      Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
      Cr-Commit-Position: refs/heads/main@{#80287}
      896f6e74
    • Anton Bikineev's avatar
      cppgc: young-gen: Enable generational GC before weak processing · 8844d601
      Anton Bikineev authored
      During weak processing we remember weak callbacks for objects in the old
      generation. We should check the young-gc flag and enable generational GC
      before weak processing, as otherwise we would miss the callbacks and
      forget to update the weak refs.
      
      Bug: chromium:1029379
      Change-Id: I72c98d4926b57c36af6cc503ce34712f67d50f42
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3616721Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Commit-Queue: Anton Bikineev <bikineev@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#80286}
      8844d601
    • Igor Sheludko's avatar
      [rwx][mac] Fix broken component build · 98f6f100
      Igor Sheludko authored
      Bug: v8:12797
      Change-Id: I2e7f7812b47882766d5accb1963301e7c0731fcd
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3616725Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
      Commit-Queue: Igor Sheludko <ishell@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#80285}
      98f6f100
    • Milad Fa's avatar
      PPC/S390: Enable atomic ops in TF bultins · 5d53c2b4
      Milad Fa authored
      opcodes are already defined under the instruction-selector.
      
      Change-Id: Ib8cc1d3b7d8e3f1725306b12450f43c2aff1ae83
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3616722Reviewed-by: 's avatarMarja Hölttä <marja@chromium.org>
      Commit-Queue: Marja Hölttä <marja@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#80284}
      5d53c2b4
    • jameslahm's avatar
      Reland "[test] Move cctest/test-regexp to unittests" · 907b31bc
      jameslahm authored
      This is a reland of commit b36c87e3.
      Reason for revert: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux%20-%20noi18n%20-%20debug/42210/overview.
      
      This CL moves cctest/test-regexp to unittests/regexp/regexp-unittest and
      updates unittest.status file for test-regexp.
      
      Original change's description:
      > [test] Move cctest/test-regexp to unittests
      >
      > ... /regexp/regexp-unittest.
      >
      > Bug: v8:12781
      > Change-Id: I3c3ba4c519ff503b242c39d0e3b2350f25d7e84c
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3607370
      > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
      > Commit-Queue: 王澳 <wangao.james@bytedance.com>
      > Cr-Commit-Position: refs/heads/main@{#80217}
      
      Bug: v8:12781
      Change-Id: I8e08147f21feb1e97b681204bc5b771794c3768f
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3612663Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Commit-Queue: 王澳 <wangao.james@bytedance.com>
      Cr-Commit-Position: refs/heads/main@{#80283}
      907b31bc
    • George Wort's avatar
      Make profile-guided optimization of builtins more configurable · 0e127bce
      George Wort authored
      Introduce get_hints.py and combine_hints.py in order to make
      the interpretation of basic block counts into hints more
      configurable and explicit, as well as allowing more accurate
      and consistent methods of combining multiple profiles.
      
      get_hints.py allows for the minimum count and threshold ratio
      values to be easily altered for different profiles, while
      combine_hints.py allows the hints produced from different
      benchmarks and threshold values to be easily and sensibly
      combined.
      
      Simply summing together basic block counts from different
      benchmarks could previously lead to a longer running benchmark
      overshadowing multiple shorter benchmarks with conflicting
      hints.
      
      Allowing alteration of the current threshold values gives a
      doubling of performance, while the new method of combining
      distinct profiles can double the performance improvement of the
      secondary benchmark while losing as little as 4% of the
      improvement gained in the primary benchmark.
      
      Design doc: https://docs.google.com/document/d/1OhwZnIZom47IX0lyceyt-S9i8AApDB0UqJdvQD6NuKQ/edit?usp=sharing
      
      Bug: v8:10470
      Change-Id: I1c09d1eabfdda5ed6794592e2c13ff8b461be361
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3545181Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
      Commit-Queue: George Wort <george.wort@arm.com>
      Cr-Commit-Position: refs/heads/main@{#80282}
      0e127bce
    • Anton Bikineev's avatar
      cppgc: young-gen: Use ref-counting scheme to enable the barrier · 3cb46341
      Anton Bikineev authored
      The CL uses the different scheme to enable the generational barrier. The
      separate global counter (is_enabled_) keeps track of the number of heaps
      that enable generational GC. If at least one of the heaps enables the
      generational GC, the counter will enable the write barrier. Technically,
      the counter could be merged with WriteBarrier::is_enabled_, but having a
      separate variable allows us to keep DCHECKs if generational barrier is
      enabled.
      
      Bug: chromium:1029379
      Change-Id: Iafaa76f96acb18a73f8bde7231434e68c04cb683
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3616518Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Commit-Queue: Anton Bikineev <bikineev@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#80281}
      3cb46341
    • Junliang Yan's avatar
      ppc64: [baseline] implement EmitReturn · 671dcfac
      Junliang Yan authored
      Change-Id: I7ba5cd6cf1c76f0955b3ad7184af0a9245f66657
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3613765
      Commit-Queue: Junliang Yan <junyan@redhat.com>
      Reviewed-by: 's avatarMilad Farazmand <mfarazma@redhat.com>
      Cr-Commit-Position: refs/heads/main@{#80280}
      671dcfac