- 09 Apr, 2019 1 commit
-
-
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 src/debug to 'using' declarations. R=jgruber@chromium.org Bug: v8:8834 Change-Id: I205e14a0b230a26119e5b209a2bcec493a8815e3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1545901Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60698}
-
- 04 Apr, 2019 1 commit
-
-
Sigurd Schneider authored
Bug: v8:9020 Change-Id: Ie624a02598f5c3a43e40e03d0337c17ca5cc3769 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541052 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#60628}
-
- 27 Feb, 2019 1 commit
-
-
Sathya Gunasekaran authored
This will allow the devtools UI to display private fields on the scope panel. Instead of extending GetInternalProperties, we expose a separate GetPrivateFields method on the debug interface. This allows us to do better type checking, for example, we can directly cast to a v8::Private as this can only contain private fields. This also allows us to have better constraints on the input type -- v8::Object, as opposed to a v8::Value. The KeyAccumulator is extended to collect private names for the PRIVATE_NAMES_ONLY PropertyFilter. Bug: v8:8773 Change-Id: Id47c551186c59dae9a06721074ef78144f25892f Reviewed-on: https://chromium-review.googlesource.com/c/1475664 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Reviewed-by: Daniel Ehrenberg <littledan@chromium.org> Cr-Commit-Position: refs/heads/master@{#59920}
-
- 01 Feb, 2019 2 commits
-
-
Marja Hölttä authored
BUG=v8:7490,v8:8562 Change-Id: I0fb021492d723abe59728cc23bd4b138d68b702e Reviewed-on: https://chromium-review.googlesource.com/c/1449614Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#59286}
-
Marja Hölttä authored
BUG=v8:7490,v8:8562 Change-Id: I156b0123ed2da3143c353b164fb80e89f279545e Reviewed-on: https://chromium-review.googlesource.com/c/1449572Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#59280}
-
- 26 Dec, 2018 1 commit
-
-
Jakob Kummerow authored
Tbr: ahaas@chromium.org,leszeks@chromium.org,verwaest@chromium.org Bug: v8:3770 Change-Id: Ia6530fbb70dac05e9972283781c3550d8b50e1eb Reviewed-on: https://chromium-review.googlesource.com/c/1390116 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Alexei Filippov <alph@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58470}
-
- 17 Dec, 2018 1 commit
-
-
Jakob Kummerow authored
BreakPoint, BreakPointInfo, DebugInfo Bug: v8:3770 Change-Id: Ibad956b0933b5e994407475faaf4a8770e455318 Reviewed-on: https://chromium-review.googlesource.com/c/1377458 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#58269}
-
- 08 Dec, 2018 1 commit
-
-
Jakob Kummerow authored
Bug: v8:3770 Change-Id: I1d74ffe9e5478b4b8bc0acbf088d20919d458d50 Reviewed-on: https://chromium-review.googlesource.com/c/1363822 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#58112}
-
- 27 Nov, 2018 1 commit
-
-
Ross McIlroy authored
When restarting a frame on returning from a debug break, we are going to drop the current function frame, therefore the return value and next bytecode are not going to be used. Special case these situations since with bytecode flushing it is possible the SFI for the executing function might have been flushed (if edited by liveedit) which causes failures when trying to read from the bytecode array. BUG=v8:8395 Change-Id: I18adaa5d91c244e6d13e8703ed41c300f793681d Reviewed-on: https://chromium-review.googlesource.com/c/1352270 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#57875}
-
- 31 Oct, 2018 3 commits
-
-
Jakob Kummerow authored
and reland "[ubsan] More Object** replacements" This reverts commit 162d4e6d. Reason for revert: Not the culprit, test failed before. Original change's description: > Revert "[ubsan] Replace Object** in GlobalHandles" > > This reverts commit 93927279. > > Reason for revert: Speculative revert, seems the most probable cause of > https://bugs.chromium.org/p/v8/issues/detail?id=8396 > > Revert "[ubsan] More Object** replacements" > > This reverts commit 5cce694d. > > Speculative revert. > > NOTRY=true > > Bug: v8:8396 > Change-Id: I9c2866a9db707cd03e4cf90822acde20813cebf0 > Reviewed-on: https://chromium-review.googlesource.com/c/1309761 > Commit-Queue: Maya Lekova <mslekova@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57174} TBR=yangguo@chromium.org,mstarzinger@chromium.org,mslekova@chromium.org Bug: v8:8396 Change-Id: I64fc80804b4ec324cef80ac528d08b724963f7f7 Reviewed-on: https://chromium-review.googlesource.com/c/1311813Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#57194}
-
Maya Lekova authored
This reverts commit 93927279. Reason for revert: Speculative revert, seems the most probable cause of https://bugs.chromium.org/p/v8/issues/detail?id=8396 Revert "[ubsan] More Object** replacements" This reverts commit 5cce694d. Speculative revert. NOTRY=true Bug: v8:8396 Change-Id: I9c2866a9db707cd03e4cf90822acde20813cebf0 Reviewed-on: https://chromium-review.googlesource.com/c/1309761 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57174}
-
Jakob Kummerow authored
as part of the continuing quest to get rid of Object*/Object** entirely. Since it fits nicely, this CL as a bonus includes the planned change to make Handle::location() return an Address*, in the process dropping the temporarily needed duplicate Handle::location_as_address_ptr(). Bug: v8:3770 Change-Id: I87480289ce2a62ea1ae503e73d179256b7108c5c Reviewed-on: https://chromium-review.googlesource.com/c/1298389Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#57153}
-
- 28 Sep, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
Sometimes we do not have promise on stack, e.g. Promise.reject call, but we need to attribute this pause with promise rejection. TBR=yangguo@chromium.org Bug: chromium:755728 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I03ca1e1cd6c21677f0a12ece626e2c8a1938437b Reviewed-on: https://chromium-review.googlesource.com/1249942Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#56293}
-
- 11 Sep, 2018 1 commit
-
-
Clemens Hammacher authored
The macro has been deprecated since 2016, and it keeps confusing me, so let's just remove it completely from the code base. R=leszeks@chromium.org TBR=mstarzinger@chromium.org, verwaest@chromium.org, jgruber@chromium.org Bug: v8:8015 Change-Id: Ibe1122fd9d2624bc94873d9c51dc8499c54a04fd Reviewed-on: https://chromium-review.googlesource.com/1209322Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55779}
-
- 10 Sep, 2018 1 commit
-
-
Florian Sattler authored
Bug: v8:8015 Change-Id: I3a3bd587e1f126b533a1eaea1ff9f74c2d0102b0 Reviewed-on: https://chromium-review.googlesource.com/1209847Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#55753}
-
- 04 Sep, 2018 1 commit
-
-
Yang Guo authored
Also extend the API to reflect this new feature. R=jgruber@chromium.org, szuend@google.com, ulan@chromium.org Bug: v8:8125 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ic7a7604a8c663ba04b324eb8902ff325a25654e7 Reviewed-on: https://chromium-review.googlesource.com/1202087Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55604}
-
- 03 Sep, 2018 1 commit
-
-
Yang Guo authored
This reverts commit 1b3b808a. Reason for revert: crbug/879988 TBR=kozy@chromium.org Original change's description: > inspector: find magic comment using V8 scanner > > Inspector tries to provide sourceURL and sourceMappingURL for scripts > with parser errors. Without this CL we convert source of each script > to inspector string and search for magic comment there. Some web sites > use pattern when they get some data from network and constantly try to > parse this data as JSON, in this case we do a lot of useless work. > > So we can parse magic comments on V8 side only for compilation errors > (excluding parse JSON errors), to do it we can reuse scanner by running > it on each potential comment. > > R=alph@chromium.org,verwaest@chromium.org,yangguo@chromium.org > > Bug: chromium:873865,v8:7731 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: I77c270fd0e95cd7b2c9ee4b7f72ef344bc1fa104 > Reviewed-on: https://chromium-review.googlesource.com/1182446 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Alexei Filippov <alph@chromium.org> > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55280} TBR=alph@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org,verwaest@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:873865, v8:7731, chromium:879988 Change-Id: Ia7ac766e19f9b58562d9430811f10b25c4556a46 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1202583 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55594}
-
- 29 Aug, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
This is a reland of 1b3b808a Original change's description: > inspector: find magic comment using V8 scanner > > Inspector tries to provide sourceURL and sourceMappingURL for scripts > with parser errors. Without this CL we convert source of each script > to inspector string and search for magic comment there. Some web sites > use pattern when they get some data from network and constantly try to > parse this data as JSON, in this case we do a lot of useless work. > > So we can parse magic comments on V8 side only for compilation errors > (excluding parse JSON errors), to do it we can reuse scanner by running > it on each potential comment. > > R=alph@chromium.org,verwaest@chromium.org,yangguo@chromium.org > > Bug: chromium:873865,v8:7731 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: I77c270fd0e95cd7b2c9ee4b7f72ef344bc1fa104 > Reviewed-on: https://chromium-review.googlesource.com/1182446 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Alexei Filippov <alph@chromium.org> > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55280} TBR=alph@chromium.org,verwaest@chromium.org,yangguo@chromium.org Bug: chromium:873865, v8:7731 Change-Id: I097678fda0ebdcbd35a85be0bb6cf0fcb052bcbd Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1195533 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55507}
-
- 22 Aug, 2018 1 commit
-
-
Maya Lekova authored
This reverts commit 1b3b808a. Reason for revert: Speculatively reverting because of https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8-Blink%20Linux%2064%20(dbg)/13264 Original change's description: > inspector: find magic comment using V8 scanner > > Inspector tries to provide sourceURL and sourceMappingURL for scripts > with parser errors. Without this CL we convert source of each script > to inspector string and search for magic comment there. Some web sites > use pattern when they get some data from network and constantly try to > parse this data as JSON, in this case we do a lot of useless work. > > So we can parse magic comments on V8 side only for compilation errors > (excluding parse JSON errors), to do it we can reuse scanner by running > it on each potential comment. > > R=alph@chromium.org,verwaest@chromium.org,yangguo@chromium.org > > Bug: chromium:873865,v8:7731 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: I77c270fd0e95cd7b2c9ee4b7f72ef344bc1fa104 > Reviewed-on: https://chromium-review.googlesource.com/1182446 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Alexei Filippov <alph@chromium.org> > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55280} TBR=alph@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org,verwaest@chromium.org Change-Id: I60ab243107d5fcce100064232d0e278a51f38db9 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:873865, v8:7731 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1184921Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#55300}
-
- 21 Aug, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
Inspector tries to provide sourceURL and sourceMappingURL for scripts with parser errors. Without this CL we convert source of each script to inspector string and search for magic comment there. Some web sites use pattern when they get some data from network and constantly try to parse this data as JSON, in this case we do a lot of useless work. So we can parse magic comments on V8 side only for compilation errors (excluding parse JSON errors), to do it we can reuse scanner by running it on each potential comment. R=alph@chromium.org,verwaest@chromium.org,yangguo@chromium.org Bug: chromium:873865,v8:7731 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I77c270fd0e95cd7b2c9ee4b7f72ef344bc1fa104 Reviewed-on: https://chromium-review.googlesource.com/1182446Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Alexei Filippov <alph@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55280}
-
- 17 Aug, 2018 1 commit
-
-
Sigurd Schneider authored
This reduced the number of targets depending on assembler.h from ~900 to ~350. Bug: v8:8054 Change-Id: I74ae2ce7a4b27791d0ee25542ee0b2175bedf5f7 Reviewed-on: https://chromium-review.googlesource.com/1174534 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55188}
-
- 13 Aug, 2018 2 commits
-
-
Yang Guo authored
This simplifies a bit. R=jgruber@chromium.org Change-Id: If7a433c9d2b13edf4fe4485816ac5ab06435773e Reviewed-on: https://chromium-review.googlesource.com/1172299Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55084}
-
Yang Guo authored
The break id is no longer used. Bug: v8:5530 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ib07046d66497cbd5e01a8a1248afd890180200bf Reviewed-on: https://chromium-review.googlesource.com/1172136Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55074}
-
- 03 Aug, 2018 1 commit
-
-
Ben Newman authored
I have a project that embeds V8 and uses a single `Isolate` from multiple threads. The program runs just fine, but sometimes the inspector doesn't stop on the correct line after stepping over a statement that switches threads behind the scenes, even though the original thread is restored by the time the next statement is executed. After some digging, I discovered that the `Debug::ArchiveDebug` and `Debug::RestoreDebug` methods, which should be responsible for saving/restoring this `ThreadLocal` information when switching threads, currently don't do anything. This commit implements those methods using MemCopy, in the style of other Archive/Restore methods in the V8 codebase. Related: https://groups.google.com/forum/#!topic/v8-users/_Qf2rwljRk8 Note: I believe my employer, Meteor Development Group, has previously signed the CLA using the group email address google-contrib@meteor.com. R=yangguo@chromium.org,jgruber@chromium.org CC=info@bnoordhuis.nl Bug: v8:7230 Change-Id: Id517c873eb81cd53f7216c7efd441b956cf7f943 Reviewed-on: https://chromium-review.googlesource.com/833260 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#54902}
-
- 23 Jul, 2018 1 commit
-
-
Stephan Herhut authored
This moves the static handle() helper function to handles-inl.h as it ultimately depends on handles-inl.h anyway. To make this possible, also move some other code to -inl.h files and split up some header files into a -inl.h part. Bug: v8:7490 Change-Id: I0f68e0728ba082b87ffa911aaf205d9b1523d2c9 Reviewed-on: https://chromium-review.googlesource.com/1146723Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Stephan Herhut <herhut@chromium.org> Cr-Commit-Position: refs/heads/master@{#54617}
-
- 20 Jul, 2018 1 commit
-
-
Marja Hölttä authored
BUG=v8:7754,v8:5402 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I5306005e7d0fcfe188c9e0270a003c6e1098c9e9 Reviewed-on: https://chromium-review.googlesource.com/1144824Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#54578}
-
- 05 Jul, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
After liveedit removed - we do not need this context any more. R=yangguo@chromium.org TBR=clemensh@chromium.org Bug: v8:5530 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Idb43d016d51b8048f6cd2ca590fd7510abcacb49 Reviewed-on: https://chromium-review.googlesource.com/1106802 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#54273}
-
- 03 Jul, 2018 3 commits
-
-
Alexey Kozyatinskiy authored
This is a reland of 3dfaf826 Original change's description: > [debug] liveedit in native > > Liveedit step-by-step: > 1. calculate diff between old source and new source, > 2. map function literals from old source to new source, > 3. create new script for new_source, > 4. mark literals with changed code as changed, all others as unchanged, > 5. check that for changed literals there are no: > - running generators in the heap, > - non droppable frames (e.g. running generator) above them on stack. > 6. mark the bottom most frame with changed function as scheduled for > restart if any. > 7. for unchanged functions: > - deoptimize, > - remove from cache, > - update source positions, > - move to new script, > - reset feedback information and preparsed scope information if any, > - replace any sfi in constant pool with changed one if any. > 8. for changed functions: > - deoptimize > - remove from cache, > - reset feedback information, > - update all links from js functions to old shared with new one. > 9. swap scripts. > > TBR=ulan@chromium.org > > Bug: v8:7862,v8:5713 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: I8f6f6156318cc82d6f36d7ebc1c9f7d5f3aa1461 > Reviewed-on: https://chromium-review.googlesource.com/1105493 > Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Dmitry Gozman <dgozman@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54146} TBR=dgozman@chromium.org Bug: v8:7862, v8:5713 Change-Id: I163ed2fd2ca3115ba0de74cb35a6fac9e40fdd94 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1124879 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#54187}
-
Yang Guo authored
This reverts commit 3dfaf826. Reason for revert: Failures - https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20gcc%204.8/20394 Original change's description: > [debug] liveedit in native > > Liveedit step-by-step: > 1. calculate diff between old source and new source, > 2. map function literals from old source to new source, > 3. create new script for new_source, > 4. mark literals with changed code as changed, all others as unchanged, > 5. check that for changed literals there are no: > - running generators in the heap, > - non droppable frames (e.g. running generator) above them on stack. > 6. mark the bottom most frame with changed function as scheduled for > restart if any. > 7. for unchanged functions: > - deoptimize, > - remove from cache, > - update source positions, > - move to new script, > - reset feedback information and preparsed scope information if any, > - replace any sfi in constant pool with changed one if any. > 8. for changed functions: > - deoptimize > - remove from cache, > - reset feedback information, > - update all links from js functions to old shared with new one. > 9. swap scripts. > > TBR=ulan@chromium.org > > Bug: v8:7862,v8:5713 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: I8f6f6156318cc82d6f36d7ebc1c9f7d5f3aa1461 > Reviewed-on: https://chromium-review.googlesource.com/1105493 > Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Dmitry Gozman <dgozman@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54146} TBR=dgozman@chromium.org,ulan@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org Change-Id: I45df5b6f3abaf29e593c6ac11edefbd0177d0109 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7862, v8:5713 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1124159Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#54151}
-
Alexey Kozyatinskiy authored
Liveedit step-by-step: 1. calculate diff between old source and new source, 2. map function literals from old source to new source, 3. create new script for new_source, 4. mark literals with changed code as changed, all others as unchanged, 5. check that for changed literals there are no: - running generators in the heap, - non droppable frames (e.g. running generator) above them on stack. 6. mark the bottom most frame with changed function as scheduled for restart if any. 7. for unchanged functions: - deoptimize, - remove from cache, - update source positions, - move to new script, - reset feedback information and preparsed scope information if any, - replace any sfi in constant pool with changed one if any. 8. for changed functions: - deoptimize - remove from cache, - reset feedback information, - update all links from js functions to old shared with new one. 9. swap scripts. TBR=ulan@chromium.org Bug: v8:7862,v8:5713 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I8f6f6156318cc82d6f36d7ebc1c9f7d5f3aa1461 Reviewed-on: https://chromium-review.googlesource.com/1105493Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#54146}
-
- 02 Jul, 2018 1 commit
-
-
jgruber authored
git grep 'V(\w*' src/external-reference.h | sed 's/.*V(\(\w*\).*/\1/' | sort | uniq | while read e; do echo -n "$e "; git grep "ExternalReference::$e" | wc -l; done Bug: v8:7754 Change-Id: I702ada4a98a1f1d51b2f4e890dbb5a7abb8c5731 Reviewed-on: https://chromium-review.googlesource.com/1122227Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#54136}
-
- 28 Jun, 2018 1 commit
-
-
Ross McIlroy authored
Merges DebugInfo field into the function_identifier field, storing the function identifier in the DebugInfo. Also moves some debugging_hints bits to the SFI flags, and others to the DebugInfo. Finally, changes the logic to store debugger patched bytecode array on the SFI instead of the DebugInfo, simplifying the logic in the InterpreterEntryTrampoline. BUG=chromium:818642,chromium:783853 TBR=hpayer@chromium.org Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: If440080c0f08fac4fb96f5e18dcc0eb9b86d4821 Reviewed-on: https://chromium-review.googlesource.com/1115819 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54081}
-
- 22 Jun, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
It looks like we do not need live_edit flag. R=dgozman@chromium.org,yangguo@chromium.org Bug: v8:7862 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I2b635f7d24138894b7a0f94fc90293d50e40f22c Reviewed-on: https://chromium-review.googlesource.com/1108386 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53980}
-
- 21 Jun, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
After this CL all liveedit tests call the same LiveEdit::PatchScript method. This method will be updated later. As well some new liveedit cctests added, unfortunately part of them do not work with current implementation. R=dgozman@chromium.org,yangguo@chromium.org Bug: v8:7862 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I3521af12b0f95b39d13aaafb1d1cf60f3f642a97 Reviewed-on: https://chromium-review.googlesource.com/1108382 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Cr-Commit-Position: refs/heads/master@{#53936}
-
- 20 Jun, 2018 2 commits
-
-
Leszek Swirski authored
Bug: v8:7786 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: If9904fe8feb9b4e157d42d6e84f1aa263abcc8b7 Reviewed-on: https://chromium-review.googlesource.com/1106160 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#53882}
-
Leszek Swirski authored
Bug: v8:7786 Change-Id: I369eb0bf32d89603b6b944c2bb8fe402a16e429b Reviewed-on: https://chromium-review.googlesource.com/1104423 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53880}
-
- 05 Jun, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
Currently we enable instrumentation if debugger is active. With this approach we can not: - capture async stack when debugger is disabled, - avoid async instrumentation overhead when debugger is enabled and async stacks are disabled. R=dgozman@chromium.org,yangguo@chromium.org Bug: none Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I19400c4c4e12b6c9b5a980fb6bd3293bac6e6a64 Reviewed-on: https://chromium-review.googlesource.com/1081494 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Cr-Commit-Position: refs/heads/master@{#53530}
-
- 03 Jun, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
Removed most of mirrors.js and debug.js. Further steps: - migrate liveedit.js to native, - remove debugger context. R=yangguo@chromium.org TBR=leszeks@chromium.org Bug: v8:5530 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I291ef20ef3c63a424d32e3e0c9d0962a6ca382d1 Reviewed-on: https://chromium-review.googlesource.com/1081176 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Cr-Commit-Position: refs/heads/master@{#53480}
-
- 30 May, 2018 2 commits
-
-
Alexey Kozyatinskiy authored
New intstrumentation consists of: - kAsyncFunctionSuspended when async function is suspended on await (called on each await), - kAsyncFunctionFinished when async function is finished. Old instrumentation was based on reusing async function promise. Using this promise produces couple side effects: - for any promise instrumentation we first need to check if it is special case for async function promise or not - it requires expensive reading from promise object. - we capture stack for async functions even if it does not contain awaits. - we do not properly cancel async task created for async function. New intsrumntation resolved all these problems as well as provide clear mapping between async task and generator which we can use later to fetch scope information for async functions on pause. R=dgozman@chromium.org,yangguo@chromium.org Bug: v8:7078 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ifdcec947d91e6e3d4d5f9029bc080a19b8e23d41 Reviewed-on: https://chromium-review.googlesource.com/1043096Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#53445}
-
Alexey Kozyatinskiy authored
With this CL we use interrupt for pause in two cases: - when we process Debugger.pause on interruption, - when we would like to break as soon as possible after OOM. In all other cases, e.g. for async step into we use break on function call by calling StepIn debugger action. In mentioned cases we should not actually use interrupt as well: - Debugger.pause in this case scheduled using interrupt and we may just break right now without requesting another interrupt, unfortunately blink side is not ready, - we should use more reliable way to break right after near OOM callback, otherwise we can get this callback, increase limit, request break on next interrupt, before interrupt get another huge memory allocation and crash. There are couple advantages: - we get much better break locations for async stepping (see inspector tests expectations), - we can remove DEBUG_BREAK interruption (it should speedup blackboxing with async tasks, see removed todo in debug.cc for details) - it is required preparation step for async step out, (see https://chromium-review.googlesource.com/c/v8/v8/+/1054618) Bug: v8:7753 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Iabd7627dbffa9a0eab1736064caf589d02591926 Reviewed-on: https://chromium-review.googlesource.com/1054155 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Cr-Commit-Position: refs/heads/master@{#53439}
-