- 09 Oct, 2020 12 commits
-
-
Ross McIlroy authored
BUG=v8:9684 Change-Id: I064b552b021597a80e57303cab3c2fbf552be6a2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2463228 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#70427}
-
Clemens Backes authored
Always install the Abort builtin first, because heap validation might get triggered while we compile the wasm-to-js wrapper, and it would find an illegal WasmJSFunctionData object otherwise. TBR=manoskouk@chromium.org Bug: v8:9495 Change-Id: I959eb3b6e9944db8b7ad7ecd0a51eefdab98c751 No-Tree-Checks: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2463230Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70426}
-
Ulan Degenbaev authored
Since GC can now happen during deserialization, object fields may contain the Smi sentinel value instead of pointers. This adds the required guards to methods of NativeContextInferrer Bug: chromium:1136801 Change-Id: I7338f31bf6ee34b8dee8431b8250d2cc2978e0c2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461241 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#70425}
-
Ulan Degenbaev authored
This fixes a GCC compile error Tbr: mlippautz@chromium.org Change-Id: Ia6239894c86c3131ab501128192177f30ef09d59 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461744Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#70424}
-
Marja Hölttä authored
(Thanks jbroman@ for the strawperson fix.) Bug: chromium:1136800 Change-Id: I4aee55ef40069b460f59ef5b7ba7fc50ab7033cd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2463225 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#70423}
-
Mythri A authored
HandleBase::is_identical_to() is_identical_to in handle base is used to do the exact comparison by just comparing the locations. When the locations are different the values are compared. For Smis it compares 64 bits which might lead to incorrect behaviour. Smis loaded as a TaggedField has the root address added. It is expexted that we don't use higher order bits on Smi. Hence, is_identical_to shouldn't use these bits when comparing Smis. This cl fixes it by comparing the objects created from the given location. That takes care of correctly comparing the required bits. Change-Id: I574dfbea4c1fffc7a9e3a6a10ad7631d40c518ce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461743 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#70422}
-
Manos Koukoutos authored
Changes: - Add wasm-to-js wrapper field to WasmJSFunction. A WasmJSFunction might be called with call_ref without being imported to a module, and this provides a call target for this scenario. The wrapper is only compiled if --experimental-wasm-typed-funcref is set. - Add CompileWasmToJSWrapper in wasm-compiler. - Rename BuildLoadFunctionDataFromExportedFunction -> BuildLoadFunctionDataFromJSFunction to reflect its wider usage. - Rename BuildWasmImportCallWrapper -> BuildWasmToJsWrapper to reflect this function is now also used by CompileWasmToJSWrapper (unrelated to imports). - (Drive-by) Remove dead arguments from wasm-module-builder.js. Bug: v8:9495 Change-Id: I23468b69d42310cb8e96da5286ce68c701188876 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2459371Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#70421}
-
Camillo Bruni authored
Return undefined instead of hard-crashing. Bug: chromium:1130213 Change-Id: I7e573f46607fc0e7b91db62d881b4209b919028e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2456087 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#70420}
-
Michael Lippautz authored
Bug: chromium:1056170 Change-Id: I3320a0b8c740067ea1e424c37ae8db4e87753c1a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461738 Auto-Submit: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Anton Bikineev <bikineev@chromium.org> Reviewed-by: Anton Bikineev <bikineev@chromium.org> Cr-Commit-Position: refs/heads/master@{#70419}
-
Etienne Pierre-doray authored
This is a reland of 84eec6e9 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} Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng Change-Id: Ic989b64f130a00ce52228cdd2f57f4c1ade354f2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2458147 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70418}
-
Ulan Degenbaev authored
The assertion states that compilation of an empty script does not add new pages. This doesn't not necessarily hold if the existing pages are almost full. Bug: v8:10988 Change-Id: I71735e6736fb94e1ccde7f6430a2c4b0d48c43f3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461728Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#70417}
-
Etienne Pierre-doray authored
This is a reland of 4848de2a Issue 1136405: non empty ephemeron list after FinishConcurrentMarking Fix: COMPLETE_TASKS_FOR_TESTING Join()s instead of Cancel() Issue: Failing TSAN failures Fix: Safe to reland after https://chromium-review.googlesource.com/c/v8/v8/+/2461726 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} Bug: chromium:1136405 Change-Id: I511c3d1747ef79ed6e7066c9a5bba052f9d4cd37 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2458246 Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#70416}
-
- 08 Oct, 2020 22 commits
-
-
Ng Zhi An authored
Missed this earlier when it was merged into the proposal. f32x4 and f64x2 ceil, floor, trunc, nearestint. Also enable cctests. Bug: v8:10507,v8:10906 Change-Id: I2de00e615cd63d81303649774db2a2ab800f6f72 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461451Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70415}
-
Anton Bikineev authored
Bug: chromium:1056170 Change-Id: If4d4d08b4a50312b7a3cd1d11bb2cccc2272c96b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461733Reviewed-by: Omer Katz <omerkatz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Anton Bikineev <bikineev@chromium.org> Cr-Commit-Position: refs/heads/master@{#70414}
-
Omer Katz authored
The TraceTrait for JSMember is currently missing GetTraceDescriptor. We missed it because we don't have proper tests for JSMember, but it would fail to build if it was ever actually traced. Bug: chromium:1056170 Change-Id: I45fd2c7c666e791f866813f762b488958f65f3cf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2460815Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/master@{#70413}
-
Omer Katz authored
Bug: chromium:1056170 Change-Id: I4214978f31ae754e4940dfca4182ada202d17c01 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2456688Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Anton Bikineev <bikineev@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/master@{#70412}
-
Leszek Swirski authored
Create a HandleScope when serializing an object's contents, to reduce the number of live handles during serialization. There's only a couple of cases where these handles have to outlive the serialized contents, and for these cases we introduce GlobalHandleVector or similar manual strong root mechanisms. In particular, backrefs don't actually need to exist as a handle vector (the object addresses are already referred to by the reference map's IdentityMap), except for DCHECKs, so this becomes a DEBUG-only global handle vector. To support this manual strong-rooting, the HotObjectList is split up into a strong-rooted find-only class in Serializer, and a Handle vector in Deserializer. Bug: chromium:1075999 Change-Id: I586eeeb543e3f6c934c168961b068f2c34e72456 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2449980Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#70411}
-
Camillo Bruni authored
This simplification helps with correctness fuzzers where Promises created during error printing are flakily handled. We might skip over certain rejected Promises that were created after finishing running the script. This seems to be a reasonable compromise in helping debugging scripts with unhandled rejections in d8. Bug: chromium:1126309 Change-Id: Ia87c80cfd390bf8c6a724dc2f0e9e5fd1599e332 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2460814Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#70410}
-
Maya Lekova authored
With this CL, fast API calls reuse the same stack slot they are using for the {fallback} parameter. This relies on the fact that the fast calls are non-reentrant, due to their inability to call into JavaScript. Bug: chromium:1052746 Change-Id: I2c56fcbe425023244a566bb39439e8e04072f316 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461729 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#70409}
-
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 6 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}
-