- 17 Dec, 2020 4 commits
-
-
Zhi An Ng authored
We can have more optimizations for this instruction, they leave some junk in the top lanes of dst, but that doesn't matter: - when lane is 1: we use movshdup, this is 4 bytes long - when lane is 2: use movhlps, this is 3 bytes long - otherwise use shufps (4 bytes) or pshufd (5 bytes) All of which are better than insertps (6 bytes). Change-Id: I0e524431d1832e297e8c8bb418d42382d93fa691 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2591850 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#71813}
-
Zhi An Ng authored
Bug: v8:11262 Change-Id: Iefe32dbf20e4c511a3f1d56ce7dc53c2bc2da112 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2589066Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71812}
-
Zhi An Ng authored
Use Movaps so that when AVX is supported we get vmovaps, this avoids mixing SSE and AVX code. Change-Id: Icbcefa42bd368bed1a30f5f790ea6c5cea564e26 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2591856Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71811}
-
Jakob Kummerow authored
This reverts commit a3ce2f6d. Reason for revert: speculative revert due to waterfall unhappiness (looks like bot weirdness though?) Original change's description: > [wasm-gc] Liftoff support part 5: i31 > > This implements support for i31.get_s and i31.get_u. > > Bug: v8:7748 > Change-Id: Icbfddbc2ff46b4eb6bf3edf7b3a794f9797361d4 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2595309 > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71808} TBR=jkummerow@chromium.org,clemensb@chromium.org Change-Id: I5050f16fdaf355d178935f523a9bec516302d2a1 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7748 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2596337Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#71810}
-
- 16 Dec, 2020 35 commits
-
-
Milad Fa authored
Port 7bdb0fbb Original Commit Message: This is a reland of b2a611d8 Original change's description: > [Turboprop] Move dynamic check maps immediate args to deopt exit. > > Rather than loading the immediate arguments required by the > dynamic check maps builtin into registers in the fast-path, > instead insert them into the instruction stream in the deopt > exit and have the builtin load them into registers itself. > > BUG=v8:10582 > > Change-Id: I66716570b408501374eed8f5e6432df64c6deb7c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2589736 > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71790} R=rmcilroy@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I83fc0f3e3ebcf19ca4303e50aae94d7b353cd0ac Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2595708Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#71809}
-
Jakob Kummerow authored
This implements support for i31.get_s and i31.get_u. Bug: v8:7748 Change-Id: Icbfddbc2ff46b4eb6bf3edf7b3a794f9797361d4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2595309 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#71808}
-
Milad Fa authored
Port 3dffdf03 Original Commit Message: This adds support for the following instructions: ref.eq, array.new_with_rtt, array.new_default_with_rtt, array.get, array.set, array.len. R=jkummerow@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I5e517967648251f9babbabe4dc9148a5432aa58e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2595927Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#71807}
-
Shu-yu Guo authored
This reverts commit dc369749. Reason for revert: nosse variant failures: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux%20-%20debug/33279/overview Original change's description: > [wasm-gc] Liftoff support part 4: subtyping > > This adds support for the following instructions: > struct.new_default, rtt.sub, ref.test, ref.cast > > Bug: v8:7748 > Change-Id: I7423ddd7a83c80cb1e82c620780c27bec59ec762 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593341 > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71805} TBR=jkummerow@chromium.org,clemensb@chromium.org Change-Id: I06bb493852223aecf221c9149bc7b034b1fb13ad No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7748 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2596497Reviewed-by: Shu-yu Guo <syg@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#71806}
-
Jakob Kummerow authored
This adds support for the following instructions: struct.new_default, rtt.sub, ref.test, ref.cast Bug: v8:7748 Change-Id: I7423ddd7a83c80cb1e82c620780c27bec59ec762 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593341 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#71805}
-
Ross McIlroy authored
Concurrent inlining is enabled for TurboProp compiles, but we don't enable the --concurrent-inlining flag so don't also set the implied turbo_direct_heap_access flag. This CL fixes this. BUG=v8:9684 Change-Id: I298febdf7c466385047f420d4c33ca0162778210 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593344 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Auto-Submit: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#71804}
-
Ross McIlroy authored
This is a reland of b2a611d8 Original change's description: > [Turboprop] Move dynamic check maps immediate args to deopt exit. > > Rather than loading the immediate arguments required by the > dynamic check maps builtin into registers in the fast-path, > instead insert them into the instruction stream in the deopt > exit and have the builtin load them into registers itself. > > BUG=v8:10582 > > Change-Id: I66716570b408501374eed8f5e6432df64c6deb7c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2589736 > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71790} TBR=tebbi@chromium.org,gsathya@chromium.org Bug: v8:10582 Change-Id: Ieda0295ee135bff983c67c3f04bb47115f0a2739 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2595311Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#71803}
-
Sathya Gunasekaran authored
Instead of looking up the specific maps in every native context, just check against the instance type. Bug: v8:11256 Change-Id: Ib50d599c014c95b03ba3260014dfcbd9ec82982c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593337Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#71802}
-
Milad Fa authored
Port 6b3994e8 Original Commit Message: CallRecordWriteStub is used in a background compile thread for JS-to-Wasm wrapper compilation, so it should avoid accessing the isolate. Call the builtin using CallBuiltin which does not require a Handle<Code> object and instead gets the call target directly from the embedded data. R=thibaudm@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Ibf3cb676b15d3ab946c673e38c454c8050ff1435 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2595292Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#71801}
-
Victor Gomes authored
Change-Id: I49fad3cef572a1f5b3d01d8245335622cbb4be0b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2594778 Commit-Queue: Victor Gomes <victorgomes@chromium.org> Auto-Submit: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#71800}
-
Sathya Gunasekaran authored
Previously, we were looking up the prototype of the receiver and checking that against %TypedArrayPrototype% before invalidating the protector cell. This is incorrect as it's possible to patch the prototype and then change the constructor property, bypassing this check. This CL adds a new instance type to prototype of all TypedArray constructors and checks the receiver against this instance type. TBR: tebbi@chromium.org Bug: v8:11274, v8:11256 Change-Id: I2ff6280e4cf820b06c5593fe4addd36f7ac656c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2594776 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#71799}
-
Manos Koukoutos authored
LoopExitValue nodes can be used as inputs to Phis in loop optimizations. To do this, we need to know the machine representation that needs to be passed to the new Phi node. This CL adds a MachineRepresentation argument to LoopExitValue nodes, as well as a helper to extract it. Since the MachineRepresentation is not used by JS compilation, nodes generated during JS compilation are passed kTagged as a default value. Change-Id: I925f382d5e6988d8fad3de7a6db231e871d6ed36 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2578983 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Georg Neis (ooo until January 5) <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#71798}
-
Peter Marshall authored
There is a race in the way we handle deopts that made this test flaky. The race is not hugely important to fix, and is difficult without breaking something else. The best thing to do here is update the test to reflect reality so we can get the test coverage back. This updates the test so that the deopt reason can be found either on the first or second level function. The test assumed it would always be available on the second level function in the profile, but if we get a regular profile tick at the exact wrong time, we could end up with the deopt info getting attached to the first level function. So we accept either. Bug: v8:5193 Change-Id: Ia43880ebafd1341a514b3143dc215514b5dccf15 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2594775Reviewed-by: Simon Zünd <szuend@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#71797}
-
Jakob Kummerow authored
This adds support for the following instructions: ref.eq, array.new_with_rtt, array.new_default_with_rtt, array.get, array.set, array.len. Bug: v8:7748 Change-Id: I93c4a6676acc8b0ac035dd50762be6a1cc545a57 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593340 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#71796}
-
Pierre Langlois authored
JS script names in debug info entries need to be null-terminated, the terminator included in the length. However, SeqOneByteString's GetChars returns raw pointer that's not null terminated. Bug: chromium:1159164 Change-Id: Id00f72dc831fa1ae48a458a1d4476ada4730be54 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593345Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#71795}
-
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: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#71794}
-
Clemens Backes authored
This reverts commit b2a611d8. Reason for revert: Several failures on https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20CFI/3743/overview Original change's description: > [Turboprop] Move dynamic check maps immediate args to deopt exit. > > Rather than loading the immediate arguments required by the > dynamic check maps builtin into registers in the fast-path, > instead insert them into the instruction stream in the deopt > exit and have the builtin load them into registers itself. > > BUG=v8:10582 > > Change-Id: I66716570b408501374eed8f5e6432df64c6deb7c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2589736 > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71790} TBR=rmcilroy@chromium.org,gsathya@chromium.org,tebbi@chromium.org Change-Id: I4c56bee156ffcea8de0aeaff9ac1bf03e03134c9 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10582 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2595308Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#71793}
-
Jakob Kummerow authored
This is useful in particular as preparation for calling this builtin from Liftoff code (where we don't have access to a Context). Bug: v8:7748 Change-Id: Ie1a10a0487a99a1e6b75693da1554d7af28e7924 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593256Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Auto-Submit: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#71792}
-
Sathya Gunasekaran authored
In the future, these instance types will be used for fast range checks rather than the current slow individual map checks. Bug: v8:11256 Change-Id: I4ad7d5259fbd46c3272a80996a5ac45a400d1f5e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2590040 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#71791}
-
Ross McIlroy authored
Rather than loading the immediate arguments required by the dynamic check maps builtin into registers in the fast-path, instead insert them into the instruction stream in the deopt exit and have the builtin load them into registers itself. BUG=v8:10582 Change-Id: I66716570b408501374eed8f5e6432df64c6deb7c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2589736 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#71790}
-
Milad Fa authored
Change-Id: I1109da446b53179b366a30db3ddc1cd1973d0d28 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593647Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#71789}
-
Dominik Inführ authored
Test creates out-of-memory condition. Running that test in the stress_concurrent_allocation variant might lead to "ineffective GCs" failure before going OOM. Simply do not run this test for that variant. Bug: v8:11272 Change-Id: I114686ec345f7a38f871347b62983d7591dc6ba3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2594769 Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#71788}
-
Zhi An Ng authored
f64x2.extract_lane can only extract lane 0 or 1. Fix the DCHECK to check for the appropriate lane values. Change-Id: I62d5e34ce01e0fa66609fb1fed7979bf2782bb74 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2589057Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71787}
-
Andreas Haas authored
Registers are spilled differently on arm and intel platforms. Additionally, on arm64 registers are spilled with padding. Therefore the code for safepoint information for spilled registers is platform- dependent now. Additionally the alignment of the frame size is done before the out-of-line code now, so that the safepoint indices can be calculated correctly for spilled registers in out-of-line code. Finally, some code was unimplemented on ia32 and arm, which I added now. R=thibaudm@chromium.org Bug: v8:7581, v8:10929 Change-Id: Ia9b824dfc74cafa9ec3cc0d308fb18b485afd715 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2584952 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#71786}
-
Thibaud Michaud authored
CallRecordWriteStub is used in a background compile thread for JS-to-Wasm wrapper compilation, so it should avoid accessing the isolate. Call the builtin using CallBuiltin which does not require a Handle<Code> object and instead gets the call target directly from the embedded data. R=clemensb@chromium.org Bug: chromium:1146813 Change-Id: I4ee59084e4184f2e9039208e4e6db43482cefde6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593333Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#71785}
-
Clemens Backes authored
Neither Liftoff nor the WasmGraphBuildingInterface use the parameter, hence drop it. R=jkummerow@chromium.org Change-Id: Ia7f2b81dfc95f31c27e12d4ada07c5603a34abff Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593335 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#71784}
-
Almothana Athamneh authored
Bug: v8:11264 Change-Id: I9e1302a499ba6b32e9d93d81e922c9f318c2ba07 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593252Reviewed-by: Liviu Rau <liviurau@chromium.org> Commit-Queue: Almothana Athamneh <almuthanna@chromium.org> Cr-Commit-Position: refs/heads/master@{#71783}
-
Clemens Backes authored
We were storing the pointer to the WasmModule both as a shared_ptr and as a raw pointer. Maybe this had historical reasons, but now it's just redundant. R=thibaudm@chromium.org Change-Id: Id72d102b6df804f93e3ab0235eeceef91a6dd8fb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593334Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#71782}
-
Clemens Backes authored
This moves some fields and methods from the WasmRunner template to the WasmRunnerBase base class. This avoids repeated compilation for the different instantiations of the WasmRunner template. Additional changes: - SetUpTrapCallback, SetThreadInWasmFlag, and ClearThreadInWasmFlag are static now. - CheckUsedExecutionTier is unused, and did not even compile any more. In the template class this was OK, because it's only compiled on first use. R=thibaudm@chromium.org Change-Id: I485729cf4a1fd93fe6abb0be269694f0179fc4ea Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593331Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#71781}
-
Jakob Kummerow authored
Recent versions of clangd put lots of stuff into .cache, cluttering `git status` output. No-Try: true Change-Id: I0b5d78a8b2813bd11ad1f0d32bc8ea314103fe19 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593255Reviewed-by: Tamer Tas <tmrts@chromium.org> Commit-Queue: Tamer Tas <tmrts@chromium.org> Auto-Submit: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#71780}
-
Michael Achenbach authored
Change-Id: Ib4d7e86ab38669443f52c02e6e7c16ab28496238 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593343Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#71779}
-
Michael Achenbach authored
Change-Id: I97405198ab40fe15dc6989707ca3a774edd3e838 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593342Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#71778}
-
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: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#71777}
-
Daniel Clark authored
Implement the HostGetSupportedImportAssertions, whose purpose is to filter the list of import assertions exposed to the embedder to only those assertion with keys that the embedder recognizes. See https://tc39.es/proposal-import-assertions/#sec-hostgetsupportedimportassertions. This change doesn't actually implement it as a callback, but instead passes the supported assertions during creation of the Isolate via CreateParams. This expresses clearly the requirement that the supported assertions must never change for the lifetime of the Isolate. Note that we still need to maintain all assertions in a map while parsing the import assertions clause, because duplicate keys for an unsupported assertion still needs to be detected as a parse error. So, the filtering is done later during SourceTextModuleDescriptor::AstModuleRequest::Serialize. The actual filtering algorithm simply iterates the assertions and the supported assertion keys in a nested loop. There's currently only one assertion in use ("type"), so there should be no reason to get too clever here unless at least several more assertions are generally supported. Bug: v8:10958 Change-Id: I9a2d965e9d452718d0ddfe9dca55b7b4ed963019 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2572173Reviewed-by: Marja Hölttä <marja@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Dan Clark <daniec@microsoft.com> Cr-Commit-Position: refs/heads/master@{#71776}
-
Zhi An Ng authored
The definition of Shufps is wrong, we are incorrectly passing 0 as the immediate in all cases. No tests broke because we only used Shufps for splats, which has imm8 == 0 anyway. Also, it was using movss, which only moves a single 32-bit. Because we were using it only for f32x4 splat, this ended up being enough (imm8 == 0 meant that we only shuffled the low 32-bit). This is fixed to use movaps, which moves the entire 128-bit register. Also tweak the definition of Shufps to take 4 arguments. `vshufps dst, src1, src2, imm8` shuffles src1 and src2 into dst. `shufps dst, src, imm8`, shuffles dst and src into dst. So `Shufps(dst, src, imm8)` is ambiguous in the AVX case, it could be: 1. vshufps(dst, src, src, imm8), or 2. vshufps(dst, dst, src, imm8) 2. is more likely to be the intended behavior, but it introduces a false dependency on the value of dst. With `Shufps(dst, src1, src2, imm8)`, it is clearer what the behavior should be: 1. shufps(dst, src2, imm8) matches the AVX behavior IFF dst == src1. Change-Id: I60dc4ec868023d28d00f2b09d2c53b82a729bc4d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2591849Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71775}
-
- 15 Dec, 2020 1 commit
-
-
Milad Fa authored
Port 5e18ab50 Original Commit Message: This adds support for the following instructions: br_on_null, ref.as_non_null, br_on_cast, i31.new R=jkummerow@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Ia234f2749e401feeaf68e6b7f0b1ba2403eaa77d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2593648Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#71774}
-