- 18 Jun, 2019 11 commits
-
-
Jakob Gruber authored
This CL renames jsregexp.{h,cc} to regexp.{h,cc}, hides all non-public functions of RegExpImpl in the .cc file, and renames the public parts of RegExpImpl to just RegExp. Include directives from outside the src/regexp directory are limited to regexp.h, regexp-stack.h, and regexp-utils.h. We also expose all result codes that can be returned by irregexp code (including RETRY) on the public header since they are needed elsewhere, e.g. in builtins. Bug: v8:9359 Change-Id: Iae1a01ac9f6e1e4dc168f3fbe8fe8679cb6b1259 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662297Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#62240}
-
Tobias Tebbi authored
Bug: chromium:974476 Change-Id: I719812e93345b5f7aa9b1e4e594d02ae9a1c4208 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1664063Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#62239}
-
Michael Achenbach authored
Change-Id: I4337832c99c3644fba085102d4e7f32f5ba545e9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1664332Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#62238}
-
Sigurd Schneider authored
This is a reland of ac79b539 This CL adds a missing BlockPoolsScope to guard a RequestHeapObject call. This fixes a latend bug that the original land flushed out. Original change's description: > [arm64] Refactor constant pool implementation > > This refactors the constant pool handling for arm64. The immediate goal > is to allow 32bit compressed pointers in the pool. The mediate goal is > to unify the implementation with the arm constant pool, which will be > done in a follow-up CL. > > Bug: v8:8054 > Change-Id: I74db4245e5e1025f2e4de4144090fa4ce25883ab > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1645316 > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62209} TBR=mstarzinger@chromium.org,jgruber@chromium.org,georgia.kouveli@arm.com Bug: v8:8054 Change-Id: I1e3ab13619a48caad33d77ed8bed86782f9d9674 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1664054Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#62237}
-
Mike Stanton authored
This CL is an improvement on https://chromium-review.googlesource.com/c/v8/v8/+/1664052 which introduced unnecessary boilerplate (now reverted). The code objects for resolve/reject handlers are builtins, and therefore already serialized. R=jarin@chromium.org Bug: v8:7790 Change-Id: I6a49110aa794d4bd380cabd40e67fba7783e642a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1664055 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#62236}
-
Benedikt Meurer authored
This adds missing support when converting a Word32 value (either in Signed32 or Unsigned32 range) to Word64 representation, for which the type also includes MinusZero. This conversion is fine as long as the difference between 0 and -0 is not observable (in other words, as long as the truncation identifies zeros). Bug: chromium:971782, chromium:225811, v8:4153, v8:7881, v8:8171, v8:8383 Change-Id: I9d350a25f57b1342eb7fd1279d55a8610bdaf7cd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1664062Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#62235}
-
Michael Achenbach authored
NOTRY=true Bug: v8:9361 Change-Id: I6caa0d7609cdbf5fd5ff3f4ae668403c31af9ca3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1664058Reviewed-by: Tamer Tas <tmrts@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#62234}
-
Darius Mercadier authored
This function was functionnaly equivalent to FreeList::TryFindNodeIn. They probably were different when FindNodeIn was iterating through the empty FreeListCategories, but since CL 1648476, FreeListCategories in the FreeList can't be empty, and there was therefore never more than a single iteration of FindNodeIn's while loop. Bug: v8:9329 Change-Id: Ief7275ef55edb46b8bb35bce0783fbfd28534925 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1660615 Commit-Queue: Darius Mercadier <dmercadier@google.com> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#62233}
-
Georg Schmid authored
This CL allows CsaLoadElimination to retain some information in the presence of StoreToObject nodes. Two stores to an object don't alias if either the objects or the offsets don't alias. The analysis approximates either of these two conditions conservatively as follows: - Freshly allocated, distinct objects cannot alias. - Two objects cannot alias if one of is freshly allocated and the other was passed as a parameter or is a heap constant. - Two offsets cannot alias if they are both constant and distinct from each other. R=jarin@chromium.org, tebbi@chromium.org Change-Id: Ibec81913b413f81a3f7cbd40544a22d3711e6e5a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1660626 Commit-Queue: Georg Schmid <gsps@google.com> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#62232}
-
Michael Stanton authored
This reverts commit 0c5479df. Reason for revert: Turns out there is a simpler way to do this. Original change's description: > [Turbofan] Make JSCallReducer::ReducePromiseConstructor concurrent > > The only piece missing at this point was to serialize the code > objects for the resolve and reject handlers. > > Bug: v8:7790 > Change-Id: If636f9d74dfc9606cf5f45c4f02dd118fb5d8f00 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662295 > Commit-Queue: Michael Stanton <mvstanton@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62215} TBR=mvstanton@chromium.org,jarin@chromium.org Change-Id: Ie67326c850623eede8a63b50c5705682db784212 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7790 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1664052Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#62231}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/8ef7aaa..be684b6 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/6ae683b..6f3775a Rolling v8/buildtools/linux64: git_revision:8c7f49102234f4f4b9349dcb258554675475e596..git_revision:81ee1967d3fcbc829bac1c005c3da59739c88df9 Rolling v8/third_party/android_sdk/public: ki7EDQRAiZAUYlnTWR1XmI6cJTk65fJ-DNZUU1zrtS8C..xhyuoquVvBTcJelgRjMKZeoBVSQRjB7pLVJPt5C9saIC Rolling v8/third_party/android_sdk/public: iIwhhDox5E-mHgwUhCz8JACWQCpUjdqt5KTY9VLugKQC..ppQ4TnqDvBHQ3lXx5KPq97egzF5X2FFyOrVHkGmiTMQC Rolling v8/third_party/android_sdk/public: 4Y2Cb2LGzoc-qt-oIUIlhySotJaKeE3ELFedSVe6Uk8C..MSnxgXN7IurL-MQs1RrTkSFSb8Xd1UtZjLArI8Ty1FgC Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/2e4b470..f6c289d Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/bc23ca1..2313020 Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/076b7f7..d700357 TBR=machenbach@chromium.org,sergiyb@chromium.org,tmrts@chromium.org Change-Id: Ibee14c27a78dbb0c30494bdac8d663a61dc9535d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662979Reviewed-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@{#62230}
-
- 17 Jun, 2019 29 commits
-
-
Igor Sheludko authored
... in b9591a58 and then in 595813c6. Tbr: verwaest@chromium.org Change-Id: I0336cc5729532e23597aaab6966dfa602f84bc73 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662575Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#62229}
-
Seth Brenith authored
This change removes the special case in the Torque compiler for types that descend from JSObject: they will no longer get implicit "| Undefined" appended to their types for verification purposes. It removes any additional custom verification steps in objects-debug that are made redundant by that change. In order to do so safely, I categorized all cases where we were implicitly adding "| Undefined" to the field type, as follows: 1. Classes that aren't using the generated verifier function (we should probably revisit these, but for now we at least know they're safe): - JSGlobalObject - JSFinalizationGroup - JSFinalizationGroupCleanupIterator 2. Classes where the existing verifier is already at least as strict as what we would get after removing the implicit "| Undefined": - JSDate - JSPromise - JSRegExp - JSRegExpStringIterator - WasmMemoryObject - JSWeakRef - JSStringIterator - WasmExceptionObject - JSListFormat (fixed in part 1) - JSPluralRules (fixed in part 1) - JSRelativeTimeFormat (fixed in part 1) - JSSegmenter (fixed in part 1) - JSArrayBufferView (fixed in part 1) - JSTypedArray (fixed in part 1) 3. Classes where, to the best of my knowledge based on code inspection, we already initialize the object correctly to pass the new stricter generated verifier: - JSFunction - JSArrayIterator - JSMessageObject - JSBoundFunction - JSAsyncFromSyncIterator - WasmModuleObject - JSAsyncFunctionObject 4. Classes that needed some adjustment to their initialization order to avoid exposing uninitialized state to the GC: - JSArray (only in Factory::NewJSArray; Runtime_NewArray and CodeStubAssembler::AllocateJSArray already behave fine) - WasmTableObject - JSDateTimeFormat - JSNumberFormat - JSCollator - JSV8BreakIterator - JSLocale - JSSegmentIterator - JSModuleNamespace 5. Classes that had incorrect type definitions in Torque: - WasmGlobalObject (category 4 after correction) 6. Classes that weren't fully initialized due to bugs: - JSGeneratorObject - JSAsyncGeneratorObject Bug: v8:9311 Change-Id: I99ab303d3352423f50a3d0abb6eb0c9b463e7552 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1654980 Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#62228}
-
Z Nguyen-Huu authored
Bug: v8:664 Change-Id: I180a59462bd22a1f2378a59fd31edbb539603a1f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1659569 Commit-Queue: Z Nguyen-Huu <duongn@microsoft.com> Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#62227}
-
Michael Starzinger authored
R=titzer@chromium.org TEST=mjsunit/regress/regress-crbug-969368 BUG=chromium:969368 Change-Id: If8cdd3a170c3c0e487daa2c2dd9e347fb8eabafd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662571Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#62226}
-
Igor Sheludko authored
Bug: v8:9353 Change-Id: I2824e237ce52cd7434e181d033b346e603fe61c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662296 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#62225}
-
Ross McIlroy authored
Bug: v8:8801,v8:8394,v8:9183 Change-Id: I5ceaf731a1b2720f086e6791fe08caaaa55de030 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662568 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Auto-Submit: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#62224}
-
Mythri A authored
Bug: v8:8801, v8:8394, v8:9183 Change-Id: Ie2858af4863511d5f67b662ac6f6f79512f55e7e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662307 Commit-Queue: Mythri Alle <mythria@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#62223}
-
Jaroslav Sevcik authored
This in in preparation for generic (off-heap/on-heap) bytecode array accessor. Bug: v8:7790 Change-Id: Ib419831ba1db95ab938179723ef5f130f01ae0d6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1635895 Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#62222}
-
Igor Sheludko authored
Bug: v8:9353 Change-Id: Ie090f8f89eb4372845fe2c9d6aa74154c36f2d53 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662291 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#62221}
-
Jakob Kummerow authored
which was probably added by mistake. Change-Id: Iba265309710115aae8d9a0b7c0ede7e0160a662a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662302 Auto-Submit: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#62220}
-
Ben L. Titzer authored
Extract tests related to array buffers and typed arrays to their own .cc files. R=mstarzinger@chromium.org Change-Id: Ic80205d02b62db1565670ecf2bb4c0dbe52fab49 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662301 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#62219}
-
Jakob Gruber authored
This further reduces the number of things declared in the public regexp API file, currently still named jsregexp.h. * Move JSRegExp::Flags convenience functions to regexp-compiler.h. * Set RegExpImpl methods private if possible (these will later be moved to a new hidden impl class). * Merge RegExpEngine::CompilationResult into RegExpCompileData. * Move remaining RegExpEngine methods to RegExpImpl and delete RegExpEngine. * Extract RegExpGlobalCache. * Document a few data structures. Upcoming CLs will rename RegExpImpl to RegExp and jsregexp.h to regexp.h. This should then be the only header included from other directories. Bug: v8:9359 Change-Id: I78c8f4cca495a2b95735a48b6181583bc3310bdf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662294Reviewed-by: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#62218}
-
Maciej Goszczycki authored
Rename LargeObjectIterator to LargeObjectSpaceObjectIterator. Rename SemiSpaceIterator to SemiSpaceObjectIterator. Rename CombinedHeapIterator to CombinedHeapObjectIterator. Rename ReadOnlyHeapIterator to ReadOnlyHeapObjectIterator. Rename HeapIterator to HeapObjectIterator. Rename HeapObjectIterator to PagedSpaceObjectIterator. Rename PagedSpaces to PagedSpaceIterator. Bug: v8:9183 Change-Id: If4bd65d81e50bb45d207a897baaca8b723e4f10b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1645914Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Cr-Commit-Position: refs/heads/master@{#62217}
-
Mythri A authored
Bug: v8:8801, v8:8394, v8:9183 Change-Id: Ic31f97a1b591317a004dc52c8eee777dd6353487 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662299 Commit-Queue: Mythri Alle <mythria@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Auto-Submit: Mythri Alle <mythria@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#62216}
-
Mike Stanton authored
The only piece missing at this point was to serialize the code objects for the resolve and reject handlers. Bug: v8:7790 Change-Id: If636f9d74dfc9606cf5f45c4f02dd118fb5d8f00 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662295 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#62215}
-
Ross McIlroy authored
Bug: v8:8801,v8:8394,v8:9183 Change-Id: I55027b3ba0c78f40d82aaf2d160aaf957d02cab5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662292 Auto-Submit: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#62214}
-
Dan Elphick authored
Previously only AssemblerOptions created by AssemblerOptions::Default() could have inline_offheap_trampolines set to true. This fixes OutOfLineTruncateDoubleToI from generating calls via the DoubleToI trampoline. Bug: v8:9338 Change-Id: Ia4638cd185e9041c7c69996783d0ce5600e9723a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662288Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#62213}
-
Michael Achenbach authored
We have too many dupes in the no-ic comparisons. We'll increase the experiment size again once bugs are fixed. TBR=jarin@chromium.org NOTRY=true Bug: chromium:961709 Change-Id: Ic946100b45fd73e1bee59f188a766384836bcdcf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1660624Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#62212}
-
Sigurd Schneider authored
This reverts commit ac79b539. Reason for revert: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim/18611 Original change's description: > [arm64] Refactor constant pool implementation > > This refactors the constant pool handling for arm64. The immediate goal > is to allow 32bit compressed pointers in the pool. The mediate goal is > to unify the implementation with the arm constant pool, which will be > done in a follow-up CL. > > Bug: v8:8054 > Change-Id: I74db4245e5e1025f2e4de4144090fa4ce25883ab > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1645316 > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62209} TBR=mstarzinger@chromium.org,sigurds@chromium.org,jgruber@chromium.org,georgia.kouveli@arm.com Change-Id: Iff03e81a2e70d125ef2c06b6ff3aff8d0e3688ef No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8054 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1662293Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#62211}
-
Michael Starzinger authored
This adds preliminary support for storing constructed WebAssembly functions in tables. Note that for now only tables at index #0 are supported, extending it to other tables indexes will be done as a follow-up. R=ahaas@chromium.org TEST=mjsunit/wasm/type-reflection BUG=v8:7742 Change-Id: I9aa07813e07f0ceb4eafe37af412b45c7d235722 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1640209 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62210}
-
Sigurd Schneider authored
This refactors the constant pool handling for arm64. The immediate goal is to allow 32bit compressed pointers in the pool. The mediate goal is to unify the implementation with the arm constant pool, which will be done in a follow-up CL. Bug: v8:8054 Change-Id: I74db4245e5e1025f2e4de4144090fa4ce25883ab Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1645316Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#62209}
-
Mike Stanton authored
The functions * JSCallReducer::ReducePromisePrototypeThen * JSCallReducer::ReducePromisePrototypeFinally * JSCallReducer::ReducePromisePrototypeCatch need the prototype for all receiver maps to be serialized in order to take effect. We can do this by processing our receiver hints when processing a builtin call in the serializer. Bug: v8:7790 Change-Id: I3d9144924cf6926cfcd93b60ac703cfba2d3d93a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1660623 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#62208}
-
Jakob Gruber authored
The breaking change was https://chromium-review.googlesource.com/c/v8/v8/+/1658157 Bug: v8:9359 Change-Id: I6fa956631a8e475123cf6f8f44e66f2c499d47b7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1660627 Auto-Submit: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#62207}
-
Thibaud Michaud authored
Make NewCompilationJob methods return a unique_ptr to explicitly transfer ownership. R=mstarzinger@chromium.org Bug: v8:9183 Change-Id: I1cc6614cc1941b1b27489443a3c330cf6e88f089 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1660474Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#62206}
-
Thibaud Michaud authored
R=mstarzinger@chromium.org Bug: v8:9183 Change-Id: Id64bffd899afe1389748a0cd3527e41d1e028bad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1660472Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#62205}
-
Toon Verwaest authored
Change-Id: Iacfa08afd809f5edba8e5e4e45ebe6e9c87b9814 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1660625 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Auto-Submit: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#62204}
-
Andreas Haas authored
In the existing code, whenever unreachable control instructions needed values from the stack which were not available, values of type kWasmVar were put on the stack. When these values were type-checked the first time, the expected type was assigned to them for later validation. This behavior has several draw-backs: * In an unobservable way, this implementation does not match the requirements of the spec. With the anyref proposal, this difference becomes observable. * Type checking functions were not read-only anymore, because if unreachable code was validated, the stack got manipulated in these functions. With the refactoring, I pulled out the handling of unreachable code out of the type checking functions. These checking functions can be validation-only functions. For type checking unreachable code, I start by popping values of the expected types off the stack. Thereby all available values on the stack get type-checked. Afterwards, I push all values again on the stack with the expected type if needed. This allows to continue the expected type checking for later instructions. R=clemensh@chromium.org Bug: v8:7581 Change-Id: Ib98e70a44bf9780626d4aa8a3e5fe8c2f230b787 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1645328Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62203}
-
Georg Schmid authored
This is a reland of a66e3e57 Original change's description: > [csa] Tweak CSA pipeline to eliminate more redundant checks > > - Lower LoadObjectField to LoadFromObject > - Mark LoadFromObject and StoreToObject as non-allocating > - Use optimizable BitcastTaggedSignedToWord in TaggedIsNotSmi check > > R=jarin@chromium.org, tebbi@chromium.org > > Change-Id: I42992d46597be795aee3702018f7efd93fcc6ebf > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1657926 > Commit-Queue: Georg Schmid <gsps@google.com> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62173} R=tebbi@chromium.org Change-Id: Id7ae13ba17a2083fd4109f34ce026030716ececb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1660622 Commit-Queue: Georg Schmid <gsps@google.com> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#62202}
-
Jakob Gruber authored
RegExp assertions (e.g.: '^', '$', '\b', ...) sequences have certain properties that this rewriter exploits: 1. They are zero-width and order-independent, thus one can remove all duplicate assertions. 2. If a subsequence is guaranteed to fail, the entire sequence fails. Any sequence always known to fail (e.g. containing both '\b' and '\B') can be rewritten to a single node that triggers failure. This CL generalizes the previous optimization for repeated assertions to be order-independent, i.e. assertions only have to be in the same sequence but not next to each other. Bug: v8:6515, v8:6126 Change-Id: I3f92f081ce8a55ad8c34c269a09a6686e3b008f3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1657925 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#62201}
-