[Lldb-commits] [lldb] [lldb] Add more ways to find the .dwp file. (PR #81067)
Greg Clayton via lldb-commits
lldb-commits at lists.llvm.org
Tue Feb 13 21:38:14 PST 2024
clayborg wrote:
> > I am fine with telling people what to do and giving them a golden path to what is easiest for our debuggers. And I will suggest to everyone that they use `.debug` and `.dwp`, but if we want to only support this, this leaves the downloading of the `.debug` file requiring a rename from `.dwp` to `.debug.dwp` in order for it to work for people. So then everything in this patch should be supported to allow loading the `.debug` file with a `.dwp` like we will encourage people to do.
>
> Not sure I follow - one of the scenarios mentioned in this patch is
>
> "lldb loads which is stripped but has .gnu_debuglink pointing to .debug with skeleton DWARF and needs to find .debug.dwp"
>
> I don't think we should support that, for instance - we should load `<exe>.dwp` in that case.
If the client strips the debug info first into "a.out.debug" and then runs llvm-dwp, they will end up with a "a.out.debug.dwp". We have clients that are doing this already and we want to support them. The compiler and linker drivers are staying out of this and we expect people to do this on their own, so this is what we end up with when there is no enforcement. I am not sure why this is such a sticking point. Lets make the debugger work for people.
>
> > It would also be nice if we do have a single `.debug` file that has debug info only, it would be nice to allow it and the `.dwp` file to be combined into a single file. There is no reason for them to be separate anymore once we have `a.out` stripped, it would be nice to only require `a.out.debug` which contains the `.dwp` sections inside of it already instead of requiring people to have two files needed for debug info.
>
> Maybe? I figure once you've got to download one file, two isn't a substantial imposition... - it'd be a bit weird having a DWP file and a .debug file mashed up together, but can't see any reason it wouldn't work - with the logic of "check if this program has a cu_index in it, if so, treat it as a dwp, otherwise look for .dwp, otherwise look for the dwos".
Just more things that can go wrong for clients as they try to use split DWARF. But this fix isn't about that, that was just a tangent.
https://github.com/llvm/llvm-project/pull/81067
More information about the lldb-commits
mailing list