[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-30 Thread Alexander Shaposhnikov via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL323832: [lldb] Enable debugging of binaries with mixed (splitted/regular) dwarf (authored by alexshap, committed by ). Changed prior to commit: https://reviews.llvm.org/D42563?vs=131938&id=132067#toc R

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-30 Thread Davide Italiano via Phabricator via lldb-commits
davide accepted this revision. davide added a subscriber: aprantl. davide added a comment. This revision is now accepted and ready to land. This looks good. Feel free to go ahead and commit, but please coordinate with @aprantl as he just landed his changes for the testsuite (so you might need to

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-30 Thread Alexander Shaposhnikov via Phabricator via lldb-commits
alexshap added inline comments. Comment at: packages/Python/lldbsuite/test/linux/mix-dwo-and-regular-objects/Makefile:10-12 +.PHONY: clean +clean:: + $(RM) -f a.dwo a.o b.o main tberghammer wrote: > Do you need this? I think Makefile.rules should generate

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-30 Thread Tamas Berghammer via Phabricator via lldb-commits
tberghammer accepted this revision. tberghammer added a comment. Thank you for looking into this. The change looks good on Linux with both normal-dwarf, split-dwarf and mixed-dwarf (as well as with dwp) but can you (or somebody from Apple) please make sure it doesn't break MachO and/or dSym (I

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-30 Thread Alexander Shaposhnikov via Phabricator via lldb-commits
alexshap updated this revision to Diff 131938. alexshap added a comment. Update makefile Repository: rL LLVM https://reviews.llvm.org/D42563 Files: packages/Python/lldbsuite/test/linux/mix-dwo-and-regular-objects/Makefile packages/Python/lldbsuite/test/linux/mix-dwo-and-regular-objects/

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-30 Thread Pavel Labath via Phabricator via lldb-commits
labath added a comment. I'll leave it up to others to say whether this solution is fully correct, but I have to say that it looks much cleaner than the previous one. Comment at: packages/Python/lldbsuite/test/linux/mix-dwo-and-regular-objects/Makefile:1-17 +.PHONY : all +.PHO

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-29 Thread Alexander Shaposhnikov via Phabricator via lldb-commits
alexshap updated this revision to Diff 131924. alexshap added a comment. fix comment https://reviews.llvm.org/D42563 Files: packages/Python/lldbsuite/test/linux/mix-dwo-and-regular-objects/Makefile packages/Python/lldbsuite/test/linux/mix-dwo-and-regular-objects/TestMixedDwarfBinary.py p

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-29 Thread Alexander Shaposhnikov via Phabricator via lldb-commits
alexshap updated this revision to Diff 131922. alexshap added a comment. one more update Repository: rL LLVM https://reviews.llvm.org/D42563 Files: packages/Python/lldbsuite/test/linux/mix-dwo-and-regular-objects/Makefile packages/Python/lldbsuite/test/linux/mix-dwo-and-regular-objects/

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-29 Thread Alexander Shaposhnikov via Phabricator via lldb-commits
alexshap updated this revision to Diff 131921. alexshap added a comment. fix typo Repository: rL LLVM https://reviews.llvm.org/D42563 Files: packages/Python/lldbsuite/test/linux/mix-dwo-and-regular-objects/Makefile packages/Python/lldbsuite/test/linux/mix-dwo-and-regular-objects/TestMix

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-29 Thread Alexander Shaposhnikov via Phabricator via lldb-commits
alexshap updated this revision to Diff 131920. alexshap added a comment. Update, rerun the tests. Repository: rL LLVM https://reviews.llvm.org/D42563 Files: packages/Python/lldbsuite/test/linux/mix-dwo-and-regular-objects/Makefile packages/Python/lldbsuite/test/linux/mix-dwo-and-regular

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-29 Thread Tamas Berghammer via Phabricator via lldb-commits
tberghammer added a comment. Thanks for the explanation, sorry I haven't read your commit message carefully. In case of non-split-dwarf a die_offset is sufficient to uniquely identify a DIE because it is an offset from the beginning of the debug_info section (we assume we have at most 1 debug_i

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-26 Thread Alexander Shaposhnikov via Phabricator via lldb-commits
alexshap added inline comments. Comment at: source/Plugins/SymbolFile/DWARF/DIERef.cpp:67-68 + lldb_private::ArchSpec arch; + if (dwarf->GetObjectFile()->GetArchitecture(arch) && + arch.GetTriple().isOSBinFormatELF()) { +// For SymbolFileDWARFDwo/SymbolFileDWARFDwoDwp

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-26 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added inline comments. Comment at: source/Plugins/SymbolFile/DWARF/DIERef.cpp:67-68 + lldb_private::ArchSpec arch; + if (dwarf->GetObjectFile()->GetArchitecture(arch) && + arch.GetTriple().isOSBinFormatELF()) { +// For SymbolFileDWARFDwo/SymbolFileDWARFDwoDwp

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-26 Thread Alexander Shaposhnikov via Phabricator via lldb-commits
alexshap added a comment. @tberghammer > ELF specific as nothing really ties SymbolFileDWARF with the ELF format the only reason why it's currently guarded to ELF is the fact that for Mach-O uuid also encodes something and i didn't want to change that (see the comment in the old version of the

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-26 Thread Tamas Berghammer via Phabricator via lldb-commits
tberghammer added a comment. Sorry, I misunderstood your test-case in my first comment so what I wrote there doesn't make sense. When you are trying to debug binaries (executable or shared library) where half of it is compiled with split-dwarf while the other half is compiled with non-split-dwa

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-26 Thread Tamas Berghammer via Phabricator via lldb-commits
tberghammer requested changes to this revision. tberghammer added a comment. Who is calling this method with a SimbolFileDWARF? Instead of adding a hack to this function what looks horrible to me considering that different debug info formats are using the upper 32bit of the UID for different pu

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-25 Thread Davide Italiano via Phabricator via lldb-commits
davide added a comment. In https://reviews.llvm.org/D42563#988700, @alexshap wrote: > @davide - the test case is in the description but i can try to add it to the > test suite. yes, please. Repository: rL LLVM https://reviews.llvm.org/D42563

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-25 Thread Alexander Shaposhnikov via Phabricator via lldb-commits
alexshap added a comment. @davide - the test case is in the description but i can try to add it to the test suite. Repository: rL LLVM https://reviews.llvm.org/D42563 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.or

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-25 Thread Davide Italiano via Phabricator via lldb-commits
davide requested changes to this revision. davide added a comment. This revision now requires changes to proceed. Testcase? Repository: rL LLVM https://reviews.llvm.org/D42563 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists

[Lldb-commits] [PATCH] D42563: [lldb] attempt to fix DIERef::GetUID

2018-01-25 Thread Alexander Shaposhnikov via Phabricator via lldb-commits
alexshap created this revision. alexshap added reviewers: tberghammer, labath, clayborg. Herald added subscribers: llvm-commits, JDevlieghere, aprantl. A small test where the issue is easy to reproduce: a.cpp: int f() { return 1; } b.cpp: extern int f(); void g() { int y = 14;