[Lldb-commits] [PATCH] D53375: [PDB] Improve performance of the PDB DIA plugin

2018-10-22 Thread Aleksandr Urakov via Phabricator via lldb-commits
aleksandr.urakov added a comment. Thank you! Repository: rLLDB LLDB https://reviews.llvm.org/D53375 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [PATCH] D53361: [API] Extend the `SBThreadPlan` interface

2018-10-22 Thread Aleksandr Urakov via Phabricator via lldb-commits
aleksandr.urakov added a comment. Thanks! Yes, I've added this exactly to allow usage of a scripted plan from another scripted plan. Sure, I will add a test for this :) But I can't figure out how this part is tested, can you explain me this a little, please? Repository: rLLDB LLDB https://

[Lldb-commits] [PATCH] D53086: [PDB] Fix flaky `variables-locations.test` after PR38857

2018-10-22 Thread Aleksandr Urakov via Phabricator via lldb-commits
aleksandr.urakov added a comment. Thanks for explanations! I completely agree with you that it were better (and simpler) to implement it with the help of debug info. And if I will improve it later, I'll also choose the way you have described. But the problem is that this sketch was made a coup

[Lldb-commits] [PATCH] D53506: [ClangASTContext] Extract VTable pointers from C++ objects

2018-10-22 Thread Aleksandr Urakov via Phabricator via lldb-commits
aleksandr.urakov created this revision. aleksandr.urakov added reviewers: clayborg, labath, granata.enrico. aleksandr.urakov added a project: LLDB. Herald added subscribers: lldb-commits, teemperor, abidh. This patch processes the case of retrieving a virtual base when the object is already read

[Lldb-commits] [PATCH] D53412: [lldb] Fixed deadlock when SBProcess is Kill()ed and inspected

2018-10-22 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added a comment. Since this is duplicated in so many spots, can we make a helper function to do this to ensure no one gets it wrong. We might be able to pass in the "guard" and "stop_locker" as reference variables and modify them in the helper function. Repository: rLLDB LLDB https

[Lldb-commits] [PATCH] D53506: [ClangASTContext] Extract VTable pointers from C++ objects

2018-10-22 Thread Zachary Turner via Phabricator via lldb-commits
zturner added a comment. > PDB has no enough info to restore VBase offsets properly, so we have to read > real VTable instead. What's missing that you're unable to restore the VBase offset properly? Repository: rLLDB LLDB https://reviews.llvm.org/D53506 __

[Lldb-commits] [lldb] r344913 - Some cleanups to the native pdb plugin [NFC].

2018-10-22 Thread Zachary Turner via lldb-commits
Author: zturner Date: Mon Oct 22 09:19:07 2018 New Revision: 344913 URL: http://llvm.org/viewvc/llvm-project?rev=344913&view=rev Log: Some cleanups to the native pdb plugin [NFC]. This is mostly some cleanup done in the process of implementing some basic support for types. I tried to split up th

[Lldb-commits] [PATCH] D53506: [ClangASTContext] Extract VTable pointers from C++ objects

2018-10-22 Thread Aleksandr Urakov via Phabricator via lldb-commits
aleksandr.urakov added a comment. In https://reviews.llvm.org/D53506#1270893, @zturner wrote: > What's missing that you're unable to restore the VBase offset properly? If I understand correctly, in the PDB there is only info about offset to VTablePtr and index in VTable, so there is enough inf

[Lldb-commits] [PATCH] D53506: [ClangASTContext] Extract VTable pointers from C++ objects

2018-10-22 Thread Zachary Turner via Phabricator via lldb-commits
zturner added a comment. In https://reviews.llvm.org/D53506#1270919, @aleksandr.urakov wrote: > In https://reviews.llvm.org/D53506#1270893, @zturner wrote: > > > What's missing that you're unable to restore the VBase offset properly? > > > If I understand correctly, in the PDB there is only info

[Lldb-commits] [PATCH] D50155: Delete MacOSXFrameBackchain unwind logic (NFC)

2018-10-22 Thread Jason Molenda via Phabricator via lldb-commits
jasonmolenda accepted this revision. jasonmolenda added a comment. This revision is now accepted and ready to land. Sorry for not replying to this. Yes the code is unused - it was the initial unwinder implementation when lldb is very young, before we had our current one. The main reason to kee

[Lldb-commits] [PATCH] D53511: [NativePDB] Support type lookup by name

2018-10-22 Thread Zachary Turner via Phabricator via lldb-commits
zturner created this revision. zturner added reviewers: labath, lemo, aleksandr.urakov, stella.stamenova, asmith. Herald added subscribers: arphaman, mgorny. This is the minimal set of functionality necessary to support type lookup by name in the native PDB plugin. For the purposes of testing I

[Lldb-commits] [PATCH] D53361: [API] Extend the `SBThreadPlan` interface

2018-10-22 Thread Jim Ingham via Phabricator via lldb-commits
jingham added a comment. This should be easy to test with the python testsuite (lldbtest.) Start with the sample_test in packages/Python/lldbsuite/test - don't use the inline one, that won't be flexible enough. Then you can just make a scripted thread plan that just pushes a "step over" or "s

[Lldb-commits] [PATCH] D52543: [DWARFSymbolFile] Add the module lock where necessary and assert that we own it.

2018-10-22 Thread Greg Clayton via Phabricator via lldb-commits
clayborg requested changes to this revision. clayborg added a comment. This revision now requires changes to proceed. See inlined comments Comment at: include/lldb/Symbol/SymbolFile.h:98 + virtual std::recursive_mutex &GetModuleMutex() const; + Might add a c

[Lldb-commits] [PATCH] D53368: [Symbol] Search symbols with name and type in a symbol file

2018-10-22 Thread Greg Clayton via Phabricator via lldb-commits
clayborg requested changes to this revision. clayborg added a comment. This revision now requires changes to proceed. All symbol tables are currently extracted from the object files via ObjectFile::GetSymtab(). Are symbols only in the PDB file? If so I would vote to add a "virtual void SymbolVen

[Lldb-commits] [PATCH] D53436: [LLDB] - Implement the support for the .debug_loclists section.

2018-10-22 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added a comment. Just fix the assert to use lldbassert so we don't crash as mentioned in the inline comment and this is good to go. Comment at: source/Expression/DWARFExpression.cpp:3070 // Not supported entry type + assert(false && "Not supported location

[Lldb-commits] [PATCH] D52543: [DWARFSymbolFile] Add the module lock where necessary and assert that we own it.

2018-10-22 Thread Jonas Devlieghere via Phabricator via lldb-commits
JDevlieghere updated this revision to Diff 170465. JDevlieghere marked 3 inline comments as done. JDevlieghere added a comment. Address Greg's feedback. https://reviews.llvm.org/D52543 Files: include/lldb/Symbol/SymbolFile.h source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp source/Plugi

[Lldb-commits] [PATCH] D53436: [LLDB] - Implement the support for the .debug_loclists section.

2018-10-22 Thread George Rimar via Phabricator via lldb-commits
grimar updated this revision to Diff 170468. grimar added a comment. - Used lldbassert as suggested. https://reviews.llvm.org/D53436 Files: include/lldb/Expression/DWARFExpression.h include/lldb/lldb-enumerations.h source/Core/Section.cpp source/Expression/DWARFExpression.cpp source/E

Re: [Lldb-commits] [PATCH] D53368: [Symbol] Search symbols with name and type in a symbol file

2018-10-22 Thread Zachary Turner via lldb-commits
To answer your question, PE/COFF executable symbol tables are basically empty On Mon, Oct 22, 2018 at 10:44 AM Greg Clayton via Phabricator < revi...@reviews.llvm.org> wrote: > clayborg requested changes to this revision. > clayborg added a comment. > This revision now requires changes to proceed.

[Lldb-commits] [PATCH] D53368: [Symbol] Search symbols with name and type in a symbol file

2018-10-22 Thread Zachary Turner via Phabricator via lldb-commits
zturner added a subscriber: aleksandr.urakov. zturner added a comment. To answer your question, PE/COFF executable symbol tables are basically empty Repository: rLLDB LLDB https://reviews.llvm.org/D53368 ___ lldb-commits mailing list lldb-commits

[Lldb-commits] [PATCH] D52543: [DWARFSymbolFile] Add the module lock where necessary and assert that we own it.

2018-10-22 Thread Greg Clayton via Phabricator via lldb-commits
clayborg accepted this revision. clayborg added a comment. This revision is now accepted and ready to land. LGTM https://reviews.llvm.org/D52543 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo

[Lldb-commits] [PATCH] D53412: [lldb] Fixed deadlock when SBProcess is Kill()ed and inspected

2018-10-22 Thread Cameron via Phabricator via lldb-commits
cameron314 added a comment. I suppose we could but there's a few places outside of SBProcess that also use the run lock and API mutex; personally, I prefer it to be explicit which mutex is being taken first. Repository: rLLDB LLDB https://reviews.llvm.org/D53412 _

[Lldb-commits] [lldb] r344945 - [SymbolFile] Add the module lock where necessary and assert that we own it.

2018-10-22 Thread Jonas Devlieghere via lldb-commits
Author: jdevlieghere Date: Mon Oct 22 13:14:36 2018 New Revision: 344945 URL: http://llvm.org/viewvc/llvm-project?rev=344945&view=rev Log: [SymbolFile] Add the module lock where necessary and assert that we own it. As discussed with Greg at the dev meeting, we need to ensure we have the module lo

[Lldb-commits] [PATCH] D52543: [DWARFSymbolFile] Add the module lock where necessary and assert that we own it.

2018-10-22 Thread Jonas Devlieghere via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rLLDB344945: [SymbolFile] Add the module lock where necessary and assert that we own it. (authored by JDevlieghere, committed by ). Changed prior to commit: https://reviews.llvm.org/D52543?vs=170465&id=17

[Lldb-commits] [PATCH] D53375: [PDB] Improve performance of the PDB DIA plugin

2018-10-22 Thread Hui Huang via Phabricator via lldb-commits
Hui added a comment. In https://reviews.llvm.org/D53375#1269504, @asmith wrote: > Thanks for adding the cache. We noticed the slowdown also and were discussing > the same thing. This LGTM if the other reviewers done have any comments. I think parsing types e.g. SymbolFilePDB::ParseTypes also h

[Lldb-commits] [PATCH] D53511: [NativePDB] Support type lookup by name

2018-10-22 Thread Leonard Mosescu via Phabricator via lldb-commits
lemo added a comment. Nice :) Comment at: lldb/lit/SymbolFile/NativePDB/tag-types.cpp:87 +// Test single inheritance. +class Derived : public Class { +public: - at least one virtual function + override? - at least one method returning void? C

[Lldb-commits] [PATCH] D53511: [NativePDB] Support type lookup by name

2018-10-22 Thread Zachary Turner via Phabricator via lldb-commits
zturner added inline comments. Comment at: lldb/lit/SymbolFile/NativePDB/tag-types.cpp:87 +// Test single inheritance. +class Derived : public Class { +public: lemo wrote: > - at least one virtual function + override? > - at least one method returning void? The r

[Lldb-commits] [PATCH] D53530: Fix (and improve) the support for C99 variable length array types

2018-10-22 Thread Adrian Prantl via Phabricator via lldb-commits
aprantl created this revision. aprantl added reviewers: jingham, clayborg. aprantl added a project: LLDB. Herald added a subscriber: JDevlieghere. Clang recently improved its DWARF support for C VLA types. The DWARF now looks like this: 0x0051: DW_TAG_variable [4]

[Lldb-commits] [lldb] r344960 - [DWARF] Use a function-local offset for AT_call_return_pc

2018-10-22 Thread Vedant Kumar via lldb-commits
Author: vedantk Date: Mon Oct 22 14:44:21 2018 New Revision: 344960 URL: http://llvm.org/viewvc/llvm-project?rev=344960&view=rev Log: [DWARF] Use a function-local offset for AT_call_return_pc Logs provided by @stella.stamenova indicate that on Linux, lldb adds a spurious slide offset to the retur

[Lldb-commits] [PATCH] D53532: [FileSpec] Add VFS support

2018-10-22 Thread Jonas Devlieghere via Phabricator via lldb-commits
JDevlieghere created this revision. JDevlieghere added reviewers: zturner, labath, clayborg. JDevlieghere added a project: LLDB. This patch adds support for virtual file systems by delegating relevant operations. By default the real file system is used so this should be NFC for all intents and p

[Lldb-commits] [PATCH] D53511: [NativePDB] Support type lookup by name

2018-10-22 Thread Leonard Mosescu via Phabricator via lldb-commits
lemo accepted this revision. lemo added a comment. This revision is now accepted and ready to land. Looks good to me, minor notes inline. Comment at: lldb/lit/SymbolFile/NativePDB/tag-types.cpp:131 + +int main(int argc, char **argv) { + Struct S; zturner wrote

[Lldb-commits] [PATCH] D53530: Fix (and improve) the support for C99 variable length array types

2018-10-22 Thread Jim Ingham via Phabricator via lldb-commits
jingham added a comment. This seems good to me, but Greg is more expert than I so I'd wait on his okay. Comment at: source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:1901-1907 +dwarf->GetTypeList()->Insert(type_sp); +// Cache the type if it isn't context-s

[Lldb-commits] [PATCH] D53530: Fix (and improve) the support for C99 variable length array types

2018-10-22 Thread Adrian Prantl via Phabricator via lldb-commits
aprantl updated this revision to Diff 170526. aprantl added a comment. Factor out caching of types as suggested. Thanks! https://reviews.llvm.org/D53530 Files: include/lldb/Symbol/SymbolFile.h include/lldb/Symbol/Variable.h packages/Python/lldbsuite/test/lang/c/vla/Makefile packages/Pyt

[Lldb-commits] [lldb] r344979 - Fix typo in ASSERT_MODULE_LOCK macro definition

2018-10-22 Thread Jonas Devlieghere via lldb-commits
Author: jdevlieghere Date: Mon Oct 22 17:18:27 2018 New Revision: 344979 URL: http://llvm.org/viewvc/llvm-project?rev=344979&view=rev Log: Fix typo in ASSERT_MODULE_LOCK macro definition Modified: lldb/trunk/include/lldb/Symbol/SymbolFile.h Modified: lldb/trunk/include/lldb/Symbol/SymbolFile

[Lldb-commits] [lldb] r344982 - [ValueObject] Stop assuming types are non-zero sized.

2018-10-22 Thread Davide Italiano via lldb-commits
Author: davide Date: Mon Oct 22 17:31:46 2018 New Revision: 344982 URL: http://llvm.org/viewvc/llvm-project?rev=344982&view=rev Log: [ValueObject] Stop assuming types are non-zero sized. Some backends might violate this assumption. No test case upstream unfortunately as this is not the case with