- 03 Apr, 2019 1 commit
-
-
Paolo Severini authored
This is a reland of 3cda21de Original change's description: > V8 x64 backend doesn't emit ABI compliant stack frames > > On 64 bit Windows, the OS stack walking does not work because the V8 x64 > backend doesn't emit unwinding info and also because it doesn't emit ABI > compliant stack frames. See > https://docs.google.com/document/d/1-wf50jFlii0c_Pr52lm2ZU-49m220nhYMrHDi3vXnh0/edit > for more details. > > This problem can be fixed by observing that V8 frames usually all have the same > prolog and epilog: > > push rbp, > mov rbp, rsp > ... > pop rbp > ret N > > and that it is possible to define XDATA (UNWIND_CODEs) that specify how Windows > should walk through V8 frames. Furthermore, since V8 Code objects are all > allocated in the same code-range for an Isolate, it is possible to register a > single PDATA/XDATA entry to cover stack walking for all the code generated > inside that code-range. > > This PR contains changes required to enable stack walking on Win64: > > EmbeddedFileWriter now adds assembler directives to the builtins > snapshot source file (embedded.cc) to emit additional entries in the .pdata and > in the .xdata section of the V8 executable. This takes care of stack walking > for embedded builtins. (The case of non-embedded builtins is not supported). > The x64 Assembler has been modified to collect the information required to emit > this unwind info for builtins. > > Stack walking for jitted code is handled is Isolate.cpp, by registering > dynamically PDATA/XDATA for the whole code-range address space every time a new > Isolate is initialized, and by unregistering them when the Isolate is > destroyed. > > Stack walking for WASM jitted code is handled is the same way in > wasm::NativeModule (wasm/wasm-code-manager.cpp). > > It is important to note that Crashpad and Breakpad are already registering > PDATA/XDATA to manage and report unhandled exceptions (but not for embedded > builtins). Since it is not possible to register multiple PDATA entries for the > same address range, a new function is added to the V8 API: > SetUnhandledExceptionCallback() can be used by an embedder to register its own > unhandled exception handler for exceptions that arise in v8-generated code. > V8 embedders should be modified accordingly (code for this is in a separate PR > in the Chromium repository: > https://chromium-review.googlesource.com/c/chromium/src/+/1474703). > > All these changes are experimental, behind: > > the 'v8_win64_unwinding_info' build flag, and > the '--win64-unwinding-info' runtime flag. > > Bug: v8:3598 > Change-Id: Iea455ab6d0e2bf1c556aa1cf870841d44ab6e4b1 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1469329 > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Paolo Severini <paolosev@microsoft.com> > Cr-Commit-Position: refs/heads/master@{#60330} Bug: v8:3598 Change-Id: If988baf7d3e4af165b919d6e54c1ad985f8e25e3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1534618Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Paolo Severini <paolosev@microsoft.com> Cr-Commit-Position: refs/heads/master@{#60581}
-
- 02 Apr, 2019 19 commits
-
-
Sathya Gunasekaran authored
Bug: v8:7317 Change-Id: I54c0505bcdd4354a896a317ce756bc7121f61d48 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1548580Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#60580}
-
Michael Lippautz authored
Adds the following UMA counters: - V8.GCMarkingSum: Overall time spent in marking per GC cycle - V8.GCMainThreadMarkingThroughput: Overall marking throughput considering marking time spent on the main thread and allocated bytes after GC. Only reported if more than 1MB of live objects have been marked in the cycle. Bug: chromium:945806 Change-Id: I24a37bf59f02da9aba984bed9de62fdb39be8882 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547657 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60579}
-
Mythri A authored
There was a negation missing in the check. Bug: chromium:948559 Change-Id: I54cfdd8b83771d80aebe506e4c2793cef301e48b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549164 Auto-Submit: Mythri Alle <mythria@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#60578}
-
Tobias Tebbi authored
This reverts commit 6beea97e. Reason for revert: https://crbug.com/942497 Original change's description: > Reland^2 "[build] disable C++ optimization for mksnapshot code." > > This is a reland of a6b95a6a > > In addition to UBSan, also ASAN needs optimizations. > So this CL doesn't disable optimizations for all sanitizer builds. > > Original change's description: > > Reland "[build] disable C++ optimization for mksnapshot code." > > > > This is a reland of cee2f772 > > > > Original change's description: > > > [build] disable C++ optimization for mksnapshot code. > > > > > > By disabling C++ optimizations for code that's only run in mksnapshot, > > > that is, CSA and Torque-generated code, we can save compile time. > > > I observed up to 2x improvements of compile time for some files, > > > while the mksnapshot time did not increase significantly. > > > > > > Bug: v8:7629 > > > Change-Id: I96be2966611b2471b68023e0dd9e351d94f0013c > > > Reviewed-on: https://chromium-review.googlesource.com/c/1460941 > > > Reviewed-by: Yang Guo <yangguo@chromium.org> > > > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#59585} > > > > Bug: v8:7629 > > Change-Id: I8330f93173ab3d7b400e15ea4935bbe8256b250f > > Reviewed-on: https://chromium-review.googlesource.com/c/1473292 > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#59606} > > Bug: v8:7629 > Change-Id: I42175c472d8e41345573df81645dfe3accc9d8c4 > Reviewed-on: https://chromium-review.googlesource.com/c/1475396 > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > Cr-Commit-Position: refs/heads/master@{#59632} TBR=yangguo@chromium.org,sigurds@chromium.org,tebbi@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:7629 chromium:942497 Change-Id: Ie51d7b53440230b41fb763541908cb1162d8850d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549158 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#60577}
-
Sigurd Schneider authored
This reverts commit d746be9c. Reason for revert: Speculative revert because this CL *might* cause timeouts on several bots: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20predictable/23351 Original change's description: > [wasm] Use work-stealing queues for background compilation > > This reduces contention on the mutex protecting the {CompilationState} > by splitting the compilation unit queues into several queues (one per > background task). Each task executes its own queue first, and steals > from other queues once it runs out of work. > The implementation of the set of work-stealing queues is encapsulated > in the new {CompilationUnitQueues} class in module-compiler.cc. > > R=titzer@chromium.org > > Bug: v8:8916 > Change-Id: I5a40314917e7d4a35d7ff9e8ec124ec212beacab > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1543350 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60572} TBR=mstarzinger@chromium.org,titzer@chromium.org,clemensh@chromium.org Change-Id: I92d8862ec0ff0002160a62ed9df9b044fc95c93d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8916 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549166Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#60576}
-
peterwmwong authored
This is a reland of 660d8287 Original change's description: > [debug] Mark toLocaleString and TA#join builtins as side-effect free. > > Bug: chromium:940373 > Change-Id: If5f90ff5f873f0687c6a6a4063e0d09d6bbbd556 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1533157 > Reviewed-by: Yang Guo <yangguo@chromium.org> > Commit-Queue: Peter Wong <peter.wm.wong@gmail.com> > Cr-Commit-Position: refs/heads/master@{#60440} Bug: chromium:940373 Change-Id: I03fe4c06cad9848db211739170462d52ce3f7acf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1538791Reviewed-by: Simon Zünd <szuend@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Peter Wong <peter.wm.wong@gmail.com> Cr-Commit-Position: refs/heads/master@{#60575}
-
Igor Sheludko authored
... which doesn't respect address hints when reserving an address space region and therefore makes it impossible to fulfill V8 heap alignment requirements. As a workaround we just overreserve address space to ensure that we will be able to find a properly aligned 4GB subregion. Bug: v8:7703 Change-Id: Ibf54e5e13131c2640a448944e3a3bae937c8b938 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547861 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#60574}
-
Sigurd Schneider authored
Bug: v8:9020 Change-Id: I405d27541f76d1347ae91e5ab426ede72edb1f32 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541045 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#60573}
-
Clemens Hammacher authored
This reduces contention on the mutex protecting the {CompilationState} by splitting the compilation unit queues into several queues (one per background task). Each task executes its own queue first, and steals from other queues once it runs out of work. The implementation of the set of work-stealing queues is encapsulated in the new {CompilationUnitQueues} class in module-compiler.cc. R=titzer@chromium.org Bug: v8:8916 Change-Id: I5a40314917e7d4a35d7ff9e8ec124ec212beacab Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1543350 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60572}
-
Peter Marshall authored
Autoroller updated protobuf which has some different files now. Change-Id: If3b2f6452d30e754504e8798de5adb8706371cb5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547866 Auto-Submit: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#60571}
-
Michael Achenbach authored
This reverts commit 37cdcbcf. Reason for revert: https://crbug.com/948590 Original change's description: > Update V8 DEPS. > > Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/a72af28..af636cf > > Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/5b63b1f..83131f4 > > Rolling v8/third_party/perfetto: https://android.googlesource.com/platform/external/perfetto/+log/21a33af..cb85131 > > Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/82dbc02..fdca78e > > TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org > > Change-Id: I28eeadb22b369aab6bc89219bdaa31a3af35a65d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1548591 > Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60563} TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org,v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com Bug: chromium:948590 Change-Id: Ie04943a871ba1bf93094764e452173ea59acb220 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549157Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#60570}
-
Michael Achenbach authored
TBR=sigurds@chromium.org NOTRY=true Change-Id: I5c6988aa5670deaed59647e2dd4b40ee9c368a20 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549155Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#60569}
-
Sigurd Schneider authored
This happened because {EphemeronKeyWriteBarrierFromCode} will also be called if both table and key are in old-space, and key is an evacuation candidate. Bug: chromium:948307, v8:8557 Change-Id: Ic1284209584b74cb343163e4beec632a3f1544b8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547858 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60568}
-
Georg Neis authored
Bug: v8:7790 Change-Id: I44c722357434a32ae9400a0e44dbc522dafe873a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547849 Auto-Submit: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#60567}
-
Clemens Hammacher authored
This CL adds all the necessary {WasmCodeRefScope}s in the code base, or at least a good approximation. A follow-up CL will enable a check that a {WasmCodeRefScope} exists whenever a pointer to a {WasmCode} object is returned from the {NativeModule}. This should flush out any missing scopes. R=titzer@chromium.org Bug: v8:8217 Change-Id: I54c7eb39aeb1acde38273c399396e6b1390a4cb2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1533860 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60566}
-
Leszek Swirski authored
Don't just DCHECK that intrinsic calls are one-byte, but explicitly check and return (a failure) when they are not. Bug: chromium:948248 Change-Id: If2c16f337e9c97e5a585d21a51a985f4abbe1c29 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547857 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#60565}
-
Frederik Gossen authored
This is a reland of 09fa63a9 Original change's description: > [wasm-hints] Enabled Lazy Compilation by Hint > > Hints for lazy compilation are now taken into consideration. If the > custom hints section suggests lazy compilatin we do so unless the module > consists of a single function. > > Bug: v8:9003 > Change-Id: Ibdc400453cee20d4d5c814733887b38fb675b220 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535827 > Commit-Queue: Frederik Gossen <frgossen@google.com> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60557} Bug: v8:9003 No-Try: true Change-Id: I8d6f4518aa548c815fba4e6e62d2206129336cc6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547851 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60564}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/a72af28..af636cf Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/5b63b1f..83131f4 Rolling v8/third_party/perfetto: https://android.googlesource.com/platform/external/perfetto/+log/21a33af..cb85131 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/82dbc02..fdca78e TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I28eeadb22b369aab6bc89219bdaa31a3af35a65d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1548591Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#60563}
-
Clemens Hammacher authored
In {TryAllocateBackingStore} we already have two gc-and-retry loops. This CL adds a third one, and pulls out the gc-and-retry loop to a helper method. R=ulan@chromium.org Bug: v8:8898, chromium:909723 Change-Id: I830aa86b899223825d2e6abfcbacad0ccbf3485b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547666Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60562}
-
- 01 Apr, 2019 20 commits
-
-
Daniel Clifford authored
Change-Id: I873a8a53f93d0b43d18f6dbc620a2fa3f4b30d32 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547850Reviewed-by: Simon Zünd <szuend@chromium.org> Commit-Queue: Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#60561}
-
Milad Farazmand authored
This is a reland of dd07cbcf Original change's description: > PPC/S390: [heap] Clean-up keys of oldspace weakmaps during scavenge > > Port 6604f182 > > Original Commit Message: > > This CL adds handling for cleaning up weakmap (EphemeronHashTable) > keys during scavenge, even if the weakmap resides in oldspace. > > Change-Id: Idf8b6115e57b1229864afefe6ffee85acb5e7547 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1538320 > Reviewed-by: Milad Farazmand <miladfar@ca.ibm.com> > Reviewed-by: Junliang Yan <jyan@ca.ibm.com> > Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> > Commit-Queue: Junliang Yan <jyan@ca.ibm.com> > Cr-Commit-Position: refs/heads/master@{#60446} Change-Id: I8136d873cfc399c84a4daf4de9a1043f016561cb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1546561 Auto-Submit: Milad Farazmand <miladfar@ca.ibm.com> Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#60560}
-
Mythri A authored
Lower the interrupt budget so we allocate feedback vectors earlier. The earlier budget of 2048 causes ~3% regressions in speedometer. From earlier experiments, there was no noticeable memory savings between 2048 and 1024. Bug: v8:8394 Change-Id: I6327e22c4df60c262420975f2e204cdbacefb485 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547662Reviewed-by: Dan Elphick <delphick@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#60559}
-
Frederik Gossen authored
This reverts commit 09fa63a9. Reason for revert: Falkes on https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20shared/29942 Original change's description: > [wasm-hints] Enabled Lazy Compilation by Hint > > Hints for lazy compilation are now taken into consideration. If the > custom hints section suggests lazy compilatin we do so unless the module > consists of a single function. > > Bug: v8:9003 > Change-Id: Ibdc400453cee20d4d5c814733887b38fb675b220 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535827 > Commit-Queue: Frederik Gossen <frgossen@google.com> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60557} TBR=mstarzinger@chromium.org,clemensh@chromium.org,frgossen@google.com Change-Id: I18dd424fe8cf05f220f7498bb1ebe4b9fce7d240 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9003 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547668Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60558}
-
Frederik Gossen authored
Hints for lazy compilation are now taken into consideration. If the custom hints section suggests lazy compilatin we do so unless the module consists of a single function. Bug: v8:9003 Change-Id: Ibdc400453cee20d4d5c814733887b38fb675b220 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535827 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60557}
-
Michael Achenbach authored
TBR=sigurds@chromium.org NOTRY=true Change-Id: I1b7026b4cbd02932e315ce3e00d987e59f4e64f3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547663Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#60556}
-
Sigurd Schneider authored
Bug: v8:9032 Change-Id: Ibd607d164bbc31aa41887db51c4ade575a37b227 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547658Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#60555}
-
Sigurd Schneider authored
This is a reland of 6604f182 Original change's description: > [heap] Clean-up keys of oldspace weakmaps during scavenge > > This CL adds handling for cleaning up weakmap (EphemeronHashTable) > keys during scavenge, even if the weakmap resides in oldspace. > > Change-Id: If8d711c050ddbcae4dd6e8da549e0c0d08ba47b2 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1523787 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60432} CQ_INCLUDE_TRYBOTS=luci.chrome.try:Mac Builder Perf Change-Id: Ie640f2b0340637a5391fb17ba3c9e6422eaf306a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541476 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60554}
-
Mythri A authored
It is not safe to access flags from concurrent marking visitor. We access FLAG_flush_bytecode and FLAG_stress_flush_bytecode when visiting SharedFunctionInfo and JSFunction to decide if we need to collect bytecode. This cl adds a bytecode_flushing_mode which will be initialized when creating the visitor. This way we can avoid accessing flags. Bug: v8:9045 Change-Id: I84bf09ec2dd1543abad54bd87f8bf953830b89e7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541108Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#60553}
-
Mythri A authored
We added %PrepareForOptimization, that holds the bytecode array strongly until the function is optimized, to test using assertOptimized. This function expects that the function is optimized before preparing the next function for optimization. In some tests, we may not explicitly optimize a function because it got inlined into other functions or if it was already optimized. This cl relaxes this condition and holds onto multiple bytecode arrays. Bug: v8:8801, v8:8395 Change-Id: Iebccc4a798aa3f35be9ee295eb3c4917da659c22 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541055Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#60552}
-
Jaroslav Sevcik authored
Drive-by: make sure that Allocate node consistently take intptr input as size (as opposed to sometimes intptr, sometimes int32). Bug: v8:8984 Change-Id: Ida56b9788cd11b470cc866f1b7df71f03ef0075f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541037Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#60551}
-
Georg Neis authored
- We didn't take stability dependencies on the inferred maps in case of kUnreliableReceiverMaps. - We didn't take stability dependencies on the prototype chains. Bug: v8:9041 Change-Id: I85418dbed219f51e7fb46c59a0cb9cbb9b499bc1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541107 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#60550}
-
Georg Neis authored
It was missing a control output. Bug: chromium:946889 Change-Id: I85f203fc6e27a60f0b86e0e2999dd798a5416dfc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547655 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60549}
-
Sigurd Schneider authored
Bug: v8:9020 Change-Id: I67e052b3a15ef88c21d056ca824d32da68cbbcfd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541049 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#60548}
-
Sigurd Schneider authored
This is a reland of 5fbc5015 Original change's description: > [mjsunit] Add test that calls functions on prototypes with no arguments > > Change-Id: I0ede9f309b89cfa878a325e3f68327b1682d4ced > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1538123 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60541} TBR=jarin@chromium.org Change-Id: I409e3dab72057bcba6c729f3b181fc29e8c861ad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547654Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#60547}
-
Clemens Hammacher authored
Even though both are allowed in the style guide, it recommends to use 'using', as its syntax is more consistent with the rest of C++. This CL turns all typedefs in base code to 'using' declarations. R=mlippautz@chromium.org Bug: v8:8834 Change-Id: Ic5c3d7fa2e50938c6f43e9ff304dc2289fed1133 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547650Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60546}
-
Michael Lippautz authored
Without the proper check V8 would not delegate to the embedder (Blink) for processing wrappable objects. Bug: chromium:946941 Change-Id: I5aa3ca85e5113ab8d28a61eca6a5e0593c62f6a1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547649 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60545}
-
Clemens Hammacher authored
This reverts commit 5fbc5015. Reason for revert: Fails on noi18n: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20noi18n%20-%20debug/26006 Original change's description: > [mjsunit] Add test that calls functions on prototypes with no arguments > > Change-Id: I0ede9f309b89cfa878a325e3f68327b1682d4ced > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1538123 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60541} TBR=jarin@chromium.org,sigurds@chromium.org Change-Id: I4b9c747e6d73dd3ff01af81c3d1e6143dcab6ecd No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547652Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60544}
-
Georg Neis authored
... from Object to HeapObject, as they are never Smis. Change-Id: I4cbe12985091ed1b1e94dab2803a977ae3e25224 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541104 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60543}
-
Benedikt Meurer authored
The CheckNonEmptyString lowering was the wrong way around and would deoptimize if it doesn't see the empty string. This leads to the creation of invalid ConsStrings and also to unnecessary deopt loops with proper code. Bug: chromium:947949, v8:8834, v8:8931, v8:8939, v8:8951 Change-Id: Ib2cc4e92cc9ec7e0284d94f74d14f67f8c878dec Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1545908Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Auto-Submit: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60542}
-