- 19 Sep, 2019 4 commits
-
-
Clemens Hammacher authored
If predictable compilation is requested (via --predictable, --single-threaded, or --wasm-num-compilation-tasks=0), do compile and commit one function at a time. This makes function allocation independent of the timing. R=ahaas@chromium.org Bug: v8:9751, v8:9752 Change-Id: I451a436800c19574caa5e03901bd900d80e53eee Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809371Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#63884}
-
Ulan Degenbaev authored
This adds an additional V8 API to get the backing store of an array buffer. Unlike the existing API, the backing store comes wrapped in a std::shared_ptr, making lifetime management with the embedder explicit. This obviates the need for the old GetContents() and Externalize() APIs, which will be deprecated in a future CL. Contributed by titzer@chromium.org Bug: v8:9380 Change-Id: I8a87f5dc141dab684693fe536b636e33f6e45173 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807354Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#63883}
-
Santiago Aboy Solanes authored
The promise file is too big so I am splitting it in several CLs. TNodified: * AllocatePromiseReaction * AllocatePromiseReactionJobTask * AllocatePromiseResolveThenableJobTask * CreatePromiseResolvingFunctions * CreatePromiseResolvingFunctionsContext * CreatePromiseContext This CL introduces some CASTs that will be deleted once the file is TNodified in full. Bug: v8:6949 Change-Id: Ia3006faa5e9fd0e6fa3c58511772857910326532 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809360 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#63882}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/aae0a7b..050608e Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/b4e53c4..2ad5356 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/6f9a023..c6be56e Rolling v8/third_party/icu: https://chromium.googlesource.com/chromium/deps/icu/+log/faee8bc..2ecd66c TBR=machenbach@chromium.org,tmrts@chromium.org Change-Id: I2f313f6893d13af4a2e8a351948a8df00a9bc3c3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1811148Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#63881}
-
- 18 Sep, 2019 25 commits
-
-
Irina Yatsenko authored
Added tests for the scenario when the fillers would be evacuated within the new space and when they would be promoted into the old space. The fix is to treat the deferred handles the same as the local ones: call FixStaleLeftTrimmedHandlesVisitor for them. Bug: v8:9739 Change-Id: Idac233716295f53793657164561bb81f8f729065 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809815 Commit-Queue: Irina Yatsenko <irinayat@microsoft.com> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#63880}
-
Ng Zhi An authored
Change-Id: Icb6a95efd042b116cb495d8bbee1d7261c4f1a05 Bug: v8:9643 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1706128 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#63879}
-
Ng Zhi An authored
Quasi Fused Multiply-Add and Quasi Fused Multiply-Subtract performs, on floats, a + b * c and a - b * c respectively. When there is only a single rounding, it is a fused operation. Quasi in this case means that the result can either be fused or not fused (two roundings), depending on hardware support. It is tricky to write the test because we need to calculate the expected value, and there is no easy way to express fused or unfused operation in C++, i.e. we cannot confirm that float expected = a + b * c will perform a fused or unfused operation (unless we use intrinsics). Thus in the test we have a list of simple checks, plus interesting values that we know will produce different results depending on whether it was fused or not. The difference between 32x4 and 64x2 qfma/qfms is the type, and also the values of b and c that will cause an overflow, and thus the intermediate rounding will affect the final result. The same array can be copy pasted for both types, but with a bit of templating we can avoid that duplication. Change-Id: I0973a3d28468d25f310b593c72f21bff54d809a7 Bug: v8:9415 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1779325 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#63878}
-
Ng Zhi An authored
Change-Id: Ib07ad54ef20877597dcf50a995a8f8a8e8dcb1c3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809816Reviewed-by: Martyn Capewell <martyn.capewell@arm.com> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#63877}
-
Benedikt Meurer authored
Disabling the RegExp compilation cache comes with performance implications, and it doesn't seem to be necessary for debugging. Bug: chromium:992277 Change-Id: I24841f4814bcacb18a3968c37490f201c0c1ccac Cq-Include-Trybots: luci.chromium.try:linux-rel,win7-rel Cq-Include-Trybots: luci.v8.try:v8_linux_gc_stress_dbg,v8_linux64_gc_stress_custom_snapshot_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1805637 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#63876}
-
Milad Farazmand authored
WASM only supports Little-endian byte ordering and we need a mechanism to reverse the ordering efficiently on Big-endian machines. Up until now this was done using TF graphs within wasm-compiler. The new approach allows for having more machine level optimizations by introducing the new "kSimd128ReverseBytes" opcode which gets executed only on Big-endian machines. Change-Id: I63c6c3c42ca9ff9d9b2af2d45070a70cf1b3cefc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803494Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#63875}
-
Igor Sheludko authored
On-heap typed arrays contain HeapObject value in |base_pointer| field and an offset in |external_pointer| field. When pointer compression is enabled we want to combine decompression with the offset addition. In order to do that we add an isolate root to the external_pointer value and therefore the data pointer computation can is a simple addition of a (potentially sign-extended) |base_pointer| loaded as Tagged_t value and an |external_pointer| value. Bug: v8:9706 Change-Id: Id5c546c353c81fb25e3598921bc78165d10a9c44 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807369Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#63874}
-
Dominik Inführ authored
We see crashes in the wild, however the minidump does not contain enough information for properly investigating this. This is temporary code that should be deleted as soon as possible. Bug: chromium:1004365 Change-Id: I25e119d891e03f980d63f5d559fcb4429b574cb1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809373 Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#63873}
-
Mike Stanton authored
The serialization step in the pipeline gets an initial zone, and thus far, it's allocated all of it's hinting information in that zone. However, much of this comes from stepping into calls and walking the bytecode of the called function. Once we finished recursing into a call, we should be able to throw all those hints away -- they've served their purpose, and the "output" of their work is a set of new objects made visible to the broker. Therefore, we should create and destroy a child zone. On a run of typescript, this reduces absolute max (high water mark) allocation of the serialization phase from 10 MB to 5 MB. Bug: v8:7790 Change-Id: Icbb35abed28b1a924328541df82be23594152a8f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800570Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#63872}
-
Toon Verwaest authored
This fixes the issue highlighted in https://chromium-review.googlesource.com/c/v8/v8/+/1803236. Change-Id: Iea2d6c4f9585a56d017f2cb1eb8e23b52de1f795 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807356 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#63871}
-
Michael Starzinger authored
This introduces {GetContainingWasmFunction} to replace the above method, since calculating offsets into the wire bytes is independent of the concrete module object and hence only needs the shared decoded module. R=clemensh@chromium.org BUG=v8:6847 Change-Id: I145d527506289686653979dbb135480cc42ea4c8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809369 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#63870}
-
Dan Elphick authored
Bug: v8:6949 Change-Id: I47f6832a01b7090229c80163012f3874d15d831f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809358 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#63869}
-
Jakob Gruber authored
... and do not artificially add at least one dummy.js file. Until this CL we used to ensure the existence of at least one 'extra native' by appending a short dummy.js file if v8_extra_library_files was empty. This file is uselessly compiled and run at startup. This CL removes that mechanism along with a minor tweak to handle an empty natives blob. Bug: v8:9736 Change-Id: I05bf7c54380e77a9105d5c1a1a76983c692faf60 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809372 Auto-Submit: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#63868}
-
Ingvar Stepanyan authored
Separate creating Wasm translations from reporting them to an agent. This is done in order to support multiple connected sessions. Previously connecting more than one agent would fail assertion in debug mode and overwrite translation objects over and over (and potentially do something worse) in release mode. Bug: v8:9725 Change-Id: I13fde5ebf6e64e7268eb6870f9c21ac9a5bed81e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807273Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Ingvar Stepanyan <rreverser@google.com> Cr-Commit-Position: refs/heads/master@{#63867}
-
Simon Zünd authored
During deletion in the write-back phase, we do not necessarly need to check with HasOwnProperty before calling DeleteProperty. Since this is observable behavior when using proxies, we remove the HasOwnProperty check to mirror more closely what Spidermonkey does. R=jgruber@chromium.org Change-Id: I67768b1d8b13e695b956b2fa0624dcb28fd0664d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809366Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#63866}
-
Ross McIlroy authored
BUG=v8:6949,v8:9396,chromium:1004912 Change-Id: Ifa8207283aadad258281bffda6d49da574402a24 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809370 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Auto-Submit: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#63865}
-
Andreas Haas authored
In the mjsunit/wasm/asm-wasm-f32 test, {IsValid} caused 10% of the overall runtime. In absolute numbers, {IsValid} wasm called more than 6.000.000.000 times. I moved the calls to {IsValid} from before-use to after-modification. I removed the calls in {Combine} and {Remove}, because these operations cannot create an invalid CPURegList. These changes reduce the number of calls to {IsValid} to about 100.000.000 in the test mentioned above, and saves for that test about 10 seconds out of before 2 minutes absolute runtime. R=v8-arm-port@googlegroups.com Bug: v8:9396 Change-Id: If3059f471e423405ec6f34ddef89e314dee1cbaf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801851 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Martyn Capewell <martyn.capewell@arm.com> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#63864}
-
Clemens Hammacher authored
This is an unmodified reland of 60624b56. Nosnap bots do not block LKGR any more: https://crbug.com/v8/9737#c10. Original change's description: > Disallow nullptr arguments for {CopyChars} > > This allows to remove special casing for the {count == 0} case, which > was needed because {memmove} does not accept {nullptr} arguments even > if the {count} is zero. > > R=leszeks@chromium.org > > Bug: v8:9396 > Change-Id: Iaef3cdbbffa74c2ba1c4e4501dafd943282cbcd9 > Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807366 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63838} TBR=leszeks@chromium.org Bug: v8:9396 Change-Id: I6ab13575f13df060b450ff105e4b9db516671dcf Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809365Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#63863}
-
Michael Starzinger authored
This introduces {GetWasmFunctionOffset} to replace the above method, since calculating offsets into the wire bytes is independent of the concrete module object and hence only needs the shared decoded module. R=clemensh@chromium.org BUG=v8:6847 Change-Id: I6818de4589e26dd8f69dfb71d15bbca127c7ee3e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809368Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#63862}
-
Santiago Aboy Solanes authored
TNodify related methods in CSA: * TaggedToWord32OrBigInt * TaggedToWord32OrBigIntWithFeedback * TaggedToWord32OrBigIntImpl Remove Sloppy-ness in RelationalComparison Bug: v8:6949 Change-Id: I970a40a424f6e8cdc45544eb79c95291a5a5a608 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807362Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#63861}
-
Michael Starzinger authored
This introduces {DisassembleWasmFunction} to replace the above method, since disassembling a function is independent of the concrete module object and hence can be done for shared decoded modules. R=clemensh@chromium.org BUG=v8:6847 Change-Id: I5abea2a1381a9b8d3717a55d0b2b937dfbbafefd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809359 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#63860}
-
Michael Starzinger authored
This is a first step towards being able to share the same script for multiple {WasmModuleObject} objects. In general it should be possible for the inspector to debug (i.e. disassemble, set breakpoints) multiple modules if they all have the same URL (and the same wire bytes). These are the same conditions under which we can canonicalize the modules to be based on the same underlying {NativeModule} as well. Hence it makes sense to establish a link from {Script} to {NativeModule} in this CL. Subsequent CLs will eventually deprecate the {wasm_module_object} field. R=clemensh@chromium.org BUG=v8:6847 Change-Id: I5cfb617e18d9b06682e6437b2a2146ea5665c1c6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807371 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#63859}
-
Victor Gomes authored
This hopefully fix the regression test from c693e005 Bug: v8:1004766 Change-Id: If3c554070af6b795e4b3f99cd592a62453028874 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809363Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Victor Gomes <victorgomes@google.com> Cr-Commit-Position: refs/heads/master@{#63858}
-
Clemens Hammacher authored
This is an unmodified reland of 9febc505. Nosnap bots do not block LKGR any more: https://crbug.com/v8/9737#c10. Original change's description: > Reland "Remove all custom CopyCharsUnsigned implementations" > > This is a reland of 5d8c4890 > > Original change's description: > > Remove all custom CopyCharsUnsigned implementations > > > > It's unclear whether the custom implementation have any advantage over > > the standard library one's. > > Since we update our toolchain and standard library regularly, it might > > well be the case that the custom implementations are slower by now. > > > > Thus this CL removes all {CopyCharsUnsigned} implementations and > > implements {CopyChars} generically using {std::copy_n}. > > > > Note that this does not touch the {MemMove} and {MemCopy} functions > > yet, as we have seen regressions when trying to remove them before > > (https://crbug.com/v8/8675#c5). > > > > R=leszeks@chromium.org > > > > Bug: v8:9396 > > Change-Id: I97a183afebcccd2fbb567bdba02e827331475608 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800577 > > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#63808} > > Bug: v8:9396 > Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng > Change-Id: I9cd754ebe6b802bb4aabd6d2a448de41da040874 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807357 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63823} TBR=leszeks@chromium.org Bug: v8:9396 Change-Id: I793524d76b8b9c93d2a98c73e8d72967880fe1cf Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809362 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#63857}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/3bf1aad..aae0a7b Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/b19a360..b4e53c4 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/2c210a4..6f9a023 TBR=machenbach@chromium.org,tmrts@chromium.org Change-Id: I397f67e56c63bf89744a6d12729cb017023a8acc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809568Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#63856}
-
- 17 Sep, 2019 11 commits
-
-
Deepti Gandluri authored
ArrayBuffer tracking has landed, turning on GrowMemory for Shared WebAssembly.memory on by default. Enable all variants of tests based on the new implementation. Bug: v8:8564, v8:9221, v8:8832 Change-Id: I0ff8688636303896450b788b2ff5a7268d386050 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1808106 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#63855}
-
Adam Klein authored
This reverts commits 9febc505 (along with followup commit 60624b56). Reason for revert: Breaks win32 nosnap shared, blocking lkgr & roll: https://ci.chromium.org/p/v8/builders/ci/V8%20Win32%20-%20nosnap%20-%20shared/35145 nosnap bots may be deprecated, but as long as they're in LKGR we need to mind them. Original change's description: > Reland "Remove all custom CopyCharsUnsigned implementations" > > This is a reland of 5d8c4890 > > Original change's description: > > Remove all custom CopyCharsUnsigned implementations > > > > It's unclear whether the custom implementation have any advantage over > > the standard library one's. > > Since we update our toolchain and standard library regularly, it might > > well be the case that the custom implementations are slower by now. > > > > Thus this CL removes all {CopyCharsUnsigned} implementations and > > implements {CopyChars} generically using {std::copy_n}. > > > > Note that this does not touch the {MemMove} and {MemCopy} functions > > yet, as we have seen regressions when trying to remove them before > > (https://crbug.com/v8/8675#c5). > > > > R=leszeks@chromium.org > > > > Bug: v8:9396 > > Change-Id: I97a183afebcccd2fbb567bdba02e827331475608 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1800577 > > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#63808} > > Bug: v8:9396 > Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng > Change-Id: I9cd754ebe6b802bb4aabd6d2a448de41da040874 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807357 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63823} TBR=leszeks@chromium.org,clemensh@chromium.org Change-Id: Ic53ab2293d5dc7722a1121d1aa1159328a6ed8f5 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9396 Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1808035Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#63854}
-
Shu-yu Guo authored
NOTRY=true Bug: v8:7834 Change-Id: I84bd68dd6e94a882a1c20075b9b23ba08dab4136 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801257 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#63853}
-
Georg Neis authored
Runtime_CreateRegExpLiteral pretends to handle the case where we already have a boilerplate but the code just passes an empty handle to JSRegExp::Copy. This CL replaces the code with a CHECK that the boilerplate doesn't exist. A few mostly cosmetic changes along the way. Change-Id: I856c77c1cdf58f09e920b773b66b037c5178edc7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1809357Reviewed-by: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#63852}
-
Z Nguyen-Huu authored
Bug: v8:8976 Change-Id: Iede3b662188392303949edf2a9f0c585976695ab Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1806100 Commit-Queue: Z Nguyen-Huu <duongn@microsoft.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#63851}
-
Frank Tang authored
Fix m(ax|in)imumFractionDigits of Intl.NumberFormat resolvedOptions are set to 0. For example, currency instance for CPY or KRW. Bug: chromium:1003748 Change-Id: Ia1963d8d070b066bd5afa61f8c4716a21450af05 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807742Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#63850}
-
Santiago Aboy Solanes authored
The promise file is too big so I am splitting it in several CLs. This is the first one. TNodified: * AllocateAndInitJSPromise (three versions) * PerformPromiseThen * AllocateJSPromise Bug: v8:6949 Change-Id: I57ae8de3f929c00a9127ea4be51ffe7703b44959 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807370 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#63849}
-
Santiago Aboy Solanes authored
Bug: v8:6949, v8:9396 Change-Id: I035a00f61077e49377c9cd39ae1b216a80c98e6b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803615Reviewed-by: Dan Elphick <delphick@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#63848}
-
Dan Elphick authored
This moves PointerToSeqStringData from CSA to IntlBuiltinsAssembler since that the only place it's used and converts a few Node*s to TNodes. Bug: v8:6949, v8:9396 Change-Id: I2511c9f807fa0bc3101dd531f6724a170fed6bd9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807372 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63847}
-
Santiago Aboy Solanes authored
One Node* remains since it is crashing when TNodified since it has the empty Context. When this happens, it means the Context might not be needed. In this case it's hard to see if that's the case since it is propagated all over the place. Created a TODO so we can solve it later, when TNodification is more complete. Bug: v8:6949 Change-Id: I7db8c507689e30779f102a8272e1b13ecdc3e5e9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807274Reviewed-by: Mythri Alle <mythria@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#63846}
-
Ross McIlroy authored
BUG=v8:6949,v8:9396 Change-Id: Icd65e16f6b5b41ad56d1b8767a73e8ca15d05b74 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807365 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#63845}
-