| #
1988c27e |
| 11-Jul-2024 |
Jason Molenda <jmolenda@apple.com> |
[lldb] [NFC] Update TestEarlyProcessLaunch to work on macOS 15
This test sets a breakpoint on malloc, as a way to stop early in dyld's setting up code, before the system libraries are initialized so
[lldb] [NFC] Update TestEarlyProcessLaunch to work on macOS 15
This test sets a breakpoint on malloc, as a way to stop early in dyld's setting up code, before the system libraries are initialized so we can confirm that we don't fetch the Objective-C class table before it's initialized.
In macOS 15 (macOS Sonoma), dyld doesn't call malloc any longer, so this heuristic/trick isn't working. It does call other things called *alloc though, so I'm changing this to use a regex breakpoint on that, to keep the test working.
show more ...
|
| #
9e6ea387 |
| 18-Jun-2024 |
Michael Buch <michaelbuch12@gmail.com> |
Reland "[lldb][ObjC] Don't query objective-c runtime for decls in C++ contexts"
This relands https://github.com/llvm/llvm-project/pull/95963. It had to be reverted because the `TestEarlyProcessLaunc
Reland "[lldb][ObjC] Don't query objective-c runtime for decls in C++ contexts"
This relands https://github.com/llvm/llvm-project/pull/95963. It had to be reverted because the `TestEarlyProcessLaunch.py` test was failing on the incremental macOS bots. The test failed because it was relying on expression log output from the ObjC introspection routines (but was the expression was called from a C++ context). The relanded patch simply ensures that the test runs the expressions as `ObjC` expressions.
When LLDB isn't able to find a `clang::Decl` in response to a `FindExternalVisibleDeclsByName`, it will fall-back to looking into the Objective-C runtime for that decl. This ends up doing a lot of work which isn't necessary when we're debugging a C++ program. This patch makes the ObjC lookup conditional on the language that the ExpressionParser deduced (which can be explicitly set using the `expr --language` option or is set implicitly if we're stopped in an ObjC frame or a C++ frame without debug-info).
rdar://96236519
show more ...
|
|
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 |
|
| #
2238dcc3 |
| 25-May-2023 |
Jonas Devlieghere <jonas@devlieghere.com> |
[NFC][Py Reformat] Reformat python files in lldb
This is an ongoing series of commits that are reformatting our Python code. Reformatting is done with `black` (23.1.0).
If you end up having problem
[NFC][Py Reformat] Reformat python files in lldb
This is an ongoing series of commits that are reformatting our Python code. Reformatting is done with `black` (23.1.0).
If you end up having problems merging this commit because you have made changes to a python file, the best way to handle that is to run `git checkout --ours <yourfile>` and then reformat it with black.
RFC: https://discourse.llvm.org/t/rfc-document-and-standardize-python-code-style
Differential revision: https://reviews.llvm.org/D151460
show more ...
|
|
Revision tags: llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7 |
|
| #
40766642 |
| 11-Jan-2023 |
Dave Lee <davelee.com@gmail.com> |
[lldb][test] Replace use of p with expression (NFC)
In API tests, replace use of the `p` alias with the `expression` command.
To avoid conflating tests of the alias with tests of the expression com
[lldb][test] Replace use of p with expression (NFC)
In API tests, replace use of the `p` alias with the `expression` command.
To avoid conflating tests of the alias with tests of the expression command, this patch canonicalizes to the use `expression`.
Differential Revision: https://reviews.llvm.org/D141539
show more ...
|
| #
27249c06 |
| 16-Dec-2022 |
Adrian Prantl <aprantl@apple.com> |
Temporarily skip test under ASAN
|
| #
ad10b3dc |
| 13-Dec-2022 |
Jason Molenda <jason@molenda.com> |
Skip TestEarlyProcessLaunch.py w/ system debugserver
This test depends on having a new packet supported by debugserver; skip it until we have a system debugserver installed on the CI bots with this
Skip TestEarlyProcessLaunch.py w/ system debugserver
This test depends on having a new packet supported by debugserver; skip it until we have a system debugserver installed on the CI bots with this change.
show more ...
|
| #
ee11ef6d |
| 13-Dec-2022 |
Jason Molenda <jason@molenda.com> |
Launch state discoverable in Darwin, use for SafeToCallFunctions
The dynamic linker on Darwin, dyld, can provide status of the process state for a few significant points early on, most importantly,
Launch state discoverable in Darwin, use for SafeToCallFunctions
The dynamic linker on Darwin, dyld, can provide status of the process state for a few significant points early on, most importantly, when libSystem has been initialized and it is safe to call functions behind the scenes. Pipe this information up from debugserver to DynamicLoaderMacOS, for the DynamicLoader::IsFullyInitialized() method, then have Thread::SafeToCallFunctions use this information. Finally, for the two utility functions in the AppleObjCRuntimeV2 LanguageRuntime plugin that I was fixing, call this method before running our utility functions to collect the list of objc classes registered in the runtime.
User expressions will still be allowed to run any time - we assume the user knows what they are doing - but these two additional utility functions that they are unaware of will be limited by this state.
Differential Revision: https://reviews.llvm.org/D139054 rdar://102436092 can probably make function calls.
show more ...
|