https://github.com/real-mikhail updated
https://github.com/llvm/llvm-project/pull/129092
>From 1d2da22bceb83cbda54567e5f819e5eef4e6 Mon Sep 17 00:00:00 2001
From: Mikhail Zakharov
Date: Thu, 27 Feb 2025 18:43:33 +0100
Subject: [PATCH 1/2] [lldb] Do not bump memory modificator ID when "inter
real-mikhail wrote:
I checked that and added a test for this case. Updating value works and new
value can be displayed (in simple case):
```
(lldb) expr A $mine = {100, 200}
(lldb) expr $mine.a = 300
(int) $0 = 300
(lldb) expr $mine
(A) $mine = {a=300, b=200} {
a = 300
b = 200
}
```
But it
real-mikhail wrote:
Thanks folks. I agree that approach with the option is the best (will see what
looks better, something like `target.process.expressions-flush-memory-cache` or
flag in `SBExpressionOptions`). Since this flag will affect very low-level code
maybe global flag (in `target.proce
https://github.com/real-mikhail updated
https://github.com/llvm/llvm-project/pull/129092
>From 1d2da22bceb83cbda54567e5f819e5eef4e6 Mon Sep 17 00:00:00 2001
From: Mikhail Zakharov
Date: Thu, 27 Feb 2025 18:43:33 +0100
Subject: [PATCH 1/9] [lldb] Do not bump memory modificator ID when "inter
real-mikhail wrote:
> I think something like that might work.
Clarification: that will work only for cases if there are `VariableObject` for
each variable and they are checked. If, for instance, non-persistent variable
holds reference to persistent variable and only `MemoryCacheId` is bumped t
real-mikhail wrote:
> If I make an instance of a collection class (most of which are comprehended
> by synthetic child providers) and then call:
> (lldb) expr $my_vector.append(1)
> (lldb) expr $my_vector
That will still work with my changes. Because function call (`.append()`) is
JIT compiled
real-mikhail wrote:
Hi,
I added the new option key `target.process.track-memory-cache-changes` (which
defaults to `true`, meaning bulletproof behaviour). Setting it to `false`
enables the optimization I initially suggested. I also added a new dump command
and ensured with test that MemoryID i
real-mikhail wrote:
Oh, sorry about unnecessary ping then and thanks for clarification and the link!
Yes, I cannot merge changes myself since this is my first PR.
https://github.com/llvm/llvm-project/pull/129092
___
lldb-commits mailing list
lldb-commi
@@ -1827,6 +1827,33 @@ class CommandObjectMultiwordProcessTrace : public
CommandObjectMultiword {
~CommandObjectMultiwordProcessTrace() override = default;
};
+// CommandObjectProcessDumpModificationId
+class CommandObjectProcessDumpModificationId : public CommandObjectPars
https://github.com/real-mikhail updated
https://github.com/llvm/llvm-project/pull/129092
>From 1d2da22bceb83cbda54567e5f819e5eef4e6 Mon Sep 17 00:00:00 2001
From: Mikhail Zakharov
Date: Thu, 27 Feb 2025 18:43:33 +0100
Subject: [PATCH 01/11] [lldb] Do not bump memory modificator ID when
"in
https://github.com/real-mikhail edited
https://github.com/llvm/llvm-project/pull/129092
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
real-mikhail wrote:
I assume that there will be no further comments here.
Since this is my first change in LLVM I cannot merge it myself. @jimingham may
I kindly ask you to merge this PR?
https://github.com/llvm/llvm-project/pull/129092
___
lldb-comm
real-mikhail wrote:
With the current test fix (`TestProcessModificationIdOnExpr`), it is locked to
`target-x86` but it seems that it should require `target-x86_64` instead.
Currently it is not run on Windows-x64 and it fails on Windows-x86 (since the
test is checking low level internal data, a
@@ -36,34 +39,49 @@ int main() {
}
// CHECK-LABEL: process status -d
-// CHECK: m_stop_id: 2
-// CHECK: m_memory_id: 0
+// CHECK: m_stop_id: [[#STOP_ID:]]
+// CHECK: m_memory_id: [[#MEMORY_ID:]]
// CHECK-LABEL: expr x.i != 42
// IDs are not changed when executing simple ex
real-mikhail wrote:
Thanks for checking @DavidSpickett. Could you please merge this PR for me?
https://github.com/llvm/llvm-project/pull/138941
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/ll
https://github.com/real-mikhail created
https://github.com/llvm/llvm-project/pull/129092
This change prevents invalidating and updating values in
`ValueObject::UpdateValueIfNeeded` when only "internal" debugger memory is
updated. Writing to "internal" debugger memory happens when, for instance
https://github.com/real-mikhail updated
https://github.com/llvm/llvm-project/pull/129092
>From 1d2da22bceb83cbda54567e5f819e5eef4e6 Mon Sep 17 00:00:00 2001
From: Mikhail Zakharov
Date: Thu, 27 Feb 2025 18:43:33 +0100
Subject: [PATCH 01/10] [lldb] Do not bump memory modificator ID when
"in
https://github.com/real-mikhail created
https://github.com/llvm/llvm-project/pull/138941
Original PR where test was introduced and improvements discussed:
https://github.com/llvm/llvm-project/pull/129092#issuecomment-2855337004
Rate limit ยท GitHub
body {
real-mikhail wrote:
Thanks for the example and the link.
I fixed test to work on both Windows-x86 and Windows-x64 and created new PR:
https://github.com/llvm/llvm-project/pull/138941
https://github.com/llvm/llvm-project/pull/129092
___
lldb-commits ma
19 matches
Mail list logo