[Lldb-commits] [PATCH] D55356: Add a method to get the "base" file address of an object file

Greg Clayton via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Tue Dec 11 09:53:16 PST 2018

clayborg added a comment.

In D55356#1327224 <https://reviews.llvm.org/D55356#1327224>, @clayborg wrote:

> In D55356#1327099 <https://reviews.llvm.org/D55356#1327099>, @labath wrote:
> > Actually, this now causes an lldb-mi test to fail, but it's not clear to me if the problem is in the test, or this patch. This issue happens when lldb-mi is printing the "library loaded" message after a module gets added to a not-yet-running target. It tries to print the load address by first getting the base address and then converting that to a load address.
> >
> > Before this patch, that would always fail, because well.. ELF and PECOFF had this function unimplemented, and for MachO the base address was section-relative, and so it wasn't resolved to a load address without the section being loaded. However, with this patch, in the ELF (and presumably PECOFF) case, the load address is not section-relative and so the `GetLoadAddress` function happily returns the address.
> >
> > Is this the expected behavior here? (i.e., object_file->GetLoadAddress().GetLoadAddress(target) returning a valid value even though the target is not running)
> Not unless someone has manually set the section load address in the test?

But even if the test is setting the section load address, this won't work for anything else other than Darwin, so the test would need to be fixed,



More information about the lldb-commits mailing list