labath added a comment.

Thanks for the review and sorry for the delay (I was OOO). The idea to use 
`Process::GetLoadAddressPermissions` makes sense, both from consistency and 
correctness perspectives. Unfortunately it does not work "out of the box" 
because minidump core files (my primary use case for this) do not currently 
provide enough information through the memory region info api. It tries pretty 
hard to achieve that, but in the case of regular (not "full memory dumps") 
windows minidump, all we have is the "MemoryList" stream, which only contains a 
couple of memory regions, and it does not include the areas covered by loaded 
modules (which is where PCs should point). If this is to work, we'd need to 
extend this memory parsing code to also take into account the module memory 
ranges (from the ModuleList stream).

@clayborg, you're the one who wrote the memory region parsing code IIRC. Does 
that sound OK to you ?

The disassembling idea also sounds interesting, but I am afraid it's going to 
be very useful for my main use case. The main use case for breakpad symbol 
files is for the cases where one does not have the original object file (and 
when one has the original object file, it probably also has proper debug and 
unwind info). It _might_ be more interesting once we get around to PECOFF 
unwinding, as it also uses raSearch (on i386), and one is more likely to have 
the original file to disassemble there, but even then, I'd first check what 
other windows debuggers do, as might be best to just follow their lead. So, for 
now, I'd like to skip the disassembling logic.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D66638/new/

https://reviews.llvm.org/D66638



_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to