@@ -102,6 +110,12 @@ class DWARFIndex {
}
void ReportInvalidDIERef(DIERef ref, llvm::StringRef name) const;
+
+ /// Implementation of `GetFullyQualifiedType` to check a single entry,
+ /// shareable with derived classes.
clayborg wrote:
> I'm glad you a
https://github.com/clayborg closed
https://github.com/llvm/llvm-project/pull/77029
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
clayborg wrote:
> Thanks for the fix! I did test this patch with both our regression issue, and
> also allowing us to remove the double-lookup working around #53904 and can
> confirm it addressed both issues. Thanks again!
Glad it worked! It will also be a huge improvement in the expression pa
@@ -68,6 +68,11 @@ class DWARFDeclContext {
const char *GetQualifiedName() const;
+ /// Returns a vector of string, one string per entry in the fully qualified
+ /// name. For example, for the DeclContext `A::B::C`, this methods returns
+ /// `{"C", "B", "A"}`
+ llvm::S
@@ -68,6 +68,11 @@ class DWARFDeclContext {
const char *GetQualifiedName() const;
+ /// Returns a vector of string, one string per entry in the fully qualified
+ /// name. For example, for the DeclContext `A::B::C`, this methods returns
+ /// `{"C", "B", "A"}`
+ llvm::S
@@ -68,6 +68,11 @@ class DWARFDeclContext {
const char *GetQualifiedName() const;
+ /// Returns a vector of string, one string per entry in the fully qualified
+ /// name. For example, for the DeclContext `A::B::C`, this methods returns
+ /// `{"C", "B", "A"}`
+ llvm::S
https://github.com/clayborg edited
https://github.com/llvm/llvm-project/pull/77547
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/clayborg approved this pull request.
The roots of this look really good. A few nits we can choose to fix or do in
another patch.
https://github.com/llvm/llvm-project/pull/77547
___
lldb-commits mailing list
lldb-commits@lists.llvm.
@@ -519,8 +519,7 @@ void SymbolFileDWARF::InitializeObject() {
if (apple_names.GetByteSize() > 0 || apple_namespaces.GetByteSize() > 0 ||
apple_types.GetByteSize() > 0 || apple_objc.GetByteSize() > 0) {
- Progress progress(llvm::formatv("Loading Apple DWARF in
@@ -532,8 +531,7 @@ void SymbolFileDWARF::InitializeObject() {
DWARFDataExtractor debug_names;
LoadSectionData(eSectionTypeDWARFDebugNames, debug_names);
if (debug_names.GetByteSize() > 0) {
- Progress progress(
- llvm::formatv("Loading DWARF5 index fo
@@ -69,7 +69,8 @@ class Progress {
///
/// @param [in] debugger An optional debugger pointer to specify that this
/// progress is to be reported only to specific debuggers.
- Progress(std::string title, uint64_t total = UINT64_MAX,
+ Progress(std::string title, std::str
@@ -1430,6 +1445,279 @@ void Debugger::SetDestroyCallback(
m_destroy_callback_baton = baton;
}
+
+ /// Notify the progress thread that there is new progress data.
+void Debugger::NotifyProgress(std::unique_ptr &data_up) {
+ // Start the progress thread if it isn't already
clayborg wrote:
> > Looks fine to me. Can we add a test?
>
> Updated the existing tests to check the adjusted format.
>
> One issue I did notice with tests is that the response to an expression will
> include a response are automatically persisted by
> `SBValue::GetDescription()`, so you will
clayborg wrote:
Is there a way we can tell that the request is from the console and only enable
this feature if we are going to dump it to the debug console?
https://github.com/llvm/llvm-project/pull/77026
___
lldb-commits mailing list
lldb-commits@li
https://github.com/clayborg commented:
Looks good, need to add tests for:
- split dwarf with .dwo files
- split dwarf with .dwp file
https://github.com/llvm/llvm-project/pull/77671
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists
clayborg wrote:
> > Is there a way we can tell that the request is from the console and only
> > enable this feature if we are going to dump it to the debug console?
>
> Yea, the DAP has a context we can use to limit this
> https://microsoft.github.io/debug-adapter-protocol/specification#Reque
https://github.com/clayborg edited
https://github.com/llvm/llvm-project/pull/77547
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/clayborg commented:
A bit more cleanup, see inline comment
https://github.com/llvm/llvm-project/pull/77547
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -51,9 +56,10 @@ void Progress::Increment(uint64_t amount, std::string
update) {
void Progress::ReportProgress(std::string update) {
clayborg wrote:
remove `std::string update` as we have it in `m_details`
https://github.com/llvm/llvm-project/pull/77547
@@ -30,18 +34,19 @@ Progress::~Progress() {
// Make sure to always report progress completed when this object is
// destructed so it indicates the progress dialog/activity should go away.
std::lock_guard guard(m_mutex);
- if (!m_completed)
-m_completed = m_total;
+
@@ -30,18 +34,19 @@ Progress::~Progress() {
// Make sure to always report progress completed when this object is
// destructed so it indicates the progress dialog/activity should go away.
std::lock_guard guard(m_mutex);
- if (!m_completed)
-m_completed = m_total;
+
https://github.com/clayborg requested changes to this pull request.
https://github.com/llvm/llvm-project/pull/77547
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -51,9 +56,10 @@ void Progress::Increment(uint64_t amount, std::string
update) {
void Progress::ReportProgress(std::string update) {
if (!m_complete) {
// Make sure we only send one notification that indicates the progress is
-// complete.
-m_complete = m_compl
@@ -30,18 +34,19 @@ Progress::~Progress() {
// Make sure to always report progress completed when this object is
// destructed so it indicates the progress dialog/activity should go away.
std::lock_guard guard(m_mutex);
- if (!m_completed)
-m_completed = m_total;
+
@@ -11,15 +11,19 @@
#include "lldb/Core/Debugger.h"
#include "lldb/Utility/StreamString.h"
+#include
+
using namespace lldb;
using namespace lldb_private;
std::atomic Progress::g_id(0);
-Progress::Progress(std::string title, uint64_t total,
+Progress::Progress(std::str
https://github.com/clayborg edited
https://github.com/llvm/llvm-project/pull/77547
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -96,13 +97,14 @@ class Progress {
static std::atomic g_id;
/// The title of the progress activity.
std::string m_title;
+ std::string m_details;
std::mutex m_mutex;
/// A unique integer identifier for progress reporting.
const uint64_t m_id;
/// How much w
@@ -35,25 +42,29 @@ Progress::~Progress() {
ReportProgress();
}
-void Progress::Increment(uint64_t amount, std::string update) {
+void Progress::Increment(uint64_t amount,
+ std::optional updated_detail) {
if (amount > 0) {
std::lock_guard gua
@@ -35,25 +42,29 @@ Progress::~Progress() {
ReportProgress();
}
-void Progress::Increment(uint64_t amount, std::string update) {
+void Progress::Increment(uint64_t amount,
+ std::optional updated_detail) {
if (amount > 0) {
std::lock_guard gua
clayborg wrote:
> > Looks good, need to add tests for:
> >
> > * split dwarf with .dwo files
> > * split dwarf with .dwp file
>
> @clayborg, do you have suggestion regarding how to test `GetDebugInfoSize()`
> for dwo/dwp?
yes, for either we just add up the size of any debug info sections for
@@ -405,6 +405,9 @@ struct VariableDescription {
/// Create a JSON object that represents these extensions to the DAP variable
/// response.
llvm::json::Object GetVariableExtensionsJSON();
+
+ /// Returns a description of the value appropraite for the specified context.
@@ -173,21 +173,21 @@ TryCreateAutoSummaryForContainer(lldb::SBValue &v) {
lldb::SBValue child = v.GetChildAtIndex(i);
if (llvm::StringRef name = child.GetName(); !name.empty()) {
- llvm::StringRef value;
+ llvm::StringRef desc;
if (llvm::StringRef sum
@@ -1210,15 +1210,16 @@ bool SBValue::GetDescription(SBStream &description) {
ValueLocker locker;
lldb::ValueObjectSP value_sp(GetSP(locker));
- if (value_sp) {
-DumpValueObjectOptions options;
-options.SetUseDynamicType(m_opaque_sp->GetUseDynamic());
-options
Author: Greg Clayton
Date: 2023-08-31T10:37:20-07:00
New Revision: 07c215e8a8af54d0084af7291ac29fef3672fcd8
URL:
https://github.com/llvm/llvm-project/commit/07c215e8a8af54d0084af7291ac29fef3672fcd8
DIFF:
https://github.com/llvm/llvm-project/commit/07c215e8a8af54d0084af7291ac29fef3672fcd8.diff
Author: Greg Clayton
Date: 2023-09-05T16:54:05-07:00
New Revision: d4a141ef932a596df61581090b70d0b546de68b2
URL:
https://github.com/llvm/llvm-project/commit/d4a141ef932a596df61581090b70d0b546de68b2
DIFF:
https://github.com/llvm/llvm-project/commit/d4a141ef932a596df61581090b70d0b546de68b2.diff
clayborg wrote:
Not sure I like this showing up all of the time. It is fine for people that
want to debug synthetic child providers, but seeing this all of the time adds
noise to the variable window for no real benefit. I believe that plug-ins can
have settings within VS code and it would be n
https://github.com/clayborg commented:
This will cause large performance regressions when debugging large complex
codebases due to the extra type completions that will now happen every time you
stop somewhere and view variables.
https://github.com/llvm/llvm-project/pull/65514
_
https://github.com/clayborg edited
https://github.com/llvm/llvm-project/pull/65514
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -132,6 +132,84 @@ std::vector GetStrings(const
llvm::json::Object *obj,
return strs;
}
+/// Create a short summary for a container that contains the summary of its
+/// first children, so that the user can get a glimpse of its contents at a
+/// glance.
+static std::opti
https://github.com/clayborg requested changes to this pull request.
https://github.com/llvm/llvm-project/pull/65687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/clayborg edited
https://github.com/llvm/llvm-project/pull/65687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -240,6 +240,16 @@
"timeout": {
"type":
"string",
"description":
"The time in seconds to wait
@@ -240,6 +240,16 @@
"timeout": {
"type":
"string",
"description":
"The time in seconds to wait
@@ -240,6 +240,16 @@
"timeout": {
"type":
"string",
"description":
"The time in seconds to wait
@@ -40,7 +40,8 @@ VSCode::VSCode()
{"swift_catch", "Swift Catch", lldb::eLanguageTypeSwift},
{"swift_throw", "Swift Throw", lldb::eLanguageTypeSwift}}),
focus_tid(LLDB_INVALID_THREAD_ID), sent_terminated_event(false),
- stop_at_entry(false), is_
@@ -240,6 +240,16 @@
"timeout": {
"type":
"string",
"description":
"The time in seconds to wait
https://github.com/clayborg commented:
A different way to approach this fix is to just fix ExecutionContext so that
this can never be out of date by removing the "m_process_sp" member variable.
Is is not great that we can an execution context that has an older process, and
would we ever want a
https://github.com/clayborg approved this pull request.
Looks good!
https://github.com/llvm/llvm-project/pull/65687
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
clayborg wrote:
> I don't think the lldb command line dumps raw JSON anywhere as a command
> result. Can we make something a little more human readable?
It was my idea to make this JSON. The problem is each debug info (.dwo and
DWARF in .o files for Mac) has very different fields and pretty pr
clayborg wrote:
We also want to show the .dwo error or OSO error strings that explain why the
file wasn't loaded as we see when we do "frame variable" and the OSO or DWO are
missing.
https://github.com/llvm/llvm-project/pull/66035
___
lldb-commits m
@@ -83,7 +83,7 @@ class Debugger : public
std::enable_shared_from_this,
eBroadcastBitProgress = (1 << 0),
eBroadcastBitWarning = (1 << 1),
eBroadcastBitError = (1 << 2),
-eBroadcastSymbolChange = (1 << 3),
+eBroadcastBitSymbolChange = (1 << 3),
https://github.com/clayborg edited
https://github.com/llvm/llvm-project/pull/66144
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -46,6 +47,7 @@ class LLDB_API SBDebugger {
eBroadcastBitProgress = (1 << 0),
eBroadcastBitWarning = (1 << 1),
eBroadcastBitError = (1 << 2),
+ eBroadcastBitSymbolChange = (1 << 3),
clayborg wrote:
See comment below about possible name
https://github.com/clayborg commented:
We should be able to extract the SBModuleSpec from the event in response to the
eBroadcastBitSymbolChange event. This will require adding a static method to
SBDebugger.h/.cpp to get the SBModuleSpec from the event:
```
static lldb::SBModuleSpec
GetModu
@@ -13,6 +13,7 @@
#include "lldb/API/SBDefines.h"
#include "lldb/API/SBPlatform.h"
+#include "lldb/API/SBStructuredData.h"
clayborg wrote:
This isn't needed in the header file right? Move to SBDebugger.cpp if it is
still needed? No mention of SBStructuredDat
clayborg wrote:
> It seems a bit weird to have an Execution context with a thread and a stack
> frame but not the process they belong to. I don't know that it would really
> help either. Even if you removed the process so that you no longer had to
> check for that being invalid, if a thread or
clayborg wrote:
So if we use the ExecutionContextScope and init a ExectionContext with a
target, it can calculate the process and target. If you init it with a thread,
it can calculate the thread, process and target. And if you init it with a
frame, it can get the frame, thread, process and ta
https://github.com/clayborg commented:
Any interest in just allowing "settings set prompt" to use the format strings
approach that we support in thread-format, frame-format? I see we have a ton of
settings that already ansi-prefix and ansi-suffix settings, but it would be
easy to just do:
```
clayborg wrote:
> This seems like a much wider ranging change than is required to fix this bug.
> I'm all for rethinking the
> ExecutionContextScope/ExecutionContext/ExecutionContextRef nexus, but I don't
> think that's a trivial rethink, and I don't have the time to undertake that
> right no
https://github.com/clayborg approved this pull request.
https://github.com/llvm/llvm-project/pull/66312
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/clayborg 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/clayborg commented:
Since users probably want a behavior like GDB by default, one idea is to just
add a setting:
```
(llldb) settings show target.watchpoint-stop-on-write [always|changed]
```
When watchpoints are set, they just read the current value for this. Most of
your in
@@ -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;
clayborg wrote:
Can we check that it stops when the value changes from 10
@@ -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;
clayborg wrote:
If you take the address of "value" then it will always be in memory. Here we
might be just getting lucky that the compiler choses to put this on the stack
at -O0.
https://github.com/ll
@@ -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;
clayborg wrote:
We could change it back to 5 to ensure that the watchpoin
@@ -57,6 +57,29 @@ def test_add_dsym_with_dSYM_bundle(self):
self.exe_name = "a.out"
self.do_add_dsym_with_dSYM_bundle(self.exe_name)
+@no_debug_info_test
+def test_report_symbol_load(self):
+"""Test that when adding a symbol file, the eBroadcas
@@ -83,7 +83,7 @@ class Debugger : public
std::enable_shared_from_this,
eBroadcastBitProgress = (1 << 0),
eBroadcastBitWarning = (1 << 1),
eBroadcastBitError = (1 << 2),
-eBroadcastSymbolChange = (1 << 3),
+eBroadcastBitSymbolFileChange = (1 << 3),
https://github.com/clayborg approved this pull request.
https://github.com/llvm/llvm-project/pull/66218
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/clayborg commented:
Is this change testable in a test case? I assume it must be somehow as it is
fixing a bug?
https://github.com/llvm/llvm-project/pull/66286
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.l
clayborg 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 op
clayborg wrote:
> @clayborg as Adrian said, this fixes a test failure downstream. I don't
> there's any visible change in behavior to test in main, unfortunately.
Gotcha. Let me guess: Swift? :-)
https://github.com/llvm/llvm-project/pull/66286
___
l
https://github.com/clayborg requested changes to this pull request.
https://github.com/llvm/llvm-project/pull/66035
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/clayborg edited
https://github.com/llvm/llvm-project/pull/66035
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -459,6 +470,14 @@ class SymbolFile : public PluginInterface {
virtual void GetCompileOptions(
std::unordered_map &args) {}
+ /// If separate debug info files are supported and this function succeeded,
+ /// return some string representing the type of debug info. E
@@ -162,6 +163,21 @@ void SymbolFile::AssertModuleLock() {
SymbolFile::RegisterInfoResolver::~RegisterInfoResolver() = default;
+bool SymbolFile::ListSeparateDebugInfoFiles(StructuredData::Dictionary &d) {
+ StructuredData::Array array;
+ std::optional debug_info_type =
Ge
@@ -2035,8 +2118,8 @@ class CommandObjectTargetModulesDumpSymtab
result.GetOutputStream().EOL();
result.GetOutputStream().EOL();
}
- if (INTERRUPT_REQUESTED(GetDebugger(),
clayborg wrote:
It would be
clayborg wrote:
> > ```
> >SBWatchpoint SBTarget::WatchpointCreateByAddress(addr_t address, size_t
> > size, uint32_t access_flags, SBError &error);
> > ```
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > with `eWatchpointAccess{Read,Write,Modify}` fl
https://github.com/clayborg requested changes to this pull request.
Just need tests for the non --json output for OSO and DWO. If you can also
attach the output of the 4 cases (OSO no errors, OSO with errors, DWO no errors
and DWO with errors), that might help people see what this output looks
https://github.com/clayborg edited
https://github.com/llvm/llvm-project/pull/66035
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -11,6 +11,7 @@
#include "DIERef.h"
#include "lldb/Symbol/SymbolFile.h"
+#include "lldb/Utility/ConstString.h"
clayborg wrote:
Remove this now that we aren't returning a std::optional
https://github.com/llvm/llvm-project/pull/66035
clayborg wrote:
> You and Alex both preferred adding an Options class to pass in to this (and
> future WatchpointCreate API) so I'll write that up for my next revision of
> this PR, I didn't see your earlier message talking about your preference for
> that when I ping'ed Alex on their opinion.
@@ -57,6 +57,29 @@ def test_add_dsym_with_dSYM_bundle(self):
self.exe_name = "a.out"
self.do_add_dsym_with_dSYM_bundle(self.exe_name)
+@no_debug_info_test
+def test_report_symbol_load(self):
+"""Test that when adding a symbol file, the eBroadcas
clayborg wrote:
> I think it would be easier to read the output if you made a separate column
> for "error". If you imagine a listing where there are 100 OSO's of which 10
> are missing, the paths are going to jump over because of the "error: ..." at
> the beginning of those lines making it me
https://github.com/clayborg requested changes to this pull request.
I would rather we add a new setting in lldb that controls if we see hex values
with leading zeroes and allow users to set this. It will be _very_ easy to fix
this as all you need to do is fix lldb_private::DumpDataExtractor() a
@@ -228,7 +228,24 @@ void SetValueForKey(lldb::SBValue &v, llvm::json::Object
&object,
strm << "";
} else {
auto tryDumpSummaryAndValue = [&strm](lldb::SBValue value) {
- llvm::StringRef val = value.GetValue();
+ std::string val;
+ // Whenever the valu
https://github.com/clayborg edited
https://github.com/llvm/llvm-project/pull/66534
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
clayborg wrote:
I have verified that if I change DumpDataExtractor() you can easily do this:
```
case eFormatHex:
case eFormatHexUppercase: {
bool wantsuppercase = (item_format == eFormatHexUppercase);
switch (item_byte_size) {
case 1:
case 2:
case 4:
c
clayborg wrote:
If you create a setting, be sure to make it a global setting (a bool in the
setting definition) so it can always be accessed via:
```
static TargetProperties &Target::GetGlobalProperties();
```
https://github.com/llvm/llvm-project/pull/66534
__
clayborg wrote:
Then no changes are needed for vs code files at all and we can test this with a
normal LLDB variable tests.
https://github.com/llvm/llvm-project/pull/66534
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.or
https://github.com/clayborg approved this pull request.
Nice! LGTM
https://github.com/llvm/llvm-project/pull/66548
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/clayborg edited
https://github.com/llvm/llvm-project/pull/66548
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -620,10 +620,17 @@ lldb::offset_t lldb_private::DumpDataExtractor(
case 2:
case 4:
case 8:
-s->Printf(wantsuppercase ? "0x%*.*" PRIX64 : "0x%*.*" PRIx64,
- (int)(2 * item_byte_size), (int)(2 * item_byte_size),
- DE.
https://github.com/clayborg requested changes to this pull request.
https://github.com/llvm/llvm-project/pull/66548
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
clayborg wrote:
> @jimingham , that's a good catch. Probably I should rename this because I
> want this setting to affect only SBValueObject::GetValue(), which is want
> ends up being sent to IDEs as a common interface. Trying to control all
> places that print as hex value is a bit too much a
@@ -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
@@ -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,
@@ -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
@@ -53,7 +53,10 @@ def fuzz_obj(obj):
obj.GetByteOrder()
obj.GetTriple()
error = lldb.SBError()
-obj.WatchAddress(123, 8, True, True, error)
+wp_opts = lldb.SBWatchpointOptions()
+wp_opts.SetWatchpointTypeRead(True)
+wp_opts.SetWatchpointTypeModify(T
2001 - 2100 of 3323 matches
Mail list logo