[Lldb-commits] [lldb] [LLDB][DYLD] Remove logic around not rebasing when main executable has a load address (PR #110885)
via lldb-commits
lldb-commits at lists.llvm.org
Wed Oct 2 09:53:39 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-lldb
Author: Jacob Lalonde (Jlalond)
<details>
<summary>Changes</summary>
This is a part of #<!-- -->109477 that I'm making into it's own patch. Here we remove logic from the DYLD that prevents it's logic from running if the main executable already has a load address. Instead we let the DYLD fully determine what should be loaded and what shouldn't.
---
Full diff: https://github.com/llvm/llvm-project/pull/110885.diff
1 Files Affected:
- (modified) lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp (-15)
``````````diff
diff --git a/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp b/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
index 51e4b3e6728f23..b9c0e174c3be68 100644
--- a/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
+++ b/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
@@ -108,21 +108,6 @@ void DynamicLoaderPOSIXDYLD::DidAttach() {
// if we dont have a load address we cant re-base
bool rebase_exec = load_offset != LLDB_INVALID_ADDRESS;
- // if we have a valid executable
- if (executable_sp.get()) {
- lldb_private::ObjectFile *obj = executable_sp->GetObjectFile();
- if (obj) {
- // don't rebase if the module already has a load address
- Target &target = m_process->GetTarget();
- Address addr = obj->GetImageInfoAddress(&target);
- if (addr.GetLoadAddress(&target) != LLDB_INVALID_ADDRESS)
- rebase_exec = false;
- }
- } else {
- // no executable, nothing to re-base
- rebase_exec = false;
- }
-
// if the target executable should be re-based
if (rebase_exec) {
ModuleList module_list;
``````````
</details>
https://github.com/llvm/llvm-project/pull/110885
More information about the lldb-commits
mailing list