- 11 Aug, 2022 16 commits
-
-
Jakob Linke authored
There's no need to decode the tiering state in generated code - merge these runtime functions and decode in the new generic CompileOptimized runtime function instead. CompileMaglev_Synchronized CompileMaglev_Concurrent CompileTurbofan_Synchronized CompileTurbofan_Concurrent -> CompileOptimized Bug: v8:7700 Change-Id: I36f3964bb5bb72b35f65f454c3ad3db0656c14bd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3825877 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Auto-Submit: Jakob Linke <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#82383}
-
Liviu Rau authored
Bug: v8:13148 Change-Id: Ia1e3b37012297c6e1e4a7647e913b54669600a37 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3824343Reviewed-by: Alexander Schulze <alexschulze@chromium.org> Commit-Queue: Liviu Rau <liviurau@google.com> Cr-Commit-Position: refs/heads/main@{#82382}
-
Darius M authored
StringConstantXXX were introduced when we switched to concurrent compilation, as a way to build strings in Turbofan in a background thread, without having to actually allocate them on the main heap from the background. See https://crrev.com/c/1221807. Now that we have local heaps, we can actually allocate strings from the background, making StringConstantXXX useless. Moreover, we would fold constant string concatenations into ConsString, which sounds a bit dubious for performance. Now, small constant string concatenations will be folded into SeqStrings, while larger ones will remain ConsString, just to avoid the quadratic worst-case. Change-Id: I0479d16aa5691c9d774187c4cc0d03ff4fe2b4f9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3811291Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Darius Mercadier <dmercadier@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#82381}
-
Feng Yu authored
Bug: v8:12781 Change-Id: I2077523dad94bfcc5696e8bc05df496c7f3aa419 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3813072Reviewed-by: Jakob Linke <jgruber@chromium.org> Commit-Queue: Jakob Linke <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#82380}
-
jameslahm authored
This is a reland of commit 532ca599 Fix interger overflow when result_location is invalid in MaglevCompiler::InReturnValues. Original change's description: > [maglev] Support LdaModuleVariable and StaModuleVariable > > Bug: v8:7700 > Change-Id: I036ac71324e0c1c96a4da4aacdb5a6718726db31 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3821203 > Reviewed-by: Victor Gomes <victorgomes@chromium.org> > Commit-Queue: 王澳 <wangao.james@bytedance.com> > Cr-Commit-Position: refs/heads/main@{#82347} Bug: v8:7700 Change-Id: I24f56691eefd1c6cb695fedd3b5c14264bb17943 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3824942Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#82379}
-
Jakob Linke authored
Add tracing for ML compilation begin and end events. Drive-by: Slight refactors of related tracing functions for other tiers. Bug: v8:7700 Change-Id: I8d7633c63642fc6d4418c71d87955cf3bcf1d496 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3825779 Commit-Queue: Jakob Linke <jgruber@chromium.org> Auto-Submit: Jakob Linke <jgruber@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#82378}
-
Simon Zünd authored
The CL https://crrev.com/c/3807594 changed the scope retrieval search to a DFS over the scope tree. This makes it no longer necessary to special case for the `DefaultBaseConstructor` scope so we can delete that code. A separate follow-up will prune the DFS slightly but not as much as we tried to initially. R=kimanh@chromium.org Bug: chromium:1348186 Change-Id: Ia54bd5e301aaeb195953b1384077cd30b6b6ef59 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3825777Reviewed-by: Kim-Anh Tran <kimanh@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/main@{#82377}
-
Jakob Linke authored
.. and allow recompilation attempts in the future. This roughly matches Turbofan behavior, which also aborts and may later recompile. Deps can fail e.g. when the heap state changes concurrently during the compilation process. Bug: v8:7700 Change-Id: I517adcca7ec5a7dff14b7ca7dba766e74564bd01 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3825778 Commit-Queue: Victor Gomes <victorgomes@chromium.org> Auto-Submit: Jakob Linke <jgruber@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#82376}
-
Dominik Inführ authored
This CL adds the shared barrier to the RecordWrite builtin which is used in generated code for builtins, interpreted and optimized code. The out-of-line part of the barrier now checks whether either the POINTERS_TO_HERE_ARE_INTERESTING or the IN_SHARED_HEAP bit is set in the value object's page flags. Outside of marking the RecordWrite builtin now needs to check whether to insert into the generational or shared remembered set. Inserting into the shared remembered set will always call into C++ code. During marking the RecordWrite builtin now also needs to check whether this store created an old-to-shared pointer. Bug: v8:11708 Change-Id: Iaca4c3c0650aece4326936d7d63754a23cd0a028 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3779679Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Jakob Linke <jgruber@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#82375}
-
jiepan authored
Change-Id: Ic81be39ed0666c708f9129bef1e75268afc7faf1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3807123Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Jie Pan <jie.pan@intel.com> Cr-Commit-Position: refs/heads/main@{#82374}
-
Jakob Linke authored
.. to match behavior. According to the old signatures, the functions returned bool (they actually returned CompilationJob::Status). This only worked because return values are unused. Change to void return type instead. Drive-by: Code reuse in FinalizeMaglevCompilationJob. Bug: v8:7700 Change-Id: I45f75121c230063dec96a5197cc9fdc3b64aae6f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3822683Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Jakob Linke <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#82373}
-
Simon Zünd authored
We have a bug report from 2018 that no longer reproduces on ToT. This CL adds a regression bug regardless to make sure we don't re-introduce the bug that got fixed as a side-effect. R=kimanh@chromium.org Fixed: chromium:1246896 Change-Id: I8f9fdcbf7051b23e03cbbfc572771a410f70ad37 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3822668Reviewed-by: Kim-Anh Tran <kimanh@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/main@{#82372}
-
Liviu Rau authored
- Unify old Pool interface with the new context related interface - Add single threaded execution pool - Defer task killing back to OS context - Defer process listing in indicators back to OS context Bug: v8:12785 Cq-Include-Trybots: luci.v8.try:v8_numfuzz_dbg_ng,v8_numfuzz_ng,v8_numfuzz_tsan_ng,v8_android_arm64_n5x_rel_ng Change-Id: I8ffe01c5d567411203f69ecc451c718ff35d81c9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3781347Reviewed-by: Alexander Schulze <alexschulze@chromium.org> Commit-Queue: Liviu Rau <liviurau@google.com> Cr-Commit-Position: refs/heads/main@{#82371}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/93068bf..9497cae Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/b11e87a..11459ac R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I2650d015cf87ae06e8e985fa9ddc603daa90c5c0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3824286 Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#82370}
-
v8-ci-autoroll-builder authored
Rolling v8/buildtools/linux64: git_revision:3d773bba0927e67eae8fdaee5e28b0f6203d3bee..git_revision:c8c63300ac8ecb66d8126af5407257209ae59044 Rolling v8/buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx/+log/fe1bc75..4d0f32e Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/743fa6c..47666e0 Rolling v8/third_party/fuchsia-sdk/sdk: version:9.20220809.0.1..version:9.20220810.1.1 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I2673b770c93fdc18431dddf7614b041f3ba90963 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3824284 Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#82369}
-
Shu-yu Guo authored
This is a reland of commit b1020a43 Changes since revert: - Fixed global safepoint interrupts in https://chromium-review.googlesource.com/c/v8/v8/+/3820913 Original change's description: > Reland "[shared-struct] Add Atomics.Condition" > > This is a reland of commit e2066ff6 > > Changes since revert: > - Rebased against c9918524, which > uses the external pointer table for the WaiterQueueNode stored > in the state field when compressing pointers. This relaxes > the alignment requirement of the state field to be 4-bytes when > compressing pointers. > - Moved the state field into the JSSynchronizationPrimitive base > class, since alignment and padding can now be made simpler. > > Original change's description: > > [shared-struct] Add Atomics.Condition > > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3630350 > > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> > > Reviewed-by: Adam Klein <adamk@chromium.org> > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3763787 > Reviewed-by: Adam Klein <adamk@chromium.org> > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Bug: v8:12547 Change-Id: Ibc6de74c7853e4ea766ff2c70f92339ba69f2675 Cq-Include-Trybots: luci.v8.try:v8_linux_arm64_rel_ng,v8_linux64_tsan_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820901Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#82368}
-
- 10 Aug, 2022 24 commits
-
-
Frank Tang authored
Split from cl/3822342 Should advance the length of the TimeZone Spec Text: https://tc39.es/proposal-temporal/#prod-CalendarDateTimeTimeRequired Bug: v8:11544 Change-Id: Ic16a16ac41c29cb04136030b2f2c8b78022f8241 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3824879 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#82367}
-
Shu-yu Guo authored
Bug: v8:11708 Change-Id: Iac70ab6701e691b2975856be69892daadd814f70 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820913Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#82366}
-
Omer Katz authored
mark-compact.cc: Iterate over all new space pages. heap-layout-tracer.cc: Iterate over the paged new space. Bug: v8:12612 Change-Id: I4d8dfc48632908a80793a77c211020452c675ecf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3823134Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#82365}
-
Shu-yu Guo authored
Currently a deadlock can result on heap teardown during the shared heap verification which performs a global safepoint. The heap teardown awaits compile tasks, while the compile helper thread is waiting on a global safepoint. Bug: v8:11708 Change-Id: I8328a4b142cb9045bfaf592ac4f4dd259ba0d397 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820354 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#82364}
-
Frank Tang authored
Change to use Handle<Object> instead of Handle<String> for calendar and offset_string. Spec text: https://tc39.es/proposal-temporal/#sec-temporal-torelativetemporalobject Bug: v8:11544 Change-Id: Ia9051f176e0e91a362b0c6b9edf6fea5a53ddcf2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3808256Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/main@{#82363}
-
Milad Fa authored
Port ca33c73e Original Commit Message: .. since these functions will also be used by Maglev codegen. R=jgruber@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Icccc06b76cd61902900b0deecbfe1fbe46202235 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3822670 Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Reviewed-by: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#82362}
-
Camillo authored
This is a reland of commit 5592bad9 - Disable timeout signal handler with --fuzzing - Properly initialize sigaction object Original change's description: > [d8] Dump stack trace on d8 tests timeouts on posix systems > > - Add a SIGTERM handler in d8 that dupms the stack trace > - Send SIGTERM before SIGKILL in the test runner > > Bug: v8:13115 > Change-Id: I75285f33caabab61ff6ae83c1fbc6faf45cf595a > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3791906 > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Commit-Queue: Camillo Bruni <cbruni@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82173} Bug: v8:13115 Change-Id: I115cc3f671ebe11ba204e75a6fc358ca3477e950 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820221Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#82361}
-
Shu-yu Guo authored
This reverts commit 9d36b2dd. Reason for revert: Win64 crashes https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Win64%20-%20debug/43496/overview Original change's description: > [base] Add new API to protect data memory > > This adds a new {base::OS::SetDataReadOnly} method, which is similar to > {SetPermissions(kRead)}, but using another system call on Windows such > that it works on pages in the data segment. > {VirtualAlloc} will fail if called on a page of the data section, > whereas {VirtualProtect} succeeds. For the general {SetPermissions} > API we still want to use {VirtualAlloc} though, as it also changes the "committed" state of the pages. > > Note that we do not add a platform API for this, as the memory was > never allocated through the platform. We just directly protect it in > V8. > > R=mlippautz@chromium.org > > Bug: v8:12887 > Change-Id: If83bf6e5c500cc5cf08c76d04dfac5e2b4d35a2d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820482 > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82349} Bug: v8:12887 Change-Id: I86fffa60d6766dcdaf44f57f18266fec22eb9016 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3824409 Auto-Submit: Shu-yu Guo <syg@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Owners-Override: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#82360}
-
Pierre Langlois authored
The system analyzer relies on server-side processing to symbolize C++ addresses, using lws-middleware.js: ws --stack system-analyzer/lws-middleware.js lws-static cors This does not work on Android however, given the log file refers to the stripped apk file rather than the unstripped libchrome.so binary. This CL adds the --apk-embedded-library option to the middleware script to make this work: ws --stack system-analyzer/lws-middleware.js lws-static cors \ --apk-embedded-library=/path/to/out/android/lib.unstripped/libchrome.so Also, for completeness, add the --target option to set targetRootFS. Bug: v8:10644 Change-Id: I7bb73adf49e3af8eaa88a5e2c81ec913023ac1a9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3823133 Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#82359}
-
Jakob Linke authored
The zone-allocated objects, the destructor is never called. Such objects must therefore never contain members that themselves have non-trivial destructors, e.g. std containers. Fix occurrences of this antipattern in Maglev. Bug: v8:7700 Change-Id: I6892cf5203bb6e842397fd4292918b18134f97cc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3822672 Auto-Submit: Jakob Linke <jgruber@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#82358}
-
Omer Katz authored
PagedNewSpace requires a different way of iterating over new space. This is because we can no longer assume that everything before top is allocated and everything after is free. Bug: v8:12612 Change-Id: Iedd36a6d3dc5019553f58f1ba9f5d06529a7ce9c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3823129 Commit-Queue: Omer Katz <omerkatz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#82357}
-
Adam Klein authored
This reverts commit 532ca599. Reason for revert: UBSan failures (integer overflow): https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux64%20UBSan/22615/overview Original change's description: > [maglev] Support LdaModuleVariable and StaModuleVariable > > Bug: v8:7700 > Change-Id: I036ac71324e0c1c96a4da4aacdb5a6718726db31 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3821203 > Reviewed-by: Victor Gomes <victorgomes@chromium.org> > Commit-Queue: 王澳 <wangao.james@bytedance.com> > Cr-Commit-Position: refs/heads/main@{#82347} Bug: v8:7700 Change-Id: Iedbcb80a2ec41f299105bb814650ec4eff30db0d No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3824718 Auto-Submit: Adam Klein <adamk@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/main@{#82356}
-
jameslahm authored
... intrinsic. This CL also adds stack arguments support in CallBuiltin. Bug: v8:7700 Change-Id: I59d900414585f724c48f1557ba606f5b61cfb6da Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3813073Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#82355}
-
Omer Katz authored
Bug: v8:12612 Change-Id: Ibd20ba65e81b86239e254b945c4c6c9c6137b714 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3822687 Commit-Queue: Omer Katz <omerkatz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#82354}
-
Lu Yahan authored
Port commit 00746406 Change-Id: I9bd985b882ca2e39b24131bd6e0609920b826398 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3823859Reviewed-by: ji qiu <qiuji@iscas.ac.cn> Auto-Submit: Yahan Lu <yahan@iscas.ac.cn> Commit-Queue: ji qiu <qiuji@iscas.ac.cn> Cr-Commit-Position: refs/heads/main@{#82353}
-
ishell@chromium.org authored
... which will be necessary once builtins become Code-less. Bug: v8:11880 Change-Id: If48739c3a058e6baf3c2e062d8eaace062c27592 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3822686Reviewed-by: Jakob Linke <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#82352}
-
Jakob Linke authored
ML-TF tiering remains very similar to Ignition-TF tiering: - When the interrupt budget is exhausted, enter the TieringManager which potentially decides to tier up and sets the appropriate TieringState on the FeedbackVector. - The prologue on ML function entry recognizes the TieringState (and also available cached TF code) and starts compilation and/or jumps into optimized code. TODOs: - ML-to-TF OSR is not yet supported. - ML code is no longer cached on the FeedbackVector. - Tracing is rudimentary. - The generated function-entry prologue is fairly large and must be either minimized or extracted into a builtin. - Tiering involving Sparkplug is not entirely robust yet (Sparkplug code may be installed with unexpected timing). Bug: v8:7700 Change-Id: I86b0692477f51b9967f318a4093bc874344120b3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3629149Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Jakob Linke <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#82351}
-
Camillo authored
- Add explicit --turbo-profiling-output and --turbo-profiling-input - Rename --turbo-profiling-log-file to --turbo-profiling-input - No longer log PGO data to v8.log - Add runtime %GetAndResetTurboProfilingData helper function for more controlled logging within chrome - Rewrite generate.py script to use more python3 Bug: v8:10470 Change-Id: Ib817b5c3793a0a7ae77103075ea2d6f6d0282150 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820381Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#82350}
-
Clemens Backes authored
This adds a new {base::OS::SetDataReadOnly} method, which is similar to {SetPermissions(kRead)}, but using another system call on Windows such that it works on pages in the data segment. {VirtualAlloc} will fail if called on a page of the data section, whereas {VirtualProtect} succeeds. For the general {SetPermissions} API we still want to use {VirtualAlloc} though, as it also changes the "committed" state of the pages. Note that we do not add a platform API for this, as the memory was never allocated through the platform. We just directly protect it in V8. R=mlippautz@chromium.org Bug: v8:12887 Change-Id: If83bf6e5c500cc5cf08c76d04dfac5e2b4d35a2d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820482Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#82349}
-
Clemens Backes authored
This reverts https://crrev.com/c/3778717, and also switches "Promise" to a boolean enum. The underlying clang crash is fixed, see linked issue. R=thibaudm@chromium.org Bug: chromium:1344641 Change-Id: I7fac50eb4f1155aca1c101f01892df78cdde46e2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3823128Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#82348}
-
jameslahm authored
Bug: v8:7700 Change-Id: I036ac71324e0c1c96a4da4aacdb5a6718726db31 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3821203Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#82347}
-
jameslahm authored
Bug: v8:7700 Change-Id: I92596898718a57ea9d8fbd002306aa45a8e9a549 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3821206Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#82346}
-
jameslahm authored
Bug: v8:11525 Change-Id: I69c08f3cc4ee6b391e462a5d49de750f34bbc8cf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3815487Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#82345}
-
Milad Fa authored
Port c3ca8158 Original Commit Message: In release builds, FLAG_debug_code is statically false. Without LTO, this information is not available to callers of the various Assert functions though. This CL defines the methods as empty if V8_ENABLE_DEBUG_CODE is not set. This removes some calls from non-LTO builds, and might even slightly improve LTO builds if we enable more optimizations earlier in the pipeline. R=clemensb@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I5c82eed38db6a2f49e833410554231bc61518b18 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820068Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#82344}
-