- 22 Oct, 2019 3 commits
-
-
Jakob Gruber authored
The natives blob was deprecated in V8 7.8. This CL removes all related functionality, including: - Build system support, i.e.: generation of natives_blob.bin and the v8_extra_library_files gn flag. - Related scripts (js2c.py, concatenate-files.py). - Related API functions (SetNativesDataBlob, InitializeExternalStartupData). - Natives bootstrapping logic. - The InternalArray type (previously exposed through natives). - Other natives-exposed builtins. - Inlining of these builtins. - The dedicated 'uncached external one byte string' type. Step 1 landed in https://crrev.com/c/1824944. Step 2 landed in https://crrev.com/c/1835536. Step 3 (this CL) removes these all functionality related to natives support in V8. Bug: v8:7624 Change-Id: Ice6c2662781efe8417231805276476d32bc5a625 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1844771 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Tamer Tas <tmrts@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#64446}
-
Michael Achenbach authored
This reverts commit 5d57f4e1. Reason for revert: https://ci.chromium.org/p/v8/builders/ci/V8%20Blink%20Linux/1332 Original change's description: > [Intl] Ship calendar and numberingSystem options > > Ship the "calendar" and "numberingSystem" options for > Intl.DateTimeFormat (both options) and Intl.NumberFormat (only the later > one) and support other calendar. Also consider the calendar while > choosing calendar pattern. > > I2L: http://shorturl.at/bgkAH > I2S: http://shorturl.at/nuKUV > > Flags: --harmony-intl-add-calendar-numbering-system > --harmony-intl-other-calendars > > API owner approvals: chrishtr@ yoav@yoav.ws bratell.d@gmail.com > > Plan to land into m80 tree and only merge after 10/17 m79 branch off. > > Bug: v8:9154, v8:9155, v8:9320 > Change-Id: Ifa209919a40db60465f99405f3620a3b73b10204 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1838436 > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Commit-Queue: Frank Tang <ftang@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64437} TBR=adamk@chromium.org,jkummerow@chromium.org,ftang@chromium.org Change-Id: I4b4f44ccdd771160161094beaaeb76d9d0dc005e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9154, v8:9155, v8:9320 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872396Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64445}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/7136ae1..996a3e8 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/a5c8651..0388283 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/acf922c..53f9e09 TBR=machenbach@chromium.org,tmrts@chromium.org Change-Id: I26c76120520eb6afdca3d46597dfc14dafa7e6fe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871961Reviewed-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@{#64444}
-
- 21 Oct, 2019 37 commits
-
-
Zhi An Ng authored
This reverts commit 08b26f53. Reason for revert: Breaks tree https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20noi18n%20-%20debug/29046 Original change's description: > Clean up macros > > Move some instruction definitions into sse-instr, which is used to > generate some disasm tests, so we can remove some cases there. > > Bug: v8:9810 > Change-Id: I0615ec823396da08bc5d234cf1dabca6afd3f052 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1866965 > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64441} TBR=gdeepti@chromium.org,zhin@chromium.org Change-Id: I067c1fdbaa6eb2a08c0fcb7c8885d72f073a8818 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9810 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1873195Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64443}
-
Deepti Gandluri authored
Bug: v8:9810 Change-Id: I5eb359f9bc04be4c0855a5161b7c525c803f679f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1873187Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#64442}
-
Ng Zhi An authored
Move some instruction definitions into sse-instr, which is used to generate some disasm tests, so we can remove some cases there. Bug: v8:9810 Change-Id: I0615ec823396da08bc5d234cf1dabca6afd3f052 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1866965Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64441}
-
Ng Zhi An authored
Bug: v8:9810 Change-Id: Ie7c497d8aae40db71c3039e457d0535fd8d5b3f1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872015Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64440}
-
Frank Tang authored
Bug: v8:9876 Change-Id: I2ca4512790e0a84b6f4ebd67bce76b7eb24eb33c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1867793Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#64439}
-
Daniel Clark authored
Per spec, Module::SetSyntheticModuleExport should throw a ReferenceError when called with an export name that was not supplied when constructing that SyntheticModule. Instead, the current implementation crashes with a failed CHECK(). Add a new Module::SyntheticModuleSetExport that throws (without an ensuing crash) for this case, and deprecate the old Module::SetSyntheticModuleExport. Bug: v8:9828 Change-Id: I3b3d353064c3851882781818099bd8f6ee74c809 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1860996Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Dan Clark <daniec@microsoft.com> Cr-Commit-Position: refs/heads/master@{#64438}
-
Frank Tang authored
Ship the "calendar" and "numberingSystem" options for Intl.DateTimeFormat (both options) and Intl.NumberFormat (only the later one) and support other calendar. Also consider the calendar while choosing calendar pattern. I2L: http://shorturl.at/bgkAH I2S: http://shorturl.at/nuKUV Flags: --harmony-intl-add-calendar-numbering-system --harmony-intl-other-calendars API owner approvals: chrishtr@ yoav@yoav.ws bratell.d@gmail.com Plan to land into m80 tree and only merge after 10/17 m79 branch off. Bug: v8:9154, v8:9155, v8:9320 Change-Id: Ifa209919a40db60465f99405f3620a3b73b10204 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1838436Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#64437}
-
Frank Tang authored
Bug: v8:9849 Change-Id: Ib7812e27dcacb30fd2610badbf79dee190fdec15 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1869078Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#64436}
-
Seth Brenith authored
The current unwinding data for JSEntry correctly restores the frame pointer and program counter from the caller frame, which might or might not be sufficient to continue unwinding, depending on the contents of that caller frame. Currently, the cctest StackUnwindingWin64 is broken (at least with my build config) because the caller frame also needs the stack pointer, which is not restored correctly. In particular, I see this xdata for v8::internal::GeneratedCode<...>, which is the function that calls Builtins_JSEntry: 10400015 : 2 code words, 1 epilog, function length=15 01000012 : epilog starts at 12 and its unwind handler starts at 4 e405c8d2 : save_reg x=b z=8 alloc_s x=5 end e405c8d2 : same thing but for the epilog The prolog that corresponds to the unwind codes above is: sub sp, sp, #50 str lr, [sp, #0x40] Note that it does not set fp, so unwinding requires an accurate sp. This change emits slightly more complicated unwinding data for JSEntry so that the frame pointer, stack pointer, and program counter can all be restored. Change-Id: I0c7f3eba97ef64408f46631b487c4b0ceb06fa9b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1848860 Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#64435}
-
Ng Zhi An authored
Bug: v8:9728 Change-Id: I0b90bf97fc8f57f8b372c3254d585c707da9fe7a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1865255Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64434}
-
Igor Sheludko authored
Bug: v8:4153 Change-Id: I88abd7b5b5ba1b7156d60427217fc8e301cbc099 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1866653 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#64433}
-
Seth Brenith authored
On Windows ARM64, it is insufficient to just follow the linked list of frame pointers in all cases. This is similar to logic added in https://crrev.com/c/v8/v8/+/1701133 except this affects the Unwinder methods rather than the function metadata for RtlVirtualUnwind. Together with https://crrev.com/c/chromium/src/+/1844276 , this allows the Chromium unit test V8UnwinderTest.UnwindThroughV8Frames to pass on Windows ARM64. Change-Id: I82d4d894be14d4a6ace75bba10c13b10342d0b12 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1845189Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#64432}
-
Dan Elphick authored
Converts last remaining Node*. Bug: v8:6949 Change-Id: I792a7efa3dc3cdfd0e0ae8349aad6da54f4e8db8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871928 Auto-Submit: Dan Elphick <delphick@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#64431}
-
Jakob Gruber authored
We previously had a DCHECK to protect the assumption that the continuation to StackPointerGreaterThan must be a branch. This is not a valid assumption to make, in fact the second callsite of VisitStackPointerGreaterThan immediately violates it. Instead, this CL additionally considers non-branch continuations when getting the effect level. A slight digression since it was not clear to me how comparison results were materialized for 'Set' continuations: this happens during codegen, where CodeGenerator::AssembleInstruction inserts a call to AssembleArchBoolean if necessary. Bug: v8:9829,v8:9534 Change-Id: Ib554071b7aa33e0f6b8a0d605219db6b6dc7d5b0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871912Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64430}
-
Georg Neis authored
Disallow reorderings across calls and across caller registers save/restore. Bug: v8:9775 Change-Id: I8b1037dd127217ed9f4a42d45e0d928380c9241a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1862558 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#64429}
-
Joshua Litt authored
Bug: chromium:1014458 Change-Id: I9e5e83da4452e9953218335353047f41c18f68fe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1864333 Commit-Queue: Joshua Litt <joshualitt@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#64428}
-
Santiago Aboy Solanes authored
Bug: v8:9771 Change-Id: I1bac467c21b2a4188959acc9d41f7ae147e64655 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871927 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Auto-Submit: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#64427}
-
Jakob Gruber authored
.. similar to how it is applied in the interpreter. We reserve a stack slot for the backtrack count, increment it on each backtrack, and fail if the limit is hit. Bug: v8:9695 Change-Id: I835888c612d6c8bfa2f34e73ab8c8241dcabc6ed Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1864938Reviewed-by: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64426}
-
Clemens Backes authored
This is a reland of 0347f00a Original change's description: > Refactor platform tests to avoid deprecated API > > The old tasks API is deprecated and we want to remove it in 8.0. > Thus, this CL refactors the platform tests to use the new > TaskRunner-based API, and removes redundant tests. > > R=ahaas@chromium.org > > Bug: v8:9810 > Change-Id: Ie53c90184639e77b3247228059fd88290b233e0c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1868619 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64412} Bug: v8:9810 Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel Change-Id: I0f66791828e0f605a67f9af575dbead35e8feb9d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871917Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64425}
-
Leszek Swirski authored
This reverts commit c48096d4. Reason for revert: Flaky bot failures (https://bugs.chromium.org/p/v8/issues/detail?id=9744#c9) Original change's description: > Reland "[runtime] Remove extension slots from context objects" > > This is a reland of c07c02e1 > > Original change's description: > > [runtime] Remove extension slots from context objects > > > > Context objects have an extension slot, which contains further > > additional data that depends on the type of the context. > > > > This CL removes the extension slot from contexts that don't need > > them, hence reducing memory. > > > > The following contexts will still have an extension slot: native, > > module, await, block and with contexts. See objects/contexts.h for > > what the slot is used for. > > The following contexts will not have an extension slot anymore (they > > were not used before): script, catch and builtin contexts. > > Eval and function contexts only have the extension slot if they > > contain a sloppy eval. > > > > Bug: v8:9744 > > Change-Id: I8ca56c22fa02437bbac392ea72174ebfca80e030 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1863191 > > Commit-Queue: Victor Gomes <victorgomes@google.com> > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > > Auto-Submit: Victor Gomes <victorgomes@google.com> > > Cr-Commit-Position: refs/heads/master@{#64372} > > TBR=verwaest@chromium.org,jgruber@chromium.org,ulan@chromium.org,leszeks@chromium.org,petermarshall@chromium.org > > Bug: v8:9744 > Change-Id: I0749cc2d8f59940c25841736634a70047116d647 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1869192 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Auto-Submit: Victor Gomes <victorgomes@google.com> > Cr-Commit-Position: refs/heads/master@{#64380} TBR=ulan@chromium.org,jgruber@chromium.org,petermarshall@chromium.org,leszeks@chromium.org,verwaest@chromium.org,victorgomes@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:9744 Change-Id: Ia58067b41f1eb5880a52b36ead754d7190ff7f6f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871922Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#64424}
-
Clemens Backes authored
The MOVE_ONLY_NO_DEFAULT_CONSTRUCTOR macro defines a defaulted move constructor and move-assignment operator. The {std::unique_ptr} on the other hand needs the contained type to be complete when instantiating the move assignment operator. Hence, this fails e.g. on MSVC, see https://github.com/nodejs/node/pull/30020#issuecomment-544485991. It turns out that we never actually move the interpreter, so we can just replace the MOVE_ONLY_NO_DEFAULT_CONSTRUCTOR by DISALLOW_COPY_AND_ASSIGN. R=ahaas@chromium.org Change-Id: Iba7d30243510ed9554be62b0c4c8e6f47f0c3307 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871921Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64423}
-
Santiago Aboy Solanes authored
Before this change, the activeElement used to be the body and not multiview. Then, the EventListener wasn't triggering. Bug: v8:7327 Change-Id: I9782159ffd510c9a7afd83695f20ede9e774ac20 Notry: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1868624 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#64422}
-
Sigurd Schneider authored
Since the resizers (the handles used to resize the panes) were getting bigger when selected, they obscured part of the scrollbar making the scrollbar too hard to select. Also, when they were snapped, the right resizer totally obscured the scrollbar. Bug: v8:7327 Change-Id: I04f3df00181df2265890ef54706091b3bc36f23e Notry: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1869191Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#64421}
-
Santiago Aboy Solanes authored
This is a reland of ad9bd3a0 Reland reason: Probably not the cause of the TSAN failures Original change's description: > [ptr-compr][CSA] Enable the DecompressionOptimizer phase in CSA > > Also update the MachineGraphVerifier to take into account the > possibility of the Store receiving a Compressed representation as well. > > Bug: v8:7703 > Change-Id: I6d6e28b980151af6296000cfe6f67a3a037b029c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1859627 > Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64410} TBR=tebbi@chromium.org, jgruber@chromium.org Bug: v8:7703 Change-Id: Ic8181d0288a8504e611437601f6b34e472fcac47 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871919Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#64420}
-
Clemens Backes authored
Before we can remove the deprecated methods, we need to provide default implementations for them. Then, we can remove all overrides in embedders, and finally remove the methods from v8. R=ulan@chromium.org CC=ahaas@chromium.org Bug: v8:9810 Change-Id: If9286dc8ba441c226c9a1d524832ff203ac4bce6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871915Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64419}
-
Michaël Zasso authored
On Windows with MSVC, the current code triggers a fatal error C1017 (invalid integer constant expression). Change-Id: I41c371a1d7909737052c03c830bb62c41154a192 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871918 Commit-Queue: Michaël Zasso <mic.besace@gmail.com> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#64418}
-
Jakob Gruber authored
V8 uses a backtracking regexp engine, which has the caveat that some regexp patterns can have exponential runtime behavior when excessive backtracking is involved. Especially when regexp patterns are user-controlled, it would be useful to be able to set an upper limit for a single regexp execution. This CL takes an initial step in that direction by adding a backtracking limit (intended to approximate execution time): - The limit is stored in the JSRegExp's data array. - A limit can currently only be set through the %NewRegExpWithLimit runtime function. - The limit is applied during interpreter execution. When exceeded, the interpreter stops execution and returns FAILURE (even if continued execution would at some later point have resulted in SUCCESS). In follow-up CLs, this mechanism will be extended to work in jitted regexp code, and exposed through the V8 API. Bug: v8:9695 Change-Id: Iadb5c100052f4a63b26f1ec49cf97c6713a66b9b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1864934 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#64417}
-
Milad Farazmand authored
Port afbbfcbe R=zhin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I5c2dc6f4ae185259f7b6fc23265c9eff495a599d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1869452Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#64416}
-
Leszek Swirski authored
This reverts commit ad9bd3a0. Reason for revert: Speculative revert for TSAN failures (https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20TSAN/28816) Original change's description: > [ptr-compr][CSA] Enable the DecompressionOptimizer phase in CSA > > Also update the MachineGraphVerifier to take into account the > possibility of the Store receiving a Compressed representation as well. > > Bug: v8:7703 > Change-Id: I6d6e28b980151af6296000cfe6f67a3a037b029c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1859627 > Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64410} TBR=jgruber@chromium.org,tebbi@chromium.org,solanes@chromium.org Change-Id: I805593d9b49503a20348a4b059049ed24345cf8e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7703 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871914Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#64415}
-
Leszek Swirski authored
This reverts commit 0347f00a. Reason for revert: MSAN failures (https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/29288) Original change's description: > Refactor platform tests to avoid deprecated API > > The old tasks API is deprecated and we want to remove it in 8.0. > Thus, this CL refactors the platform tests to use the new > TaskRunner-based API, and removes redundant tests. > > R=ahaas@chromium.org > > Bug: v8:9810 > Change-Id: Ie53c90184639e77b3247228059fd88290b233e0c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1868619 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64412} TBR=ahaas@chromium.org,clemensb@chromium.org Change-Id: I1b240df992425f25a2a4a9d33d27f6262d91c004 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9810 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871913Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#64414}
-
Clemens Backes authored
We still set a lot of macros depending on specific gcc versions. All these old versions are unsupported by now anyways, so we can also just define these macros as 1. If this CL sticks for a while, we can start actually cleaning up all code relying on these macros, as most of them should be 1 now on all platforms. R=ulan@chromium.org Bug: v8:9810 Change-Id: I2f9c55170091f8c263deeddfb7ff89e5b2a0bb12 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1862564Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64413}
-
Clemens Backes authored
The old tasks API is deprecated and we want to remove it in 8.0. Thus, this CL refactors the platform tests to use the new TaskRunner-based API, and removes redundant tests. R=ahaas@chromium.org Bug: v8:9810 Change-Id: Ie53c90184639e77b3247228059fd88290b233e0c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1868619Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64412}
-
Santiago Aboy Solanes authored
It was unused and the last commit was a long time ago. NOPRESUBMIT=true Change-Id: I5c4992cbc2e9977549787e21e4f5dac284291c58 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1863938Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#64411}
-
Santiago Aboy Solanes authored
Also update the MachineGraphVerifier to take into account the possibility of the Store receiving a Compressed representation as well. Bug: v8:7703 Change-Id: I6d6e28b980151af6296000cfe6f67a3a037b029c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1859627 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64410}
-
Mike Stanton authored
TurboFan can normally inline an arrow function closure callback like: [1, 2, 3].map(x => x * x); The serializer has information to support this in the form of FunctionBlueprint Hints, though it's not exploiting them. This CL remedies that. Bug: v8:7790 Change-Id: I8fc10f04ffc9bd2ea03cd761e8a5a41258000c76 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1863939Reviewed-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@{#64409}
-
Michael Achenbach authored
Bug: v8:9871 Change-Id: Ib2042002c1eba72b81fcd15811a627b13e7e3281 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1866770Reviewed-by: Tamer Tas <tmrts@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64408}
-
Jakob Gruber authored
This reverts commit dfd9ceb9. Reason for revert: Regressions https://chromeperf.appspot.com/group_report?rev=64356 https://crbug.com/1015749 Original change's description: > [regexp] Clone match info for match indices. > > The current behavior for generating match indices simply stashes a > pointer to the match info and then constructs the indices lazily. > However, it turns out the match info object used to create the result > object is the regexp_last_match_info living on native context, and thus > it can change between the creation of the result object and the generation > of indices. This cl clones the match info which will be safer. > > Bug: v8:9548 > Change-Id: Ia6f26f88fbc22fd09671bf4c579d39a1510b552d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1864585 > Commit-Queue: Joshua Litt <joshualitt@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64356} TBR=jgruber@chromium.org,joshualitt@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:9548, chromium:1015749 Change-Id: I9c30b8fb459cf2aa89d920bf061614441250844d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1870236 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64407}
-