- 18 Nov, 2021 28 commits
-
-
Junliang Yan authored
Change-Id: Ibd3ba4cd1edc174fdfaa826b8a6f7731f4627365 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289932Reviewed-by: Milad Fa <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#77984}
-
Clemens Backes authored
Verify certain properties when emitting safepoint tables: - entries are ordered by PC, - trampoline PCs are also in order, - all trampoline PCs come after all regular PCs, and - an entry with a deopt index also has a trampoline PC set. Drive-by: Slightly simplify logic in {UpdateDeoptimizationInfo}. Drive-by 2: Inline IsIdenticalExceptForPc into the only caller, and further simplify the logic there. R=jkummerow@chromium.org Bug: v8:12401 Change-Id: I8ea41b1628dceb914191f23165c8dccb79f9204c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289162 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#77983}
-
Michael Lippautz authored
We should not assume that the embedder can run with concurrent marking even though we just finalize the GC at this point. Bug: chromium:1271371 Change-Id: I3d3a45e4283dcae9c6fdd1a467158254914868c3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289169Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#77982}
-
Michael Lippautz authored
Change-Id: I4886923bd3b2c29f5f317fbfab078af4d5dd8510 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289156 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#77981}
-
Victor Gomes authored
Bug: v8:12054 Change-Id: I492ceb377eb0e38f249f76e9f2a5cb554781652c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3291321 Commit-Queue: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#77980}
-
Clemens Backes authored
This removes the redundant {Safepoint::kNoDeoptimizationIndex} definition, and uses {SafepointEntry::kNoDeoptIndex} consistently. R=jkummerow@chromium.org Bug: v8:12401 Change-Id: I4e12862d96a2b97245f8dde62243013425e53ff1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289159Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#77979}
-
Milad Fa authored
Change-Id: Ie61638fbc61b5a84dc9ba396e4df7193a2ebd6a7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3291547Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#77978}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/220a7fc..994f319 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/b138e6c..075dd7e Rolling v8/buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi/+log/707d75f..81212d2 Rolling v8/buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind/+log/51ffc5e..7f068e5 Rolling v8/third_party/android_sdk/public: AuYa11pULKT8AI14_owabJrkZoRGuovL-nvwmiONlYEC..Ez2NWws2SJYCF6qw2O-mSCqK6424l3ZdSTpppLyVR_cC Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/1a5ffbc..e6e1eb6 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/2efe3d7..1c7dec3 Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/1b18723..1a3e2a2 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/2c3af75..8caa4c5 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I08fb9b9716466ecd84e01873e2d3d9019dd28056 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3290473 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@{#77977}
-
Dominik Inführ authored
A SafepointScope might need to block for a shared GC initiated from another client isolate. This means that anytime we create a SafepointScope a shared GC may run. This CL adds a DCHECK to ensure AllowGarbageCollected::IsAllowed() holds for each SafepointScope. So far this DCHECK was only run in the less likely event that a SafepointScope actually runs a shared GC. Which is technically good enough but it is easy to miss use cases of SafepointScope where this does not hold. Bug: v8:11708, v8:12377 Change-Id: I30cc33c05ebe4835430e1d699a86079810523858 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289625Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#77976}
-
Clemens Backes authored
Many callers already pass an int, so there is no point in storing as an uint32_t internally. The style guide also recommends int as the general data type for integers, even if it's statically known that only positive values will occur. R=jkummerow@chromium.org Bug: v8:12401 Change-Id: I6067139f514895f925d1c536112b4cb5c2c24a36 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289157 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#77975}
-
Seth Brenith authored
In order to determine which module contains V8, v8windbg has been looking for the known symbol v8::Script::Run. However, that symbol might not be found if the function was inlined. To fix, we should instead choose a symbol that is declared with V8_NOINLINE. Change-Id: Ib73dfb27f35ab81ab69f92ffab944f6f1096b895 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3290107Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/main@{#77974}
-
Jakob Gruber authored
Refactor s.t. we now compact the DependentCode weak fixed array both when adding new entries and when marked for deopts. Bug: v8:12397 Change-Id: I842f3369644e88cc0b98a1f1371259c920cc8bbf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3291320 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#77973}
-
Victor Gomes authored
The cpu profiler tests require a precise trace and become flaky when running with concurrent sparkplug. Bug: v8:12054 Change-Id: I62a20d15530c610bc1091371781c28687c718720 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289158 Auto-Submit: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#77972}
-
Manos Koukoutos authored
Using a map to store node states in Int64Lowering has proven slow. Therefore, we change the data structure to a vector indexed by node ids. Bug: v8:12166, chromium:1271179 Change-Id: I13b78091fe1a6a13c26afd706d3839b0c04390f4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3291308Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#77971}
-
Kim-Anh Tran authored
This CL explicitly encodes the 'other' reason for breaking for: * regular breakpoints * triggered pause events. The reason for explicitly encoding the reason is that we may otherwise not know why we pause when we handle it. This knowledge is needed in order to fully support instrumentation breakpoints, e.g. if we do not know that we paused on a triggered pause, and this happens to overlap with an instrumentation, we would previously only report 'instrumentation' as a reason which would be wrong. Bug: chromium:1229541 Change-Id: I93c08f965a491f6d34f280157b182a78d5b3cf07 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289638Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Kim-Anh Tran <kimanh@chromium.org> Cr-Commit-Position: refs/heads/main@{#77970}
-
Jakob Gruber authored
Prior to this CL we regularly generated high counts of code dependencies, and installation was not the most efficient. This CL 1) implements early dependency deduplication and 2) simplifies the way dependencies are persisted on the heap through DependentCode. Re 1): we dedupe twice, once based on the CompilationDependency contents, and again once we know the final target object. Re 2): Instead of a linked list of weak fixed arrays per dependency group, store deps in a flat array together with a bitset of their dependency groups. See also: https://docs.google.com/document/d/1B34S1s3Iv6hbquZ93RugD0b-ZKfHEptJ8Fk_YyOvjDk/edit Bug: v8:12195,v8:12397 Change-Id: I9ab47f6d87b10558194b5de30a36b1122f7e362a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3283074Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#77969}
-
Victor Gomes authored
When compiling code off-thread in the large code space, we need to register the chunk in the isolate using AddCodeMemoryChunk. In the main thread, this is done when AllocateRaw calls NotifyOldGenerationExpansion. Bug: chromium:1269315, v8:12054 Change-Id: I46ea5c9cdcd063708292dd49aac6d39091e11ba4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289151 Auto-Submit: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#77968}
-
Patrick Thier authored
Raise an exception if CallFunction is invoked with a class constructor. The check was initially removed in [1] but there are cases where we could end in CallFunction with class constructors from optimized code. [1] https://crrev.com/c/3186434 Bug: chromium:1271384 Change-Id: I0d700c4b1d117334c1c4c14719e24cd1f2c5e3a2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3291313 Commit-Queue: Patrick Thier <pthier@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#77967}
-
Tobias Tebbi authored
Undetectables are always callable in V8, so the previous type check didn't make sense. Bug: chromium:1267230 Change-Id: Idb557bb05ee4c3b332d1fe61b40557122660261a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3291303Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#77966}
-
Manos Koukoutos authored
We prevent unrolling of loops with indirect calls. We expand the set of permitted wasm builtins in unrolled loops. Bug: v8:11298 Change-Id: I70b8ff3b16d9b0d3a4ea2d103f8ffb74083fd2a9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289152 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#77965}
-
Paolo Severini authored
Bug: chromium:1271456 Change-Id: Ie1a5e62b941a8ba3da9b75cfe28a194b214df15e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3290583Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#77964}
-
Marja Hölttä authored
We have 4 different cases: 1) Explicit web snapshots (--web-snapshot) & errors in the snapshot 2) Explicit web snapshots & errors in the embedded script 3) Auto-detected web snapshots (--experimental-web-snapshots) & errors in the snapshot 4) Auto-detected web snapshots & errors in the embedded script Before this CL: cases 2 & 4 resulted in a DCHECK failing and the error in case 3 wasn't reported correctly. This CL implements consistent error reporting for all of them. Bug: v8:11525 Change-Id: If2e5039d9769b9cad2175dfd5c4f91edf61111ae Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3277877Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/main@{#77963}
-
Patrick Thier authored
Extend BitsetType of TF's type system from 32 to 64 bit. At the moment all 32 bits are used, so we can't add any new types. This CL only adds support for > 32 types to C++. The bitset is also mirrored in Torque. In the Torque definition, we just expose an unstructured uint32 for the higher bits of the bitfield, because Toruqe can't deal with 64 bit types on 32 bit platforms (yet) and we also can't have multiple 1-bit bitfields within a single class (yet). Bug: v8:12392, chromium:1262750 Change-Id: If571491443e86e4e47eb88d3f15eca485344d12d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3281922Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Patrick Thier <pthier@chromium.org> Cr-Commit-Position: refs/heads/main@{#77962}
-
Victor Gomes authored
No-Try: true Change-Id: I78f338fa1e3cb7cc31e7c75d114ec55df5aa1272 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289145 Auto-Submit: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#77961}
-
Victor Gomes authored
ICU roll fixes the Bazel build for ICU: https://chromium.googlesource.com/chromium/deps/icu.git/+/d3ba6ae0c0a1b940c496771431feff25d4262d42 No-Try: true Bug: v8:12388 Change-Id: I5614ac1d3aa64b02f405e22b456f175a4662dd27 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289143 Auto-Submit: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#77960}
-
Shu-yu Guo authored
This is in anticipation for sharing internalized and in-place-internalizable strings across Isolates. When such strings are shared, background compilation threads need to be able to allocate strings in the shared old space. Bug: v8:12007 Change-Id: I93179c9674cc16e5a6125049d20e61495bc1f3a9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3283615Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#77959}
-
Ng Zhi An authored
We move the mask to be the first input of the node in wasm-compiler.cc, this matches the order for S128Select, which makes code-gen for arm/arm64 simpler (directly lower to BSL with no more shuffle of inputs). This requires tweaking of input indices in the instruction selector for ia32/x64, but no change in codegen. Bug: v8:12284 Change-Id: I1f6f1a9fe0869509be77f77b6f54a0c636a0f92d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3272640 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/main@{#77958}
-
jiepan authored
Bug: v8:12228 Change-Id: I9f7bb60fb2647f44c41c8c9e35a534ecd60c426a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289150Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Jie Pan <jie.pan@intel.com> Cr-Commit-Position: refs/heads/main@{#77957}
-
- 17 Nov, 2021 12 commits
-
-
Ng Zhi An authored
NONE clashes with the PropertyAttributes::NONE, which is defined in v8::internal namespace. PropertyAttributes have too many call sites and depend on using the enums as masks, making it hard to convert to an enum class. So we are changing the name instead. Bug: v8:12244 Change-Id: Iec0be12c626549cca137aceeaee0e30fafab8b05 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3284003 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/main@{#77956}
-
Ng Zhi An authored
fma_instr is now no longer required Change-Id: Iab47aa6afcc53c78acf15c7ab71f6b9ba45263c8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3286003Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/main@{#77955}
-
Ng Zhi An authored
Fixes -Wshadow warnings for ELEMENT. Bug: v8:12244,v8:12245 Change-Id: Ic3dfa96b44fc18f0db10752639a54aeca324667c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3276928Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/main@{#77954}
-
Al Muthanna Athamina authored
Bug: v8:12400 Change-Id: I8498f50e32e5abbfcd6af0a8b4c4d85cdb1c6eec Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289627Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Almothana Athamneh <almuthanna@chromium.org> Cr-Commit-Position: refs/heads/main@{#77953}
-
Al Muthanna Athamina authored
Bug: chromium:1136844 Change-Id: I3775eeb9afd447e4c9fc7a2ad6b0365368b89049 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289153Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Almothana Athamneh <almuthanna@chromium.org> Cr-Commit-Position: refs/heads/main@{#77952}
-
Michael Lippautz authored
Fix monolith build complaning about used implicit copy ctor when copy operator is explicitly defined. Bug: v8:12402 Change-Id: Iec30882af1c825c277a2e538400c85348daa6301 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289624 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Auto-Submit: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#77951}
-
Clemens Backes authored
For streaming compilation, include the source URL in tracing, to help identifying problems with caching. R=ahaas@chromium.org Change-Id: Iefda71890024a4fc9ec933c34c5870ba697bbff9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289148Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#77950}
-
Milad Fa authored
Port 2e955523 Original Commit Message: Comments in interface-descriptors stated that the argument count is without the receiver, which is no longer true (see [1]). [1] https://crrev.com/c/3140608 R=pthier@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I1bbce6672f19a3e508676e4b23cf9910542cbb21 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3285407Reviewed-by: Patrick Thier <pthier@chromium.org> Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#77949}
-
Michael Lippautz authored
Change-Id: I38cd955d3e41861d955c529ec56890b45effccf0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3284897 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#77948}
-
Victor Gomes authored
CodePageCollectionMemoryModificationScope was wrongly added to the test. On M1, the code object is unprotected to RW and crash when running it later. Bug: v8:12386, v8:12396 Change-Id: I1af3dabaa9b66d1f50033f298107949fcb35c3d0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289155Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#77947}
-
Tobias Tebbi authored
This fast path works for ASCII-only strings and is similar to the existing fast-path in C++. Important differences: - The locale check is done at Turbofan optimization time instead of at runtime - Use tables of size 256 instead of 128 to save a bounds-check when handling one-byte strings. - It first performs an equality check that's optimized for detecting inequality quickly by comparing the strings from both ends. If the equality check succeeds, we are done. Otherwise chances are high that the strings differ according to collation level L1 already. Therefore, we first do an L1 check and perform the L3 check only when L1 didn't find a difference. This is based on the assumption that few strings are identical except for different capitalization. - Use the Torque version of string flattening instead of the runtime version. Bug: v8:12196 Change-Id: I2d043c1138846783f6d567b736d34063ba9301e5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3268465Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#77946}
-
Leszek Swirski authored
This is a reland of 9b5f3985 Reland fixes: * Store a Handle instead of a raw pointer in the scope, to make sure the saved object stays alive. Original change's description: > [runtime] Reset clobbered argument in DefineClass > > The caller of DefineClass may not expect its arguments to be mutated, so > add an arguments mutation scope which resets the argument clobbered by > DefineClass. > > Bug: chromium:1268738 > Change-Id: I03e9cd82535ca1f83353012a92e80f822566e64e > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3283077 > Auto-Submit: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/main@{#77921} Bug: chromium:1268738 Change-Id: I934ba2063bf2b0e66a3c42f274419ddd178e4b54 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289146 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#77945}
-