- 08 Oct, 2020 15 commits
-
-
Clemens Backes authored
It turns out that most LEBs are rather small (especially when used for locals). This CL adds a fast path for single-byte LEBs which is supposed to be inlined into callers. The more expensive slow path is then explicitly outlined to avoid excessive binary size growth. R=thibaudm@chromium.org Change-Id: I0dcdf597b9be3055acc2b878b6bee3fa21839758 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2449974 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#70408}
-
Ulan Degenbaev authored
Currently MockPlatform has shorter lifetime than the isolate that uses it. This leads to use-after-free races in concurrent tasks that fetch the mock platform just before it is freed. This CL ensures that MockPlatform is valid throughout the whole lifetime of the isolate Change-Id: Ib94dc7674b9f94833be3372de68209ec38577ca1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461726 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Emanuel Ziegler <ecmziegler@chromium.org> Cr-Commit-Position: refs/heads/master@{#70407}
-
Georg Neis authored
Bug: v8:7790 Change-Id: I1ffb2289f613a03d0246db2d66c3caaf0e4d6d2a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2448796 Auto-Submit: Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/master@{#70406}
-
Sylvain Defresne authored
Chromiun no longer use set_sources_assignment_filter() anywhere in the build, so these are no longer needed. Bug: chromium:1018739 Change-Id: I7b33612d925563ebca0d93a7d3c9183d7305b7b0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2456988Reviewed-by: Nico Weber <thakis@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org> Cr-Commit-Position: refs/heads/master@{#70405}
-
Clemens Backes authored
Remove one "mode" of LEB decoding by eliminating the {AdvancePCFlag}, and doing the PC advance in the caller instead. The returned length is now always zero in case of an error, thus remove the respective checks from the unit tests. The returned length does not really matter if we ran into an error. R=thibaudm@chromium.org Change-Id: Ibfd94dd981cefa2fc24c7af560c85afd1c826f2c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2449972Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70404}
-
Peter Marshall authored
1. Set profiling interval to 100us to get 10x the samples 2. Guarantee we spend at least 1ms per iteration, instead of only bailing out if we spend more than 1ms. This gives us enough samples on release mode. 3. Increase the time spent profiling optimized code Bug: v8:10996 Change-Id: I1348ebce48fe998e79b5847f3e3d037148302dcc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2460823Reviewed-by: Simon Zünd <szuend@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#70403}
-
Michael Achenbach authored
This flattens the json output to one result record as a dict. In the past several records with different arch/mode combinations could be run, but this is deprecated since several releases. We also drop storing the arch/mode information in the record as it isn't used on the infra side for anything. This was prepared on the infra side by: https://crrev.com/c/2453562 Bug: chromium:1132088 Change-Id: I944514dc00a671e7671bcdbcaa3a72407476d7ad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2456987Reviewed-by: Liviu Rau <liviurau@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#70402}
-
Clemens Backes authored
Found some more direct calls to {Decoder::error} which should be wrapped in {DecodeError} to do some less work in boolean validation mode. R=thibaudm@chromium.org Bug: v8:10969 Change-Id: I5f7b5553a0c0cc2123904380625d50f25ea1ffc2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2456686Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70401}
-
Michael Lippautz authored
Adds NameProvider to allow specifying names of objects. The corresponding internal NameTrait is registered with the GCInfo object. Use name infrastructure to provide a hint on encountering an unmarked object in the marking verifier. Bug: chromium:1056170 Change-Id: I95bb290660f5905500f861bd5cc85148a1b47184 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2454087 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Anton Bikineev <bikineev@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/master@{#70400}
-
Leszek Swirski authored
Since we're not reserving memory anymore, we don't log reserved memory when profiling serialization. So, instead log the allocation counts used by OutputStatistics as a pseudo-reserved size. Bug: v8:10998 Bug: chromium:1075999 Change-Id: I64dc6086b14c0e720ef8d0c1ea99a6f8ccabcf9c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2460808 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#70399}
-
Shu-yu Guo authored
Bug: v8:9344 Change-Id: Id91afc60989afd45c4c0d00696afb4c81489f0ee Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2458146 Auto-Submit: Shu-yu Guo <syg@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#70398}
-
Dominik Inführ authored
NewSpace::Grow isn't in a safepoint when FLAG_local_heaps is disabled. Bug: chromium:1136292 Change-Id: I18c4d42b73450d11ce9b685276b239481a4c5c83 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2459372 Auto-Submit: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#70397}
-
Jakob Gruber authored
This reverts commit bbecd8d5. Reason for revert: https://bugs.chromium.org/p/v8/issues/detail?id=10999 Original change's description: > [heap] Turn on RO_SPACE sharing for pointer compression > > Makes the read-only space sharing the default even with pointer > compression if on Linux, Android or Chrome OS. > > This won't have any immediate impact on Chrome since the platform page > allocator in chrome does not yet support allocation and remapping of > shared pages. > > Bug: v8:10454 > Change-Id: I3bc57080827efe38095a4bb1d02a53518727056a > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2454077 > Auto-Submit: Dan Elphick <delphick@chromium.org> > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#70383} TBR=rmcilroy@chromium.org,delphick@chromium.org Change-Id: I0e96f6b901adeb5569a545eb24b15fb8d45bf544 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10454 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2460806Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#70396}
-
Ng Zhi An authored
Prototype these 4 instructions: - i64x2.widen_low_i32x4_s - i64x2.widen_high_i32x4_s - i64x2.widen_low_i32x4_u - i64x2.widen_high_i32x4_u Bug: v8:10972 Change-Id: I3cc3bfdd6dfd0f0bab1dfef63399ed9fa68bd2d2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2441369Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70395}
-
Ng Zhi An authored
The immediates would have been checked by the validation, so we can skip masking them. Bug: v8:10696 Change-Id: I18e4746b1eb08a2436311a633341be0c88f52139 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2453456 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#70394}
-
- 07 Oct, 2020 25 commits
-
-
Ng Zhi An authored
This fills out all possible combinations of SimdType conversions. The implementation is not the best, it uses existing conversions instead of creating new specific ones, but is sufficient, since we don't prioritize performance for lowering. I added if/else clauses to the existing implementation, so that the diff is easier to read. I will put up a follow-up to convert it into switch statements. Bug: chromium:1134898,v8:10507 Change-Id: I5fcb3597882b0ea3084fdc79eb1dab9b8629044b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2453462 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#70393}
-
Ng Zhi An authored
The existing macro assembler define Pinsrb, which expects 3 arguments: - XMMRegister dst - Register/Operand src - uint8_t imm which overwrites dst with src at lane specified by imm. That means we cannot use the AVX version, which has 4 arguments, and does not overwrite dst. This refactoring defines the 4 argument AVX version instead, and if AVX is not supported, fall back to the SSE version, and ensure that the value is copied over into dst first. For convenience, we define an overload with 3 arguments that duplicates dst, this replicates the SSE behavior, so that not all callers have to be updated. Bug: v8:10975, v8:10933 Change-Id: I6f9b9d37fa08d3f5cff4f040ae7d5e1f0cf36455 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2444096 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#70392}
-
Ng Zhi An authored
Load transform nodes can be effect inputs, so we need to update the node in place. Otherwise, if a load transform node is both an value and an effect input, only the value input will be updated with replacements, the effect input will still be the unlowered load transform node. This is because DefaultLowering only lowers value inputs. This is consistent with normal loads in the scalar lowering, and also how int64 does it. Bug: v8:10984,v8:10507 Change-Id: I04b0f0b1cff95e39589de979ecae6cb4b085a3cf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2453861Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70391}
-
Shu-yu Guo authored
This is a predicate checking if any module in a module graph is [[Async]], i.e. contains a top-level await. It is needed for ServiceWorker integration, as ServiceWorkers disallows top-level await in its modules to prevent stalling during registration. https://github.com/w3c/ServiceWorker/pull/1444 Bug: v8:9344 Change-Id: Id84489bc73717b4c9950059c8ff6def9297499d0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2451212 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#70390}
-
Shu-yu Guo authored
This reverts commit 4848de2a. Reason for revert: TSAN failure https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20TSAN%20-%20stress-incremental-marking/287 Original change's description: > Reland "[Heap]: Marking use Jobs." > > This is a reland of 4a2b2b2e > > Original change's description: > > [Heap]: Marking use Jobs. > > > > StopRequest is removed in favor of: > > COMPLETE_TASKS_FOR_TESTING -> JoinForTesting() > > PREEMPT_TASKS -> Pause() > > COMPLETE_ONGOING_TASKS now has the same behavior as PREEMPT_TASKS > > - we should avoid waiting on the main thread as much as possible. > > > > Change-Id: Icceeb4f0c0fda2ed234b2f26fe308b11410fcfb7 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2376166 > > Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#70037} > > Change-Id: I386f619501ad07997278543868bc889a60afcc8b > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2423938 > Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#70387} TBR=ulan@chromium.org,etiennep@chromium.org Change-Id: I76021037fb91df304ef3f180cc0eb2143e58bc5c No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2457428Reviewed-by: Shu-yu Guo <syg@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#70389}
-
Clemens Backes authored
This reverts commit 84eec6e9. Reason for revert: TSan issues (lock order inversion): https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20TSAN%20-%20isolates/11658 Original change's description: > [wasm] Use NumOutstandingCompilations() in BackgroundCompileJob:GetMaxConcurrency() > > This simplifies current_compile_job_ since ScheduleCompileJobForNewUnits > is only called on the main thread. > > From pinpoint: > v8:wasm:sync_instantiate:wall_time: 19.1% improvement > v8-gc-incremental-step: 20.5% improvement > https://pinpoint-dot-chromeperf.appspot.com/job/152920d8520000 > > Change-Id: Id560080937f5439cf3321ce9306c7cae49e74798 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2442383 > Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#70386} TBR=clemensb@chromium.org,etiennep@chromium.org Change-Id: Iaa7df7fbfc56fcc7bf8400671f13210a1984885f No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2456768Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70388}
-
Etienne Pierre-doray authored
This is a reland of 4a2b2b2e Original change's description: > [Heap]: Marking use Jobs. > > StopRequest is removed in favor of: > COMPLETE_TASKS_FOR_TESTING -> JoinForTesting() > PREEMPT_TASKS -> Pause() > COMPLETE_ONGOING_TASKS now has the same behavior as PREEMPT_TASKS > - we should avoid waiting on the main thread as much as possible. > > Change-Id: Icceeb4f0c0fda2ed234b2f26fe308b11410fcfb7 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2376166 > Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#70037} Change-Id: I386f619501ad07997278543868bc889a60afcc8b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2423938 Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#70387}
-
Etienne Pierre-doray authored
This simplifies current_compile_job_ since ScheduleCompileJobForNewUnits is only called on the main thread. From pinpoint: v8:wasm:sync_instantiate:wall_time: 19.1% improvement v8-gc-incremental-step: 20.5% improvement https://pinpoint-dot-chromeperf.appspot.com/job/152920d8520000 Change-Id: Id560080937f5439cf3321ce9306c7cae49e74798 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2442383 Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70386}
-
Victor Gomes authored
Change-Id: I850fa9a5449b204c8b9a626c449e587b039a61f5 Bug: chromium:1133701 Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2454086 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Auto-Submit: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/master@{#70385}
-
Santiago Aboy Solanes authored
We had a way to do string to double without allocation that we were using on StringData. Reuse that on StringRef for Strings that can access the heap. BUg: v8:7790 Change-Id: I30e6dace3fbf05eb8672ff1bad46f6c6d6fe1d6d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2450013Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#70384}
-
Dan Elphick authored
Makes the read-only space sharing the default even with pointer compression if on Linux, Android or Chrome OS. This won't have any immediate impact on Chrome since the platform page allocator in chrome does not yet support allocation and remapping of shared pages. Bug: v8:10454 Change-Id: I3bc57080827efe38095a4bb1d02a53518727056a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2454077 Auto-Submit: Dan Elphick <delphick@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#70383}
-
Milad Fa authored
Change-Id: I14bac71f1b80de6e92b729b369aa4871f9af5bb2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2453453 Commit-Queue: Milad Fa <mfarazma@redhat.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#70382}
-
Sami Kyostila authored
This patch removes use of the deprecated sources_assignment_filter GN feature from gni/proto_library.gni, since the extra descriptor files are no longer being generated. We also roll Perfetto to match the version used in Chrome and update test expectations accordingly. Bug: v8:10995 Change-Id: I65cb3b79feb6e5a7e5c8d99fdb8bf999a6048539 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2454079 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Sami Kyöstilä <skyostil@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#70381}
-
Camillo Bruni authored
- Update file list in andrdoid-sync.sh - Update testcase.py module resources regexp to handle more import cases Bug: v8:10668 Change-Id: I801464336b9a149ca1393d120c3332e5dc1f6345 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2442612Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#70380}
-
Jakob Kummerow authored
This is a "minimal" change to achieve the required goal: seeing that there is only one place where we need to indicate that memory should be reserved with MAP_JIT, we can add a value to the Permissions enum instead of adding a second, orthogonal parameter. That way we avoid changing public API functions, which makes this CL easier to undo once we have platform-independent w^x in Wasm. Bug: chromium:1117591 Change-Id: I6333d69ab29d5900c689f08dcc892a5f1c1159b8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2435365 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70379}
-
Victor Gomes authored
Change-Id: I9d226483a7f8cd82ef42eba56d9a069b16d622fc Bug: chromium:1133701 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2449978 Commit-Queue: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#70378}
-
Santiago Aboy Solanes authored
In a previous CL (crrev.com/c/v8/v8/+/2424130/17/src/objects/map.h) I moved it to public to use the parent macro. Move it back to private since it does not need to be public. Bug: v8:7790 Change-Id: I5fd78a8fcef2bd454585b6dc428c1b1d2bb62422 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2454715 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#70377}
-
Jakob Gruber authored
This reverts commit 16cd5995. Reason for revert: Can't be landed without also implementing generic lowering, see https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20-%20fyi/18261. Original change's description: > [nci] Prepare JSForInPrepare and JSForInNext for feedback input > > These two operators are still missing feedback collection in generic > lowering (reminder: all operations that collect FB in the interpreter > must also collect FB in generic lowering). > > This CL prepares for that by adding the feedback vector as an input, > and additionally adds node wrappers to improve useability. > > The actual collection logic will be added in a following CL. > > Bug: v8:8888 > Change-Id: I04627eedb2dc237dc4e417091c44d2a95bd98f5f > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2454712 > Commit-Queue: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Cr-Commit-Position: refs/heads/master@{#70372} TBR=jgruber@chromium.org,leszeks@chromium.org,tebbi@chromium.org Change-Id: Ibff2bf44eb04bebd982b019b4539275db75c611a No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8888 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2454078Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#70376}
-
Omer Katz authored
This CL aligns the library implementation with the blink implementation: (*) Concurrent marking increases job priority if no concurrent progress is made in the last 50% of the expected marking duration. (*) Concurrent sweeping increases job priority when calling FinishIfRunning (the library equivalent of blink's CompleteSweep). Bug: chromium:1056170 Change-Id: Ice275cb90a7dd76bf4125f4338d9d80e5f576c58 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2431572 Commit-Queue: Omer Katz <omerkatz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#70375}
-
Ross McIlroy authored
Adds support for avoiding spills in non-deferred blocks by instead restricting the spill ranges to deferred blocks if the virtual register is only spilled in deferred blocks. It does this by tracking registers that reach the exit point of deferred blocks and spilling them them pre-emptively in the deferred block while treating them as committed from the point of view of the non-deferred blocks. We also now track whether virtual registers need to be spilled at their SSA definition point (where they are output by an instruction), or can instead be spilled at the entry to deferred blocks for use as spill slots within those deferred blocks. In both cases, the tracking of these deferred spills is kept as a pending operation until the allocator confirms that adding these spills will avoid spills in the non-deferred pathways, to avoid adding unnecessary extra spills in deferred blocks. BUG=v8:9684 Change-Id: Ib151e795567f0e4e7f95538415a8cc117d235b64 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2440603 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#70374}
-
Jakob Gruber authored
This removes a DCHECK that is no longer valid now that NCI jobs can also be spawned by OSR requests. Bug: v8:8888 Change-Id: I84eed41b510cc9c3ab1b35abfda0b6bec88752dd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2454714 Auto-Submit: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#70373}
-
Jakob Gruber authored
These two operators are still missing feedback collection in generic lowering (reminder: all operations that collect FB in the interpreter must also collect FB in generic lowering). This CL prepares for that by adding the feedback vector as an input, and additionally adds node wrappers to improve useability. The actual collection logic will be added in a following CL. Bug: v8:8888 Change-Id: I04627eedb2dc237dc4e417091c44d2a95bd98f5f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2454712 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#70372}
-
Michael Lippautz authored
Bug: v8:10956 Change-Id: Iab17e3f0163aa81cfb978d72e0f0cd9b15c14743 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2454716Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#70371}
-
Martin Bidlingmaier authored
No surprises; very much based on interrupt handling in the irregexp interpreter. Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng Bug: v8:10765 Change-Id: I2353cac4639a494362b8dfdf9507985fb6298c0e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2452710Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Martin Bidlingmaier <mbid@google.com> Cr-Commit-Position: refs/heads/master@{#70370}
-
Camillo Bruni authored
Allocating in the right spot leaves the Module in an invalid state. Do allocations before resetting a module. Drive-by-fix: make module verification check failures easier to debug. Bug: v8:10985 Change-Id: I6fc32c96441958755bfb32b3004e1bb616dc7d98 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2452533Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#70369}
-