Revision tags: llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5 |
|
#
0e90ac9c |
| 25-May-2023 |
Med Ismail Bennani <ismail@bennani.ma> |
Re-revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module"
This reverts commit 429e74839506ea8ba962d24647264ed81f680bbf since it didn't address the test failures on GreenDr
Re-revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module"
This reverts commit 429e74839506ea8ba962d24647264ed81f680bbf since it didn't address the test failures on GreenDragon.
This patch will mark the tests as expected to fail until I can reproduce the issue and find a solution.
Signed-off-by: Med Ismail Bennani <ismail@bennani.ma>
show more ...
|
#
429e7483 |
| 23-May-2023 |
Med Ismail Bennani <ismail@bennani.ma> |
Revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module"
This reverts commit 273a2d337f675f3ee050f281b1fecc3e806b9a3c, since it might be the cause for `TestStackCoreScripted
Revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module"
This reverts commit 273a2d337f675f3ee050f281b1fecc3e806b9a3c, since it might be the cause for `TestStackCoreScriptedProcess` and `TestInteractiveScriptedProcess` failures on GreenDragon:
https://green.lab.llvm.org/green/job/lldb-cmake/55460/`
show more ...
|
#
273a2d33 |
| 21-May-2023 |
Med Ismail Bennani <ismail@bennani.ma> |
[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module
This patch moves the `PassthroughScriptedProcess` & `PassthroughScriptedThread` classes from the `interactive_scripted_proces
[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module
This patch moves the `PassthroughScriptedProcess` & `PassthroughScriptedThread` classes from the `interactive_scripted_process.py` test implementation to the `lldb.scripted_process` python module.
This class is very versatile so it makes more sense to ship it with the python module to make it easier for our adopters to derive their class from it instead of copying it.
During the "migration", I've also noticed some bugs in the `PassthroughScriptedThread` creation and update, so I also fixed that as part of this patch.
Differential Revision: https://reviews.llvm.org/D151044
Signed-off-by: Med Ismail Bennani <ismail@bennani.ma>
show more ...
|
Revision tags: llvmorg-16.0.4, llvmorg-16.0.3 |
|
#
e31d0c20 |
| 25-Apr-2023 |
Med Ismail Bennani <medismail.bennani@gmail.com> |
[lldb] Improve breakpoint management for interactive scripted process
This patch improves breakpoint management when doing interactive scripted process debugging.
In other to know which process set
[lldb] Improve breakpoint management for interactive scripted process
This patch improves breakpoint management when doing interactive scripted process debugging.
In other to know which process set a breakpoint, we need to do some book keeping on the multiplexer scripted process. When initializing the multiplexer, we will first copy breakpoints that are already set on the driving target.
Everytime we launch or resume, we should copy breakpoints from the multiplexer to the driving process.
When creating a breakpoint from a child process, it needs to be set both on the multiplexer and on the driving process. We also tag the created breakpoint with the name and pid of the originator process.
This patch also implements all the requirement to achieve proper breakpoint management. That involves:
- Adding python interator for breakpoints and watchpoints in SBTarget - Add a new `ScriptedProcess.create_breakpoint` python method
Differential Revision: https://reviews.llvm.org/D148548
Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
show more ...
|
#
6cf66801 |
| 21-Apr-2023 |
Med Ismail Bennani <medismail.bennani@gmail.com> |
[lldb] Add an example of interactive scripted process debugging
This patch is a proof of concept that shows how a scripted process could be used with real process to perform interactive debugging.
[lldb] Add an example of interactive scripted process debugging
This patch is a proof of concept that shows how a scripted process could be used with real process to perform interactive debugging.
In this example, we run a process that spawns 10 threads. That process gets launched by an intermediary scripted process who's job is to intercept all of it's process events and dispatching them back either to the real process or to other child scripted processes.
In this example, we have 2 child scripted processes, with even and odd thread indices. The goal is to be able to do thread filtering and explore the various interactive debugging approaches, by letting a child process running when stopping the other process and inspecting it. Another approach would be to have the child processes execution in-sync to force running every child process when one of them starts running.
Differential Revision: https://reviews.llvm.org/D145297
Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
show more ...
|
Revision tags: llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4 |
|
#
70b9822e |
| 04-Mar-2023 |
Med Ismail Bennani <medismail.bennani@gmail.com> |
[lldb] Add an example of interactive scripted process debugging (NFC)
This patch is a proof of concept that shows how a scripted process could be used with real process to perform interactive debugg
[lldb] Add an example of interactive scripted process debugging (NFC)
This patch is a proof of concept that shows how a scripted process could be used with real process to perform interactive debugging.
In this example, we run a process that spawns 10 threads. Then, we create a intermediary scripted process who's job will be to wrap the real process while intercepting it's process events and dispatching them back either to the real process or to other child scripted processes.
In this example, we have 2 child scripted processes, with even and odd thread indices. The goal is to be able to do thread filtering and explore the various interactive debugging approaches, by letting a child process running when stopping the other process and inspecting it. Another approach would be to have the child processes execution in-sync to force running every child process when one of them starts running.
Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
show more ...
|