1. 06 Jun, 2021 1 commit
    • Dominik Inführ's avatar
      Reland "[heap] Remove unused LocalSpace class" · c91c7270
      Dominik Inführ authored
      This is a reland of b0c70710
      
      The first CL got reverted because of build errors. This CL replaces the
      remaining usage of is_local_space() with is_compaction_space().
      Supposedly this was a leftover because https://crrev.com/c/2928189
      landed at roughly the same time.
      
      Original change's description:
      > [heap] Remove unused LocalSpace class
      >
      > LocalSpace was introduced for off-heap spaces with concurrent bytecode
      > compilation finalization. However, finalization ended up using
      > LocalHeap for concurrent allocations. LocalSpace is therefore unused
      > and can be removed.
      >
      > This CL removes LocalSpace and renames all mentions of local space to
      > compaction space. Compaction space was the only local space left.
      >
      > Change-Id: I12a8a2724f777a77ddb9957fe2d8e89febfebbaf
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2930169
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#74914}
      
      Change-Id: I993c47fe85f4140f5d6137afde2653a48047cafb
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2939983Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#74957}
      c91c7270
  2. 02 Jun, 2021 2 commits
    • Clemens Backes's avatar
      Revert "[heap] Remove unused LocalSpace class" · c538b9b4
      Clemens Backes authored
      This reverts commit b0c70710.
      
      Reason for revert: Lots of compile errors.
      
      Original change's description:
      > [heap] Remove unused LocalSpace class
      >
      > LocalSpace was introduced for off-heap spaces with concurrent bytecode
      > compilation finalization. However, finalization ended up using
      > LocalHeap for concurrent allocations. LocalSpace is therefore unused
      > and can be removed.
      >
      > This CL removes LocalSpace and renames all mentions of local space to
      > compaction space. Compaction space was the only local space left.
      >
      > Change-Id: I12a8a2724f777a77ddb9957fe2d8e89febfebbaf
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2930169
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#74914}
      
      Change-Id: I3a654da0ddb556c1fb8767f8401ecd3b46786bea
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2933140
      Auto-Submit: Clemens Backes <clemensb@chromium.org>
      Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
      Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
      Cr-Commit-Position: refs/heads/master@{#74915}
      c538b9b4
    • Dominik Inführ's avatar
      [heap] Remove unused LocalSpace class · b0c70710
      Dominik Inführ authored
      LocalSpace was introduced for off-heap spaces with concurrent bytecode
      compilation finalization. However, finalization ended up using
      LocalHeap for concurrent allocations. LocalSpace is therefore unused
      and can be removed.
      
      This CL removes LocalSpace and renames all mentions of local space to
      compaction space. Compaction space was the only local space left.
      
      Change-Id: I12a8a2724f777a77ddb9957fe2d8e89febfebbaf
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2930169Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#74914}
      b0c70710
  3. 17 May, 2021 1 commit
  4. 20 Apr, 2021 1 commit
  5. 12 Apr, 2021 1 commit
    • Wenyu Zhao's avatar
      Allowing map word to be used for other state in GC header. · 5e0b94c4
      Wenyu Zhao authored
      This CL adds features to pack/unpack map words.
      
      Currently V8 cannot store extra metadata in object headers -- because V8
      objects do not have a proper header, but only a map pointer at the start
      of the object. To store per-object metadata like marking data, a side
      table is required as the per-object metadata storage.
      
      This CL enables V8 to use higher unused bits in a 64-bit map word as
      per-object metadata storage. Map pointer stores come with an extra step
      to encode the metadata into the pointer (we call it "map packing").
      Map pointer loads will also remove the metadata bits as well (we call it
      "map packing").
      
      Since the map word is no longer a valid pointer after packing, we also
      change the tag of the packed map word to make it looks like a Smi. This
      helps various GC and barrier code to correctly skip them instead of
      blindly dereferencing this invalid pointer.
      
      A ninja flag `v8_enable_map_packing` is provided to turn this
      map-packing feature on and off. It is disabled by default.
      
      * Only works on x64 platform, with `v8_enable_pointer_compression`
        set to `false`
      
      Bug: v8:11624
      Change-Id: Ia2bdf79553945e5fc0b0874c87803d2cc733e073
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2247561Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Reviewed-by: 's avatarNico Hartmann <nicohartmann@chromium.org>
      Reviewed-by: 's avatarToon Verwaest <verwaest@chromium.org>
      Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
      Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#73915}
      5e0b94c4
  6. 07 Apr, 2021 1 commit
  7. 11 Mar, 2021 3 commits
    • Clemens Backes's avatar
      Reland "[no-wasm] Exclude src/wasm from compilation" · 3f9ff062
      Clemens Backes authored
      This is a reland of 80f5dfda. A condition
      in pipeline.cc was inverted, which lead to a CSA verifier error.
      
      Original change's description:
      > [no-wasm] Exclude src/wasm from compilation
      >
      > This is the biggest chunk, including
      > - all of src/wasm,
      > - torque file for wasm objects,
      > - torque file for wasm builtins,
      > - wasm builtins,
      > - wasm runtime functions,
      > - int64 lowering,
      > - simd scala lowering,
      > - WasmGraphBuilder (TF graph construction for wasm),
      > - wasm frame types,
      > - wasm interrupts,
      > - the JSWasmCall opcode,
      > - wasm backing store allocation.
      >
      > Those components are all recursively entangled, so I found no way to
      > split this change up further.
      >
      > Some includes that were recursively included by wasm headers needed to
      > be added explicitly now.
      >
      > backing-store-unittest.cc is renamed to wasm-backing-store-unittest.cc
      > because it only tests wasm backing stores. This file is excluded from
      > no-wasm builds then.
      >
      > R=jkummerow@chromium.org, jgruber@chromium.org, mlippautz@chromium.org, petermarshall@chromium.org
      >
      > Bug: v8:11238
      > Change-Id: I7558f2d12d2dd6c65128c4de7b79173668c80b2b
      > Cq-Include-Trybots: luci.v8.try:v8_linux64_no_wasm_compile_rel
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2742955
      > Commit-Queue: Clemens Backes <clemensb@chromium.org>
      > Reviewed-by: Peter Marshall <petermarshall@chromium.org>
      > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
      > Reviewed-by: Jakob Gruber <jgruber@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#73344}
      
      TBR=jgruber@chromium.org
      
      Bug: v8:11238
      Change-Id: I20bd2847a59c68738b5a336cd42582b7b1499585
      Cq-Include-Trybots: luci.v8.try:v8_linux64_no_wasm_compile_rel
      Cq-Include-Trybots: luci.v8.try:v8_linux_verify_csa_rel_ng
      Cq-Include-Trybots: luci.v8.try:v8_linux64_verify_csa_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2752867Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#73348}
      3f9ff062
    • Clemens Backes's avatar
      Revert "[no-wasm] Exclude src/wasm from compilation" · 92bc3d38
      Clemens Backes authored
      This reverts commit 80f5dfda.
      
      Reason for revert: Fails CSA verification: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux%20-%20verify%20csa/21766/overview
      
      Original change's description:
      > [no-wasm] Exclude src/wasm from compilation
      >
      > This is the biggest chunk, including
      > - all of src/wasm,
      > - torque file for wasm objects,
      > - torque file for wasm builtins,
      > - wasm builtins,
      > - wasm runtime functions,
      > - int64 lowering,
      > - simd scala lowering,
      > - WasmGraphBuilder (TF graph construction for wasm),
      > - wasm frame types,
      > - wasm interrupts,
      > - the JSWasmCall opcode,
      > - wasm backing store allocation.
      >
      > Those components are all recursively entangled, so I found no way to
      > split this change up further.
      >
      > Some includes that were recursively included by wasm headers needed to
      > be added explicitly now.
      >
      > backing-store-unittest.cc is renamed to wasm-backing-store-unittest.cc
      > because it only tests wasm backing stores. This file is excluded from
      > no-wasm builds then.
      >
      > R=​jkummerow@chromium.org, jgruber@chromium.org, mlippautz@chromium.org, petermarshall@chromium.org
      >
      > Bug: v8:11238
      > Change-Id: I7558f2d12d2dd6c65128c4de7b79173668c80b2b
      > Cq-Include-Trybots: luci.v8.try:v8_linux64_no_wasm_compile_rel
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2742955
      > Commit-Queue: Clemens Backes <clemensb@chromium.org>
      > Reviewed-by: Peter Marshall <petermarshall@chromium.org>
      > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
      > Reviewed-by: Jakob Gruber <jgruber@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#73344}
      
      Bug: v8:11238
      Change-Id: I93672002c1faa36bb0bb5b4a9cc2032ee2ccd814
      Cq-Include-Trybots: luci.v8.try:v8_linux64_no_wasm_compile_rel
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2752866
      Auto-Submit: Clemens Backes <clemensb@chromium.org>
      Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
      Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
      Cr-Commit-Position: refs/heads/master@{#73346}
      92bc3d38
    • Clemens Backes's avatar
      [no-wasm] Exclude src/wasm from compilation · 80f5dfda
      Clemens Backes authored
      This is the biggest chunk, including
      - all of src/wasm,
      - torque file for wasm objects,
      - torque file for wasm builtins,
      - wasm builtins,
      - wasm runtime functions,
      - int64 lowering,
      - simd scala lowering,
      - WasmGraphBuilder (TF graph construction for wasm),
      - wasm frame types,
      - wasm interrupts,
      - the JSWasmCall opcode,
      - wasm backing store allocation.
      
      Those components are all recursively entangled, so I found no way to
      split this change up further.
      
      Some includes that were recursively included by wasm headers needed to
      be added explicitly now.
      
      backing-store-unittest.cc is renamed to wasm-backing-store-unittest.cc
      because it only tests wasm backing stores. This file is excluded from
      no-wasm builds then.
      
      R=jkummerow@chromium.org, jgruber@chromium.org, mlippautz@chromium.org, petermarshall@chromium.org
      
      Bug: v8:11238
      Change-Id: I7558f2d12d2dd6c65128c4de7b79173668c80b2b
      Cq-Include-Trybots: luci.v8.try:v8_linux64_no_wasm_compile_rel
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2742955
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Reviewed-by: 's avatarPeter Marshall <petermarshall@chromium.org>
      Reviewed-by: 's avatarToon Verwaest <verwaest@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#73344}
      80f5dfda
  8. 04 Feb, 2021 1 commit
  9. 16 Dec, 2020 2 commits
    • Dominik Inführ's avatar
      [heap] Move completion of sweeping before actual GC · 9aaf874a
      Dominik Inführ authored
      This CL completes sweeping in Heap::PerformGarbageCollection before
      invoking the actual collection. Collection code can now assume that
      sweeping was already finished.
      
      This helps with emitting the right epoch for sweeping and avoids a
      data-race when updating the epoch while sweeping tasks are still running.
      
      Bug: chromium:1154636
      Change-Id: Ic9c4ac49568199d0ea48f17eea132079defe74a5
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2573478
      Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarHannes Payer <hpayer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71794}
      9aaf874a
    • Dominik Inführ's avatar
      Reland^3 [heap] Add epoch to GC tracing events · 893f32fe
      Dominik Inführ authored
      This is a reland of b614cd78
      
      Original change's description:
      > Reland "Reland "[heap] Add epoch to GC tracing events""
      >
      > This is a reland of 3238162d
      >
      > No changes since the last reland.
      >
      > Original change's description:
      > > Reland "[heap] Add epoch to GC tracing events"
      > >
      > > This is a reland of be52501d
      > >
      > > Fix data race by not emitting the epoch for sweeper background jobs
      > > at them moment.
      > >
      > > Original change's description:
      > > > [heap] Add epoch to GC tracing events
      > > >
      > > > This CL adds the TRACE_GC_EPOCH macro, which adds the epoch as attribute
      > > > to the trace event. Use TRACE_GC_EPOCH for top-level events, nested
      > > > events can get the information from its parent.
      > > >
      > > > V8's GC needs an epoch for young and full collections, since scavenges
      > > > also occur during incremental marking. The epoch is also process-wide,
      > > > so different isolates do not reuse the same id.
      > > >
      > > > Change-Id: I8889bccce51e008374b4796445a50062bd87a45d
      > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2565247
      > > > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > > > Cr-Commit-Position: refs/heads/master@{#71521}
      > >
      > > Change-Id: Ib8f4bfdc01c459955eb6db63bb6e24a8aa068f09
      > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567702
      > > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#71567}
      >
      > TBR=ulan@chromium.org,dinfuehr@chromium.org
      >
      > Change-Id: I09dcfabbad4ef1ad50e02a227282982cd7d87997
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2571122
      > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
      > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#71609}
      
      Change-Id: I89dfa5c7658197348a39be51b75dba77bfd4a70b
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2577470
      Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71777}
      893f32fe
  10. 04 Dec, 2020 2 commits
    • Sathya Gunasekaran's avatar
      Revert "Reland "Reland "[heap] Add epoch to GC tracing events""" · fb37749a
      Sathya Gunasekaran authored
      This reverts commit b614cd78.
      
      Reason for revert: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux64/40448/overview
      
      Original change's description:
      > Reland "Reland "[heap] Add epoch to GC tracing events""
      >
      > This is a reland of 3238162d
      >
      > No changes since the last reland.
      >
      > Original change's description:
      > > Reland "[heap] Add epoch to GC tracing events"
      > >
      > > This is a reland of be52501d
      > >
      > > Fix data race by not emitting the epoch for sweeper background jobs
      > > at them moment.
      > >
      > > Original change's description:
      > > > [heap] Add epoch to GC tracing events
      > > >
      > > > This CL adds the TRACE_GC_EPOCH macro, which adds the epoch as attribute
      > > > to the trace event. Use TRACE_GC_EPOCH for top-level events, nested
      > > > events can get the information from its parent.
      > > >
      > > > V8's GC needs an epoch for young and full collections, since scavenges
      > > > also occur during incremental marking. The epoch is also process-wide,
      > > > so different isolates do not reuse the same id.
      > > >
      > > > Change-Id: I8889bccce51e008374b4796445a50062bd87a45d
      > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2565247
      > > > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > > > Cr-Commit-Position: refs/heads/master@{#71521}
      > >
      > > Change-Id: Ib8f4bfdc01c459955eb6db63bb6e24a8aa068f09
      > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567702
      > > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#71567}
      >
      > TBR=ulan@chromium.org,dinfuehr@chromium.org
      >
      > Change-Id: I09dcfabbad4ef1ad50e02a227282982cd7d87997
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2571122
      > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
      > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#71609}
      
      TBR=ulan@chromium.org,dinfuehr@chromium.org
      
      Change-Id: I9dfd37f969ec0c5e5f278e6a82732995fd82e5d9
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2574002Reviewed-by: 's avatarSathya Gunasekaran  <gsathya@chromium.org>
      Commit-Queue: Sathya Gunasekaran  <gsathya@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71610}
      fb37749a
    • Dominik Inführ's avatar
      Reland "Reland "[heap] Add epoch to GC tracing events"" · b614cd78
      Dominik Inführ authored
      This is a reland of 3238162d
      
      No changes since the last reland.
      
      Original change's description:
      > Reland "[heap] Add epoch to GC tracing events"
      >
      > This is a reland of be52501d
      >
      > Fix data race by not emitting the epoch for sweeper background jobs
      > at them moment.
      >
      > Original change's description:
      > > [heap] Add epoch to GC tracing events
      > >
      > > This CL adds the TRACE_GC_EPOCH macro, which adds the epoch as attribute
      > > to the trace event. Use TRACE_GC_EPOCH for top-level events, nested
      > > events can get the information from its parent.
      > >
      > > V8's GC needs an epoch for young and full collections, since scavenges
      > > also occur during incremental marking. The epoch is also process-wide,
      > > so different isolates do not reuse the same id.
      > >
      > > Change-Id: I8889bccce51e008374b4796445a50062bd87a45d
      > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2565247
      > > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#71521}
      >
      > Change-Id: Ib8f4bfdc01c459955eb6db63bb6e24a8aa068f09
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567702
      > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#71567}
      
      TBR=ulan@chromium.org,dinfuehr@chromium.org
      
      Change-Id: I09dcfabbad4ef1ad50e02a227282982cd7d87997
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2571122Reviewed-by: 's avatarDominik Inführ <dinfuehr@chromium.org>
      Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71609}
      b614cd78
  11. 02 Dec, 2020 2 commits
    • Maya Lekova's avatar
      Revert "Reland "[heap] Add epoch to GC tracing events"" · 78e9a3a7
      Maya Lekova authored
      This reverts commit 3238162d.
      
      Reason for revert: Speculative revert for https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux64/40411/overview, causing SEGV_ACCERR on test/mjsunit/harmony/promise-any-overflow-2.js and other failures in minor_mc variant
      
      Original change's description:
      > Reland "[heap] Add epoch to GC tracing events"
      >
      > This is a reland of be52501d
      >
      > Fix data race by not emitting the epoch for sweeper background jobs
      > at them moment.
      >
      > Original change's description:
      > > [heap] Add epoch to GC tracing events
      > >
      > > This CL adds the TRACE_GC_EPOCH macro, which adds the epoch as attribute
      > > to the trace event. Use TRACE_GC_EPOCH for top-level events, nested
      > > events can get the information from its parent.
      > >
      > > V8's GC needs an epoch for young and full collections, since scavenges
      > > also occur during incremental marking. The epoch is also process-wide,
      > > so different isolates do not reuse the same id.
      > >
      > > Change-Id: I8889bccce51e008374b4796445a50062bd87a45d
      > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2565247
      > > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#71521}
      >
      > Change-Id: Ib8f4bfdc01c459955eb6db63bb6e24a8aa068f09
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567702
      > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#71567}
      
      TBR=ulan@chromium.org,dinfuehr@chromium.org
      
      Change-Id: I29a131f798c3536d16e4b4c44c0fcb8b35dd0051
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2569764Reviewed-by: 's avatarMaya Lekova <mslekova@chromium.org>
      Commit-Queue: Maya Lekova <mslekova@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71569}
      78e9a3a7
    • Dominik Inführ's avatar
      Reland "[heap] Add epoch to GC tracing events" · 3238162d
      Dominik Inführ authored
      This is a reland of be52501d
      
      Fix data race by not emitting the epoch for sweeper background jobs
      at them moment.
      
      Original change's description:
      > [heap] Add epoch to GC tracing events
      >
      > This CL adds the TRACE_GC_EPOCH macro, which adds the epoch as attribute
      > to the trace event. Use TRACE_GC_EPOCH for top-level events, nested
      > events can get the information from its parent.
      >
      > V8's GC needs an epoch for young and full collections, since scavenges
      > also occur during incremental marking. The epoch is also process-wide,
      > so different isolates do not reuse the same id.
      >
      > Change-Id: I8889bccce51e008374b4796445a50062bd87a45d
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2565247
      > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#71521}
      
      Change-Id: Ib8f4bfdc01c459955eb6db63bb6e24a8aa068f09
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567702
      Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71567}
      3238162d
  12. 01 Dec, 2020 2 commits
  13. 27 Nov, 2020 1 commit
  14. 26 Nov, 2020 1 commit
  15. 24 Nov, 2020 2 commits
  16. 30 Sep, 2020 1 commit
  17. 25 Sep, 2020 2 commits
  18. 16 Sep, 2020 1 commit
  19. 08 Sep, 2020 2 commits
  20. 12 Aug, 2020 1 commit
  21. 21 Jul, 2020 1 commit
  22. 16 Jul, 2020 1 commit
  23. 17 Jun, 2020 1 commit
    • Dan Elphick's avatar
      [heap] Use BasicMemoryChunk::FromHeapObject more · 6f267e8a
      Dan Elphick authored
      Since ReadOnlySpace pages will soon not be MemoryChunks, change most
      uses of MemoryChunk::FromHeapObject and FromAddress to use the
      BasicMemoryChunk variants and which use the new MemoryChunk::cast
      function that takes a BasicMemoryChunk and DCHECKs !InReadOnlySpace().
      
      To enable this, it also moves into BasicMemoryChunk several MemoryChunk
      functions that just require a BasicMemoryChunk.
      
      Bug: v8:10454
      Change-Id: I80875b2c2446937ac2c2bc9287d36e71cc050c38
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2243216
      Commit-Queue: Dan Elphick <delphick@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#68390}
      6f267e8a
  24. 03 Jun, 2020 1 commit
  25. 12 May, 2020 1 commit
  26. 11 May, 2020 1 commit
  27. 05 May, 2020 1 commit
  28. 25 Feb, 2020 1 commit
    • Omer Katz's avatar
      Revert "[heap] Align v8 and oilpan worklists" · a2a50d7f
      Omer Katz authored
      This reverts commit 6cfba48b.
      
      Reason for revert: Removing dynamic parameter caused regressions for scavenger.
      
      Original change's description:
      > [heap] Align v8 and oilpan worklists
      >
      > This CL makes the following changes:
      > 1) Size of allocated buffer is set by a template parameter
      >    (with a default value instead of hardcoded size)
      > 2) Remove dynamic parameter for initializing number of
      >    tasks (see comment in scavenger.cc)
      >
      > This CL aligns the v8 and oilpan heaps so that they provide
      > the same interface and functionality.
      >
      > Change-Id: I77d63793f0a54ea29198ddd6bd298eae2c15cf42
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030920
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Commit-Queue: Omer Katz <omerkatz@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#66158}
      
      TBR=ulan@chromium.org,mlippautz@chromium.org,omerkatz@chromium.org
      
      # Not skipping CQ checks because original CL landed > 1 day ago.
      
      Change-Id: Iab127d59882ded33d0df3897326031bfc2d2aaf2
      Bug: chromium:1052750
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2071862
      Commit-Queue: Omer Katz <omerkatz@chromium.org>
      Reviewed-by: 's avatarOmer Katz <omerkatz@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66430}
      a2a50d7f
  29. 06 Feb, 2020 1 commit
    • Omer Katz's avatar
      [heap] Align v8 and oilpan worklists · 6cfba48b
      Omer Katz authored
      This CL makes the following changes:
      1) Size of allocated buffer is set by a template parameter
         (with a default value instead of hardcoded size)
      2) Remove dynamic parameter for initializing number of
         tasks (see comment in scavenger.cc)
      
      This CL aligns the v8 and oilpan heaps so that they provide
      the same interface and functionality.
      
      Change-Id: I77d63793f0a54ea29198ddd6bd298eae2c15cf42
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030920Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Commit-Queue: Omer Katz <omerkatz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66158}
      6cfba48b
  30. 24 Jan, 2020 1 commit