- 31 Jul, 2019 1 commit
-
-
Seth Brenith authored
This is a reland of 517ab73f Updates since original: now compressed pointers passed to the function GetObjectProperties are required to be sign-extended. Previously, the function allowed zero-extended values, but that led to ambiguity on pointers like 0x88044919: is it compressed or is the heap range actually centered on 0x100000000? Original change's description: > Add postmortem debugging helper library > > This change begins to implement the functionality described in > https://docs.google.com/document/d/1evHnb1uLlSbvHAAsmOXyc25x3uh1DjgNa8u1RHvwVhk/edit# > for investigating V8 state in crash dumps. > > This change adds a new library, v8_debug_helper, for providing platform- > agnostic assistance with postmortem debugging. This library can be used > by extensions built for debuggers such as WinDbg or lldb. Its public API > is described by debug-helper.h; currently the only method it exposes is > GetObjectProperties, but we'd like to add more functionality over time. > The API surface is restricted to plain C-style structs and pointers, so > that it's easy to link from a debugger extension built with a different > toolchain. > > This change also adds a new cctest file to exercise some basic > interaction with the new library. > > The API function GetObjectProperties takes an object pointer (which > could be compressed, or weak, or a SMI), and returns a string > description of the object and a list of properties the object contains. > For now, the list of properties is entirely based on Torque object > definitions, but we expect to add custom properties in future updates so > that it can be easier to make sense of complex data structures such as > dictionaries. > > GetObjectProperties does several things that are intended to generate > somewhat useful results even in cases where memory may be corrupt or > unavailable: > - The caller may optionally provide a type string which will be used if > the memory for the object's Map is inaccessible. > - All object pointers are compared against the list of known objects > generated by mkgrokdump. The caller may optionally provide the > pointers for the first pages of various heap spaces, to avoid spurious > matches. If those pointers are not provided, then any matches are > prefixed with "maybe" in the resulting description string, such as > "maybe UndefinedValue (0x4288000341 <Oddball>)". > > Bug: v8:9376 > > Change-Id: Iebf3cc2dea3133c7811bcefcdf38d9458b02fded > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1628012 > Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62882} Bug: v8:9376 Change-Id: I866a1cc9d4c34bfe10c7b98462451fe69763cf3f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1717090Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#63008}
-
- 24 Jul, 2019 1 commit
-
-
Zhi An Ng authored
This reverts commit 517ab73f. Reason for revert: Test failures https://bugs.chromium.org/p/v8/issues/detail?id=9538 Original change's description: > Add postmortem debugging helper library > > This change begins to implement the functionality described in > https://docs.google.com/document/d/1evHnb1uLlSbvHAAsmOXyc25x3uh1DjgNa8u1RHvwVhk/edit# > for investigating V8 state in crash dumps. > > This change adds a new library, v8_debug_helper, for providing platform- > agnostic assistance with postmortem debugging. This library can be used > by extensions built for debuggers such as WinDbg or lldb. Its public API > is described by debug-helper.h; currently the only method it exposes is > GetObjectProperties, but we'd like to add more functionality over time. > The API surface is restricted to plain C-style structs and pointers, so > that it's easy to link from a debugger extension built with a different > toolchain. > > This change also adds a new cctest file to exercise some basic > interaction with the new library. > > The API function GetObjectProperties takes an object pointer (which > could be compressed, or weak, or a SMI), and returns a string > description of the object and a list of properties the object contains. > For now, the list of properties is entirely based on Torque object > definitions, but we expect to add custom properties in future updates so > that it can be easier to make sense of complex data structures such as > dictionaries. > > GetObjectProperties does several things that are intended to generate > somewhat useful results even in cases where memory may be corrupt or > unavailable: > - The caller may optionally provide a type string which will be used if > the memory for the object's Map is inaccessible. > - All object pointers are compared against the list of known objects > generated by mkgrokdump. The caller may optionally provide the > pointers for the first pages of various heap spaces, to avoid spurious > matches. If those pointers are not provided, then any matches are > prefixed with "maybe" in the resulting description string, such as > "maybe UndefinedValue (0x4288000341 <Oddball>)". > > Bug: v8:9376 > > Change-Id: Iebf3cc2dea3133c7811bcefcdf38d9458b02fded > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1628012 > Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62882} TBR=yangguo@chromium.org,mvstanton@chromium.org,jgruber@chromium.org,tebbi@chromium.org,seth.brenith@microsoft.com Change-Id: Ia078f2e8d101d2375b5db88021b2d65d28f1b075 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9376 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1716033Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#62899}
-
- 23 Jul, 2019 1 commit
-
-
Seth Brenith authored
This change begins to implement the functionality described in https://docs.google.com/document/d/1evHnb1uLlSbvHAAsmOXyc25x3uh1DjgNa8u1RHvwVhk/edit# for investigating V8 state in crash dumps. This change adds a new library, v8_debug_helper, for providing platform- agnostic assistance with postmortem debugging. This library can be used by extensions built for debuggers such as WinDbg or lldb. Its public API is described by debug-helper.h; currently the only method it exposes is GetObjectProperties, but we'd like to add more functionality over time. The API surface is restricted to plain C-style structs and pointers, so that it's easy to link from a debugger extension built with a different toolchain. This change also adds a new cctest file to exercise some basic interaction with the new library. The API function GetObjectProperties takes an object pointer (which could be compressed, or weak, or a SMI), and returns a string description of the object and a list of properties the object contains. For now, the list of properties is entirely based on Torque object definitions, but we expect to add custom properties in future updates so that it can be easier to make sense of complex data structures such as dictionaries. GetObjectProperties does several things that are intended to generate somewhat useful results even in cases where memory may be corrupt or unavailable: - The caller may optionally provide a type string which will be used if the memory for the object's Map is inaccessible. - All object pointers are compared against the list of known objects generated by mkgrokdump. The caller may optionally provide the pointers for the first pages of various heap spaces, to avoid spurious matches. If those pointers are not provided, then any matches are prefixed with "maybe" in the resulting description string, such as "maybe UndefinedValue (0x4288000341 <Oddball>)". Bug: v8:9376 Change-Id: Iebf3cc2dea3133c7811bcefcdf38d9458b02fded Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1628012 Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#62882}
-
- 09 May, 2019 1 commit
-
-
Sergiy Belozorov authored
R=machenbach@chromium.org, tmrts@chromium.org Bug: chromium:880724 Change-Id: I2b8ede244fa09868eef384b967223a3788ddd2a1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1581180 Commit-Queue: Sergiy Belozorov <sergiyb@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#61370}
-
- 23 Oct, 2018 1 commit
-
-
Michael Achenbach authored
NOTRY=true TBR=sergiyb@chromium.org Bug: chromium:830557 Change-Id: Ie9022b04cb5858654c6903f38031c860e8681b9e Reviewed-on: https://chromium-review.googlesource.com/c/1296478Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#56899}
-
- 28 Aug, 2018 1 commit
-
-
Lei Zhang authored
In the logic to run tests on Android, the path is currently relative. This only works when V8 is standalone. When V8 is checkout in another project, the path is wrong. The build_with_chromium check only helps with Chromium, but there are other V8 embedders. Change-Id: I52640a664deb39e5959ed3cc9dc79fd7b6d68758 Reviewed-on: https://chromium-review.googlesource.com/1189096Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Lei Zhang <thestig@chromium.org> Cr-Commit-Position: refs/heads/master@{#55439}
-
- 10 Aug, 2018 3 commits
-
-
Michael Achenbach authored
This is a reland of 4c094342 Original change's description: > [test] Add logic to run tests on Android > > This adds a new command abstraction for running commands on Android > using dockered devices on swarming. > > The new abstraction handles pushing all required files to the device. > The logic used for pushing and running is reused from the perf runner. > > This adds only the mjsunit test suite. Others will be handled in > follow up CLs. The suite logic is enhanced with auto-detection of files > to be pushed to devices, for e.g. load or import statements. > > Some test cases need an extra resource section for specifying required > files. > > Remaining failing tests are marked in the status files for later > triage. > > Bug: chromium:866862 > Change-Id: I2b957559f07fdcd8c1bd2f7034f5ba7754a31fb7 > Reviewed-on: https://chromium-review.googlesource.com/1150153 > Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55041} Bug: chromium:866862 Change-Id: Icf7e04c75d4abeab7254d10ba21240e46b0022ae Reviewed-on: https://chromium-review.googlesource.com/1170643Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#55059}
-
Sergiy Byelozyorov authored
This reverts commit 4c094342. Reason for revert: Unfortunately this broke all perf builders. Original change's description: > [test] Add logic to run tests on Android > > This adds a new command abstraction for running commands on Android > using dockered devices on swarming. > > The new abstraction handles pushing all required files to the device. > The logic used for pushing and running is reused from the perf runner. > > This adds only the mjsunit test suite. Others will be handled in > follow up CLs. The suite logic is enhanced with auto-detection of files > to be pushed to devices, for e.g. load or import statements. > > Some test cases need an extra resource section for specifying required > files. > > Remaining failing tests are marked in the status files for later > triage. > > Bug: chromium:866862 > Change-Id: I2b957559f07fdcd8c1bd2f7034f5ba7754a31fb7 > Reviewed-on: https://chromium-review.googlesource.com/1150153 > Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55041} TBR=machenbach@chromium.org,yangguo@chromium.org,sergiyb@chromium.org Change-Id: If80129810586b709dab762c9b5724888e15daec2 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:866862 Reviewed-on: https://chromium-review.googlesource.com/1170962Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#55058}
-
Michael Achenbach authored
This adds a new command abstraction for running commands on Android using dockered devices on swarming. The new abstraction handles pushing all required files to the device. The logic used for pushing and running is reused from the perf runner. This adds only the mjsunit test suite. Others will be handled in follow up CLs. The suite logic is enhanced with auto-detection of files to be pushed to devices, for e.g. load or import statements. Some test cases need an extra resource section for specifying required files. Remaining failing tests are marked in the status files for later triage. Bug: chromium:866862 Change-Id: I2b957559f07fdcd8c1bd2f7034f5ba7754a31fb7 Reviewed-on: https://chromium-review.googlesource.com/1150153Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#55041}
-
- 28 Mar, 2018 3 commits
-
-
Michael Achenbach authored
This is a reland of 712b66da Breakage is fixed on infra side by: https://crrev.com/c/983417 Original change's description: > [build] Remove legacy isolate configurations > > Bug: chromium:669910 > Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng > Change-Id: Iad58563fd4bb35501493f88af83362b1206a186c > Reviewed-on: https://chromium-review.googlesource.com/982630 > Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52267} Bug: chromium:669910 Change-Id: I6c06a1fe9587206aa4e983befb105327bfec4154 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Reviewed-on: https://chromium-review.googlesource.com/983573Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#52273}
-
Michael Achenbach authored
This reverts commit 712b66da. Reason for revert: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20builder/builds/32049 Original change's description: > [build] Remove legacy isolate configurations > > Bug: chromium:669910 > Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng > Change-Id: Iad58563fd4bb35501493f88af83362b1206a186c > Reviewed-on: https://chromium-review.googlesource.com/982630 > Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52267} TBR=machenbach@chromium.org,yangguo@chromium.org,sergiyb@chromium.org,jgruber@chromium.org Change-Id: I1955325b0b419b38d793ab205131de8de08cb50a No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:669910 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Reviewed-on: https://chromium-review.googlesource.com/983418Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#52268}
-
Michael Achenbach authored
Bug: chromium:669910 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Iad58563fd4bb35501493f88af83362b1206a186c Reviewed-on: https://chromium-review.googlesource.com/982630Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#52267}
-
- 26 Mar, 2018 2 commits
-
-
Michael Achenbach authored
Bug: chromium:669910 Change-Id: I35d146bbe265dfdd0059dd8d3ec4fc5ee54bb465 Reviewed-on: https://chromium-review.googlesource.com/979805 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#52219}
-
Michael Achenbach authored
Bug: chromium:669910 Change-Id: I03f6ef3121af047ea2c4e6b83ed67634f046ce71 Reviewed-on: https://chromium-review.googlesource.com/979796 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#52212}
-
- 19 Jan, 2018 1 commit
-
-
Michael Achenbach authored
This adds the benchmarks suite to the deopt fuzzer and removes the obsolete deopt configs, which since a while are part of the num-fuzz configs. TBR=sergiyb@chromium.org Bug: v8:6900 Change-Id: I9202e2a66a132eca5940b4444fda97816b034e54 Reviewed-on: https://chromium-review.googlesource.com/876085 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#50720}
-
- 17 Jan, 2018 1 commit
-
-
Michal Majewski authored
Bug: v8:6917 Change-Id: I0ee15a41b6028bdbf8448f066b0bc47a049ca587 Reviewed-on: https://chromium-review.googlesource.com/868154Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michał Majewski <majeski@google.com> Cr-Commit-Position: refs/heads/master@{#50647}
-
- 10 Nov, 2017 1 commit
-
-
Michael Achenbach authored
We'll use one generic isolate for all number fuzzers. The previous deopt isolate will be deleted, once the infra hooks have changed. Bug: v8:6917 Change-Id: I809613548cd935a0208febb002572cc063697324 Reviewed-on: https://chromium-review.googlesource.com/763534Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#49297}
-
- 11 Oct, 2017 1 commit
-
-
Michael Achenbach authored
Bug: v8:6566 Change-Id: If48fea99f2b1c8069dd20075bf4d9a6c6282bb7c Reviewed-on: https://chromium-review.googlesource.com/708757Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48439}
-
- 06 Jun, 2016 1 commit
-
-
machenbach authored
This switches a few underscores to dashes to match the infra- side definitions. BUG=chromium:474921 TBR=vogelheim@chromium.org, jochen@chromium.org NOTRY=true Review-Url: https://codereview.chromium.org/2045543002 Cr-Commit-Position: refs/heads/master@{#36753}
-
- 03 Jun, 2016 1 commit
-
-
machenbach authored
This adds corresponding *_run targets for all swarming isolate actions existing in gyp. This also wires all targets together under gn_all. BUG=chromium:474921 NOTRY=true Review-Url: https://codereview.chromium.org/2033813004 Cr-Commit-Position: refs/heads/master@{#36714}
-