Author: Jason Molenda
Date: 2023-11-30T14:59:10-08:00
New Revision: 9e77d666d88d407a7705caa623f7bfc8dc90287d
URL:
https://github.com/llvm/llvm-project/commit/9e77d666d88d407a7705caa623f7bfc8dc90287d
DIFF:
https://github.com/llvm/llvm-project/commit/9e77d666d88d407a7705caa623f7bfc8dc90287d.diff
@@ -63,13 +68,30 @@ class Progress {
///
/// @param [in] title The title of this progress activity.
///
- /// @param [in] total The total units of work to be done if specified, if
- /// set to UINT64_MAX then an indeterminate progress indicator should be
+ /// @param [
@@ -63,13 +68,30 @@ class Progress {
///
/// @param [in] title The title of this progress activity.
///
- /// @param [in] total The total units of work to be done if specified, if
- /// set to UINT64_MAX then an indeterminate progress indicator should be
+ /// @param [
@@ -97,12 +119,17 @@ class Progress {
/// The title of the progress activity.
std::string m_title;
std::mutex m_mutex;
+ /// Set to eNonAggregateProgressReport if the progress event is aggregate;
jasonmolenda wrote:
I'm a little confused by this comment
@@ -55,6 +55,11 @@ namespace lldb_private {
class Progress {
public:
+ /// Enum that indicates the type of progress report
+ enum class ProgressReportType {
+eAggregateProgressReport,
+eNonAggregateProgressReport
jasonmolenda wrote:
I wonder if it m
@@ -55,6 +55,11 @@ namespace lldb_private {
class Progress {
public:
+ /// Enum that indicates the type of progress report
+ enum class ProgressReportType {
+eAggregateProgressReport,
+eNonAggregateProgressReport
jasonmolenda wrote:
Maybe eSolitaryP
https://github.com/jasonmolenda approved this pull request.
lgtm
https://github.com/llvm/llvm-project/pull/74687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/jasonmolenda approved this pull request.
This looks good to me. Do you think we take the frame variable test in
API/functionalities/location-list-lookup/TestLocationListLookup.py and add it
to your test? They're testing the same thing, and getting there the same way
so I'm
https://github.com/jasonmolenda created
https://github.com/llvm/llvm-project/pull/77538
The "kern ver str" LC_NOTE gives lldb a kernel version string -- with a UUID
and/or a load address (stext) to load it at. The LC_NOTE specifies a size of
the identifier string in bytes. In ObjectFileMachO:
https://github.com/jasonmolenda closed
https://github.com/llvm/llvm-project/pull/77538
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Author: Jason Molenda
Date: 2023-07-06T18:00:09-07:00
New Revision: c3192196aea279eea0a87247a02f224ebe067c44
URL:
https://github.com/llvm/llvm-project/commit/c3192196aea279eea0a87247a02f224ebe067c44
DIFF:
https://github.com/llvm/llvm-project/commit/c3192196aea279eea0a87247a02f224ebe067c44.diff
Author: Jason Molenda
Date: 2023-07-06T18:23:54-07:00
New Revision: 9895c8979a4f025a112d0830a8f59f1820c8c49e
URL:
https://github.com/llvm/llvm-project/commit/9895c8979a4f025a112d0830a8f59f1820c8c49e
DIFF:
https://github.com/llvm/llvm-project/commit/9895c8979a4f025a112d0830a8f59f1820c8c49e.diff
Author: Jason Molenda
Date: 2023-07-07T14:48:32-07:00
New Revision: ec360faeb30408255ebece11f36a2ad42ddc6294
URL:
https://github.com/llvm/llvm-project/commit/ec360faeb30408255ebece11f36a2ad42ddc6294
DIFF:
https://github.com/llvm/llvm-project/commit/ec360faeb30408255ebece11f36a2ad42ddc6294.diff
Author: Jason Molenda
Date: 2023-07-12T15:01:39-07:00
New Revision: bb136f5b393c7c7fe821242d2734bbc5c7287560
URL:
https://github.com/llvm/llvm-project/commit/bb136f5b393c7c7fe821242d2734bbc5c7287560
DIFF:
https://github.com/llvm/llvm-project/commit/bb136f5b393c7c7fe821242d2734bbc5c7287560.diff
Author: Jason Molenda
Date: 2023-07-12T16:03:57-07:00
New Revision: 71548de4d885b74e7291db55e8705417ffd49c95
URL:
https://github.com/llvm/llvm-project/commit/71548de4d885b74e7291db55e8705417ffd49c95
DIFF:
https://github.com/llvm/llvm-project/commit/71548de4d885b74e7291db55e8705417ffd49c95.diff
Author: Jason Molenda
Date: 2023-07-20T15:16:02-07:00
New Revision: 259e3f2a4fef5ff2cdc0086f432bbfd2493653f5
URL:
https://github.com/llvm/llvm-project/commit/259e3f2a4fef5ff2cdc0086f432bbfd2493653f5
DIFF:
https://github.com/llvm/llvm-project/commit/259e3f2a4fef5ff2cdc0086f432bbfd2493653f5.diff
Author: Jason Molenda
Date: 2023-08-07T15:19:45-07:00
New Revision: 57cbd26a68ab61631f5f4272d3c90df2eb0ce4f6
URL:
https://github.com/llvm/llvm-project/commit/57cbd26a68ab61631f5f4272d3c90df2eb0ce4f6
DIFF:
https://github.com/llvm/llvm-project/commit/57cbd26a68ab61631f5f4272d3c90df2eb0ce4f6.diff
Author: Jason Molenda
Date: 2023-08-08T15:49:53-07:00
New Revision: c5f81100e4471dfc2a802afb9333ca2684e02f8e
URL:
https://github.com/llvm/llvm-project/commit/c5f81100e4471dfc2a802afb9333ca2684e02f8e
DIFF:
https://github.com/llvm/llvm-project/commit/c5f81100e4471dfc2a802afb9333ca2684e02f8e.diff
Author: Jason Molenda
Date: 2023-08-08T17:10:20-07:00
New Revision: 1290869ef2f72b7d59a92fa3cd48e6da29686c71
URL:
https://github.com/llvm/llvm-project/commit/1290869ef2f72b7d59a92fa3cd48e6da29686c71
DIFF:
https://github.com/llvm/llvm-project/commit/1290869ef2f72b7d59a92fa3cd48e6da29686c71.diff
Author: Jason Molenda
Date: 2023-08-08T17:30:57-07:00
New Revision: 0d8d31bbf55cedc1dad5c165187a084c1430f407
URL:
https://github.com/llvm/llvm-project/commit/0d8d31bbf55cedc1dad5c165187a084c1430f407
DIFF:
https://github.com/llvm/llvm-project/commit/0d8d31bbf55cedc1dad5c165187a084c1430f407.diff
Author: Jason Molenda
Date: 2023-08-11T14:20:38-07:00
New Revision: ebf249066ac5c7917064eb56a9e51c21000cdf93
URL:
https://github.com/llvm/llvm-project/commit/ebf249066ac5c7917064eb56a9e51c21000cdf93
DIFF:
https://github.com/llvm/llvm-project/commit/ebf249066ac5c7917064eb56a9e51c21000cdf93.diff
Author: Jason Molenda
Date: 2023-08-15T13:21:33-07:00
New Revision: 3ad618f4aea1ef7442f7ff75d92632aec177a4fd
URL:
https://github.com/llvm/llvm-project/commit/3ad618f4aea1ef7442f7ff75d92632aec177a4fd
DIFF:
https://github.com/llvm/llvm-project/commit/3ad618f4aea1ef7442f7ff75d92632aec177a4fd.diff
Author: Jason Molenda
Date: 2023-08-15T13:52:37-07:00
New Revision: 5ed62c7bc99a979261d34e41aaca9581577674bf
URL:
https://github.com/llvm/llvm-project/commit/5ed62c7bc99a979261d34e41aaca9581577674bf
DIFF:
https://github.com/llvm/llvm-project/commit/5ed62c7bc99a979261d34e41aaca9581577674bf.diff
Author: Jason Molenda
Date: 2023-08-15T13:49:57-07:00
New Revision: d70d5e9f6fa2770f9a5e7be4ba6b3512f5424968
URL:
https://github.com/llvm/llvm-project/commit/d70d5e9f6fa2770f9a5e7be4ba6b3512f5424968
DIFF:
https://github.com/llvm/llvm-project/commit/d70d5e9f6fa2770f9a5e7be4ba6b3512f5424968.diff
Author: Jason Molenda
Date: 2023-08-16T16:12:18-07:00
New Revision: 6f4a0c762fe2c0077865e0e30e3dfd67cd6287d1
URL:
https://github.com/llvm/llvm-project/commit/6f4a0c762fe2c0077865e0e30e3dfd67cd6287d1
DIFF:
https://github.com/llvm/llvm-project/commit/6f4a0c762fe2c0077865e0e30e3dfd67cd6287d1.diff
Author: Jason Molenda
Date: 2023-08-17T16:22:39-07:00
New Revision: d37642b4a261b5b5687725fd60f7da5dc5ec4782
URL:
https://github.com/llvm/llvm-project/commit/d37642b4a261b5b5687725fd60f7da5dc5ec4782
DIFF:
https://github.com/llvm/llvm-project/commit/d37642b4a261b5b5687725fd60f7da5dc5ec4782.diff
Author: Jason Molenda
Date: 2023-08-17T18:16:31-07:00
New Revision: 10f494d2896b8a58f69cc47d0db35d2b84c2fb44
URL:
https://github.com/llvm/llvm-project/commit/10f494d2896b8a58f69cc47d0db35d2b84c2fb44
DIFF:
https://github.com/llvm/llvm-project/commit/10f494d2896b8a58f69cc47d0db35d2b84c2fb44.diff
Author: Jason Molenda
Date: 2023-08-18T15:32:03-07:00
New Revision: b10c2f846d936a98eecfcef1a90a754522282285
URL:
https://github.com/llvm/llvm-project/commit/b10c2f846d936a98eecfcef1a90a754522282285
DIFF:
https://github.com/llvm/llvm-project/commit/b10c2f846d936a98eecfcef1a90a754522282285.diff
Author: Jason Molenda
Date: 2023-08-18T15:33:32-07:00
New Revision: ef70f5c6bbdadcaaeed6f028ed8eee8112b6543a
URL:
https://github.com/llvm/llvm-project/commit/ef70f5c6bbdadcaaeed6f028ed8eee8112b6543a
DIFF:
https://github.com/llvm/llvm-project/commit/ef70f5c6bbdadcaaeed6f028ed8eee8112b6543a.diff
Author: Jason Molenda
Date: 2023-08-18T15:34:13-07:00
New Revision: 1a2122e9e9d1d495fdf337a4a9445b61ca56df6f
URL:
https://github.com/llvm/llvm-project/commit/1a2122e9e9d1d495fdf337a4a9445b61ca56df6f
DIFF:
https://github.com/llvm/llvm-project/commit/1a2122e9e9d1d495fdf337a4a9445b61ca56df6f.diff
Author: Jason Molenda
Date: 2023-08-18T16:25:50-07:00
New Revision: 18b211cb15213f984b2014413b74958243a4805f
URL:
https://github.com/llvm/llvm-project/commit/18b211cb15213f984b2014413b74958243a4805f
DIFF:
https://github.com/llvm/llvm-project/commit/18b211cb15213f984b2014413b74958243a4805f.diff
Author: Jason Molenda
Date: 2023-08-30T15:12:31-07:00
New Revision: 3621f83804809fa50892ee81d9b3854ec2e5074f
URL:
https://github.com/llvm/llvm-project/commit/3621f83804809fa50892ee81d9b3854ec2e5074f
DIFF:
https://github.com/llvm/llvm-project/commit/3621f83804809fa50892ee81d9b3854ec2e5074f.diff
Author: Jason Molenda
Date: 2023-08-30T17:58:44-07:00
New Revision: 394e52a0bb576508e0fed59ab267e75cf1350fca
URL:
https://github.com/llvm/llvm-project/commit/394e52a0bb576508e0fed59ab267e75cf1350fca
DIFF:
https://github.com/llvm/llvm-project/commit/394e52a0bb576508e0fed59ab267e75cf1350fca.diff
Author: Jason Molenda
Date: 2023-09-11T16:46:18-07:00
New Revision: 2cab996192cf143d10e3381fcefa75e270cc7ddb
URL:
https://github.com/llvm/llvm-project/commit/2cab996192cf143d10e3381fcefa75e270cc7ddb
DIFF:
https://github.com/llvm/llvm-project/commit/2cab996192cf143d10e3381fcefa75e270cc7ddb.diff
https://github.com/jasonmolenda created
https://github.com/llvm/llvm-project/pull/66308:
Watchpoints in lldb can be either 'read', 'write', or 'read/write'. This is
exposing the actual behavior of hardware watchpoints. gdb has a different
behavior: a "write" type watchpoint only stops when t
https://github.com/jasonmolenda review_requested
https://github.com/llvm/llvm-project/pull/66308
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
jasonmolenda wrote:
Just to be clear, I need to find a solution for SBTarget::CreateWatchpoint
before this PR is ready to land. I'm inclined towards adding a third bool
parameter 'modify', but I'm not sure that's the best choice.
https://github.com/llvm/llvm-project/pull/66308
___
@@ -211,6 +212,35 @@ bool Watchpoint::CaptureWatchedValue(const
ExecutionContext &exe_ctx) {
return (m_new_value_sp && m_new_value_sp->GetError().Success());
}
+bool Watchpoint::WatchedValueReportable(const ExecutionContext &exe_ctx) {
+ if (!m_watch_modify)
+return tr
@@ -211,6 +212,35 @@ bool Watchpoint::CaptureWatchedValue(const
ExecutionContext &exe_ctx) {
return (m_new_value_sp && m_new_value_sp->GetError().Success());
}
+bool Watchpoint::WatchedValueReportable(const ExecutionContext &exe_ctx) {
+ if (!m_watch_modify)
+return tr
@@ -0,0 +1,17 @@
+#include
+int main() {
+ int value = 5;
+
+ value = 5; // break here
+ value = 5;
+ value = 5;
+ value = 5;
+ value = 5;
+ value = 5;
+ value = 10;
+ value = 10;
jasonmolenda wrote:
Good point. I figured existing watchpoint tests woul
@@ -0,0 +1,17 @@
+#include
+int main() {
+ int value = 5;
jasonmolenda wrote:
Yeah, if this was compiled with any optimization at all, the body of the
function becomes `mv x0, #0xa`; `ret` so I didn't try to defeat compiler
cleverness.
https://github.com/llv
@@ -211,6 +212,35 @@ bool Watchpoint::CaptureWatchedValue(const
ExecutionContext &exe_ctx) {
return (m_new_value_sp && m_new_value_sp->GetError().Success());
}
+bool Watchpoint::WatchedValueReportable(const ExecutionContext &exe_ctx) {
+ if (!m_watch_modify)
+return tr
jasonmolenda wrote:
> > Just to be clear, I need to find a solution for SBTarget::CreateWatchpoint
> > before this PR is ready to land. I'm inclined towards adding a third bool
> > parameter 'modify', but I'm not sure that's the best choice.
>
> Anytime we keep adding more options to an API ca
jasonmolenda wrote:
Maybe I should just use a flag param, and adopt the BreakpointCreate style
naming convention, even if there's only this one API right now (we should
provide all three so driver authors don't need to duplicate the work,
especially for a variable path). e.g.
```
SBWatchp
jasonmolenda wrote:
> ```
>SBWatchpoint SBTarget::WatchpointCreateByAddress(addr_t address, size_t
> size, uint32_t access_flags, SBError &error);
> ```
>
> with `eWatchpointAccess{Read,Write,Modify}` flags defined.
@bulbazord what do you think about this suggestion? Would you still pref
jasonmolenda wrote:
> > > ```
> > >SBWatchpoint SBTarget::WatchpointCreateByAddress(addr_t address,
> > > size_t size, uint32_t access_flags, SBError &error);
> > > ```
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > with `eWat
https://github.com/jasonmolenda updated
https://github.com/llvm/llvm-project/pull/66308
>From 1efbce9f3b754f45372f0098163e70c2118b57d9 Mon Sep 17 00:00:00 2001
From: Jason Molenda
Date: Wed, 13 Sep 2023 17:38:31 -0700
Subject: [PATCH 1/2] [lldb] Add 'modify' type watchpoints, make it default
W
@@ -0,0 +1,44 @@
+//===-- SBWatchpointOptions.h ---*- C++
-*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apa
@@ -1326,23 +1326,35 @@ lldb::SBWatchpoint SBTarget::WatchAddress(lldb::addr_t
addr, size_t size,
SBError &error) {
LLDB_INSTRUMENT_VA(this, addr, size, read, write, error);
+ SBWatchpointOptions options;
+ options.SetWatchpointTy
https://github.com/jasonmolenda edited
https://github.com/llvm/llvm-project/pull/66308
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/jasonmolenda edited
https://github.com/llvm/llvm-project/pull/66308
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -0,0 +1,67 @@
+//===-- SBWatchpointOptions.cpp
---===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apa
https://github.com/jasonmolenda edited
https://github.com/llvm/llvm-project/pull/66308
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -46,7 +46,9 @@ def test_unaligned_watchpoint(self):
a_bytebuf_6 = frame.GetValueForVariablePath("a.bytebuf[6]")
a_bytebuf_6_addr = a_bytebuf_6.GetAddress().GetLoadAddress(target)
err = lldb.SBError()
-wp = target.WatchAddress(a_bytebuf_6_addr,
https://github.com/jasonmolenda edited
https://github.com/llvm/llvm-project/pull/66308
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -0,0 +1,44 @@
+//===-- SBWatchpointOptions.h ---*- C++
-*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apa
https://github.com/jasonmolenda updated
https://github.com/llvm/llvm-project/pull/66308
>From 1efbce9f3b754f45372f0098163e70c2118b57d9 Mon Sep 17 00:00:00 2001
From: Jason Molenda
Date: Wed, 13 Sep 2023 17:38:31 -0700
Subject: [PATCH 1/3] [lldb] Add 'modify' type watchpoints, make it default
W
@@ -6,11 +6,7 @@
) lldb::SBWatchpointOptions::SetWatchpointTypeRead;
%feature("docstring", "Gets whether the watchpoint should stop on read
accesses."
) lldb::SBWatchpointOptions::GetWatchpointTypeRead;
-%feature("docstring", "Sets whether the watchpoint should stop on write
@@ -6,11 +6,7 @@
) lldb::SBWatchpointOptions::SetWatchpointTypeRead;
%feature("docstring", "Gets whether the watchpoint should stop on read
accesses."
) lldb::SBWatchpointOptions::GetWatchpointTypeRead;
-%feature("docstring", "Sets whether the watchpoint should stop on write
https://github.com/jasonmolenda updated
https://github.com/llvm/llvm-project/pull/66308
>From 1efbce9f3b754f45372f0098163e70c2118b57d9 Mon Sep 17 00:00:00 2001
From: Jason Molenda
Date: Wed, 13 Sep 2023 17:38:31 -0700
Subject: [PATCH 1/4] [lldb] Add 'modify' type watchpoints, make it default
W
https://github.com/jasonmolenda closed
https://github.com/llvm/llvm-project/pull/66308
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Author: Jason Molenda
Date: 2023-09-18T22:50:39-07:00
New Revision: 44532a9dd4a0ed08850dbddf80b7abcc51c4a7f1
URL:
https://github.com/llvm/llvm-project/commit/44532a9dd4a0ed08850dbddf80b7abcc51c4a7f1
DIFF:
https://github.com/llvm/llvm-project/commit/44532a9dd4a0ed08850dbddf80b7abcc51c4a7f1.diff
Author: Jason Molenda
Date: 2023-09-20T13:42:16-07:00
New Revision: 933ad5c897ee366759a54869b35b2d7285a92137
URL:
https://github.com/llvm/llvm-project/commit/933ad5c897ee366759a54869b35b2d7285a92137
DIFF:
https://github.com/llvm/llvm-project/commit/933ad5c897ee366759a54869b35b2d7285a92137.diff
Author: Jason Molenda
Date: 2023-09-20T21:49:15-07:00
New Revision: 1a78b32ce8577b72aad6239525740da271ed
URL:
https://github.com/llvm/llvm-project/commit/1a78b32ce8577b72aad6239525740da271ed
DIFF:
https://github.com/llvm/llvm-project/commit/1a78b32ce8577b72aad6239525740da271ed.diff
jasonmolenda wrote:
Thanks @DavidSpickett for looking into these. Let me looked into the tagged
ptr watchpoint issue right now, that sounds like a bug. One of the changes I
made in the second landing of my patch was to the TestStepOverWatchpoint C
file, which had three 1-byte globals, one wh
jasonmolenda wrote:
FWIW I've found that `watch set expression -s ` will ignore the size
specified if there is a clang type of the expression, it seems. :(
https://github.com/llvm/llvm-project/pull/66308
___
lldb-commits mailing list
lldb-commits@lis
jasonmolenda wrote:
Ah, I see the bug where `watch set expression` ends up marked as `rw`.
CommandObjectWatchpointSetExpression::DoExecute passes
`OptionGroupWatchpoint::eWatchModify` as the type to Target::CreateWatchpoint
(which takes that as a uint32_t). It passes that `uint32_t kind` to
Author: Jason Molenda
Date: 2023-09-21T14:50:34-07:00
New Revision: 35e3939cb06d19942a30fd39f1416f49a7b982a4
URL:
https://github.com/llvm/llvm-project/commit/35e3939cb06d19942a30fd39f1416f49a7b982a4
DIFF:
https://github.com/llvm/llvm-project/commit/35e3939cb06d19942a30fd39f1416f49a7b982a4.diff
jasonmolenda wrote:
@DavidSpickett pushed the fix for the `watch set expression` bug in
```
commit 35e3939cb06d19942a30fd39f1416f49a7b982a4
Author: Jason Molenda
Date: Thu Sep 21 14:48:19 2023 -0700
watch set expression's default type was wrong with new modify type
```
https://github.co
jasonmolenda wrote:
re. TestStepOverWatchpoint.py this test case annoys me greatly. It wants to
test that we get a watchpoint trap when stepping over a function that accesses
the memory, and that we can stop on the watchpoint access when instruction
stepping. It wants to test this for read a
Author: Jason Molenda
Date: 2023-09-22T18:11:33-07:00
New Revision: 4a43ee08e73287c006a317b94a94e3f19dbcf957
URL:
https://github.com/llvm/llvm-project/commit/4a43ee08e73287c006a317b94a94e3f19dbcf957
DIFF:
https://github.com/llvm/llvm-project/commit/4a43ee08e73287c006a317b94a94e3f19dbcf957.diff
Author: Jason Molenda
Date: 2023-09-22T18:22:02-07:00
New Revision: 5ba239fe2a338ca6dc293a2dd9ea0758f25c738e
URL:
https://github.com/llvm/llvm-project/commit/5ba239fe2a338ca6dc293a2dd9ea0758f25c738e
DIFF:
https://github.com/llvm/llvm-project/commit/5ba239fe2a338ca6dc293a2dd9ea0758f25c738e.diff
https://github.com/jasonmolenda created
https://github.com/llvm/llvm-project/pull/67384
In https://reviews.llvm.org/D136620 I changed debugserver to stop using the
kernel-provided functions
arm_thread_state64_get_{pc,lr,sp,fp} to postprocess those four registers on
aarch64 systems after we thr
https://github.com/jasonmolenda closed
https://github.com/llvm/llvm-project/pull/67384
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/jasonmolenda created
https://github.com/llvm/llvm-project/pull/82593
…etSupported
Pavel added an extension to lldb's gdb remote serial protocol that allows the
debug stub to append an error message (ascii hex encoded) after an error
response packet Exx. This was added in 2
jasonmolenda wrote:
I'm a little curious the use case that led to this failure. We have a build of
llvm/lldb without the X86 target, and we're using that lldb to debug an
i386/x86_64 target (gdb connection or corefile)? Because we can't use
instruction emulation based unwinding, if we don't
jasonmolenda wrote:
tbh most of lldb would work without the llvm target compiled in, but the
disassembler and the Intel assembly scanning unwind plan creator both need it,
and the latter is more important.
https://github.com/llvm/llvm-project/pull/82603
jasonmolenda wrote:
Well, it would change source-level next and step too if we didn't have the
disassembler. When we're doing a source-level step/next, we look at the stream
of instructions and when we have a block of non-branching instructions, we put
a breakpoint after the block and continu
jasonmolenda wrote:
`CreateEXXPacket("E96", "no such process");` that's a good idea, I'll rewrite
to use a helper method like that.
https://github.com/llvm/llvm-project/pull/82593
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists
https://github.com/jasonmolenda created
https://github.com/llvm/llvm-project/pull/82709
This is next in my series of "fix the racey tests that fail on greendragon"
addressing the failure of TestConcurrentManyBreakpoints.py where we set a
breakpoint in a function that 100 threads execute, and w
jasonmolenda wrote:
tbh I have no problems with the patch, but I think it's fixing something that I
think should be reconsidered altogether, I'm interested to hear more about what
the use case looks like that led to this being a problem.
https://github.com/llvm/llvm-project/pull/82603
https://github.com/jasonmolenda edited
https://github.com/llvm/llvm-project/pull/82709
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/jasonmolenda updated
https://github.com/llvm/llvm-project/pull/82709
>From 171613d26338919e40584656a7f88899ba6cc5ca Mon Sep 17 00:00:00 2001
From: Jason Molenda
Date: Thu, 22 Feb 2024 15:35:31 -0800
Subject: [PATCH 1/2] [lldb] Correctly annotate threads at a bp site as hittin
@@ -1722,6 +1742,8 @@ ThreadSP ProcessGDBRemote::SetThreadStopInfo(
} else {
bool handled = false;
bool did_exec = false;
+ if (reason == "none")
jasonmolenda wrote:
I updated the patch where I handle this a little more cleanly, checking t
jasonmolenda wrote:
> This seems safe to me, and it can't hurt to take care of this corner case
> here regardless of what the higher levels of lldb does.
This all falls under `Thread::CalculateStopInfo()` -
`ThreadGDBRemote::CalculateStopInfo` is calling into ProcessGDBRemote where we
do this
https://github.com/jasonmolenda closed
https://github.com/llvm/llvm-project/pull/82709
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -3944,15 +3955,22 @@ rnb_err_t RNBRemote::HandlePacket_v(const char *p) {
// The order of these checks is important.
if (process_does_not_exist (pid_attaching_to)) {
DNBLogError("Tried to attach to pid that doesn't exist");
- std::string
https://github.com/jasonmolenda approved this pull request.
I haven't used the std::async feature before, but it looks reasonable. This
looks good to me.
https://github.com/llvm/llvm-project/pull/82799
___
lldb-commits mailing list
lldb-commits@lists
@@ -1568,15 +1569,16 @@ bool Target::SetArchitecture(const ArchSpec &arch_spec,
bool set_platform,
if (m_arch.GetSpec().IsCompatibleMatch(other)) {
compatible_local_arch = true;
-bool arch_changed, vendor_changed, os_changed, os_ver_changed,
-
@@ -26,3 +31,8 @@ def test(self):
"target triple is updated correctly")
error = process.Kill()
self.assertSuccess(error)
+
+# Test debugserver behavior.
+self.filecheck('platform shell cat "%s"' % packets, __file__)
+
jasonmolenda wrote:
The debugserver changes all look good to me, fwiw. My only feedback is about
the API test.
https://github.com/llvm/llvm-project/pull/82938
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mai
@@ -1568,15 +1569,16 @@ bool Target::SetArchitecture(const ArchSpec &arch_spec,
bool set_platform,
if (m_arch.GetSpec().IsCompatibleMatch(other)) {
compatible_local_arch = true;
-bool arch_changed, vendor_changed, os_changed, os_ver_changed,
-
https://github.com/jasonmolenda created
https://github.com/llvm/llvm-project/pull/83095
I'm reviving a patch from phabracator, https://reviews.llvm.org/D155905 which
was approved but I wasn't thrilled with all the API I was adding to SBProcess
for all of the address mask types / memory regions
jasonmolenda wrote:
I'm a little split because the current packet is not super useful as it's
constructed today - I'd really like to see a domain or vendor along with a
version number And instead of a simple number, maybe a major/minor version
number and/or a version string? I'm also fine wi
jasonmolenda wrote:
I'm not fishing for Adrian to dig in to that, I'm happy to make the change.
but I'm curious what @JDevlieghere and @adrian-prantl think, if it's worth
changing this packet. It's not used anywhere yet, so overhauling it now
before/shortly after we actually start using it,
https://github.com/jasonmolenda approved this pull request.
LGTM, let's land this patch. I will extend the stub version packet with
additional fields (Jonas points out that other stubs implement this packet
already as-is) and update this once that PR is approved and merged. But we
don't need
https://github.com/jasonmolenda updated
https://github.com/llvm/llvm-project/pull/83095
>From dae16776e8c97158e8965e4d0e950cd2ce836f75 Mon Sep 17 00:00:00 2001
From: Jason Molenda
Date: Mon, 26 Feb 2024 18:05:27 -0800
Subject: [PATCH 1/2] [lldb] Add SBProcess methods for get/set/use address
ma
jasonmolenda wrote:
Thanks so much for reading through these @DavidSpickett and @hawkinsw !
@adrian-prantl and @JDevlieghere suggested using a doxygen group for this set
of methods and having the long definitions of `type` and `addr_range` a single
time, referring back to them from the indiv
@@ -407,6 +407,117 @@ class LLDB_API SBProcess {
/// the process isn't loaded from a core file.
lldb::SBFileSpec GetCoreFile();
+ /// \{
+ /// \group Mask Address Methods
+ ///
+ /// \a type
+ /// All of the methods in this group take \a type argument
+ /// which
@@ -407,6 +407,117 @@ class LLDB_API SBProcess {
/// the process isn't loaded from a core file.
lldb::SBFileSpec GetCoreFile();
+ /// \{
+ /// \group Mask Address Methods
+ ///
+ /// \a type
+ /// All of the methods in this group take \a type argument
+ /// which
801 - 900 of 1990 matches
Mail list logo