Revision tags: llvmorg-4.0.0-rc1 |
|
#
f5bb1d6c |
| 19-Dec-2016 |
Luke Drummond <luke.drummond@codeplay.com> |
Expression evaluation for overloaded C functions (redux)
This is a redux of [Ewan's patch](https://reviews.llvm.org/D17957) , refactored to properly substitute primitive types using a hook in the i
Expression evaluation for overloaded C functions (redux)
This is a redux of [Ewan's patch](https://reviews.llvm.org/D17957) , refactored to properly substitute primitive types using a hook in the itanium demangler, and updated after the previous patch went stale
The new `SubsPrimitiveParmItanium` function takes a symbol name and replacement primitive type parameter as before but parses it using the FastDemangler, which has been modified to be able to notify clients of parse events (primitive types at this point).
Additionally, we now use a `set` of `ConstStrings` instead of a `vector` so that we don't try and resolve the same invalid candidate multiple times.
Differential Revision: https://reviews.llvm.org/D27223 Subscribers: lldb-commits
llvm-svn: 290117
show more ...
|
Revision tags: llvmorg-3.9.1, llvmorg-3.9.1-rc3, llvmorg-3.9.1-rc2, llvmorg-3.9.1-rc1 |
|
#
63db2395 |
| 01-Nov-2016 |
Enrico Granata <egranata@apple.com> |
Implement a general type scavenger that can dig types from debug info + a filtering mechanism to accept/reject results thusly obtained
Implement the C++ type lookup support in terms of this general
Implement a general type scavenger that can dig types from debug info + a filtering mechanism to accept/reject results thusly obtained
Implement the C++ type lookup support in terms of this general scavenger
The idea is that we may want other languages to do debug info based search (exclusively, or as an add-on to runtime/module based searching) and it makes sense to avoid duplicating this functionality
llvm-svn: 285727
show more ...
|
#
c046497b |
| 27-Oct-2016 |
Enrico Granata <egranata@apple.com> |
Add support for "type lookup" to find C and C++ types
This is an important first step in closing the functionality gap between "type lookup" and "images lookup -t"
rdar://28971388
llvm-svn: 285332
|
#
d161b214 |
| 21-Oct-2016 |
Tamas Berghammer <tberghammer@google.com> |
Add data formatter for libstdc++ unique_ptr
Differential revision: https://reviews.llvm.org/D25734
llvm-svn: 284830
|
#
7f15dba1 |
| 21-Oct-2016 |
Tamas Berghammer <tberghammer@google.com> |
Add data formatter for libstdc++ tuple
Differential revision: https://reviews.llvm.org/D25733
llvm-svn: 284829
|
#
4fa098a5 |
| 06-Oct-2016 |
Zachary Turner <zturner@google.com> |
Convert UniqueCStringMap to use StringRef.
llvm-svn: 283494
|
#
95eae423 |
| 21-Sep-2016 |
Zachary Turner <zturner@google.com> |
Make lldb::Regex use StringRef.
This updates getters and setters to use StringRef instead of const char *. I tested the build on Linux, Windows, and OSX and saw no build or test failures. I cannot
Make lldb::Regex use StringRef.
This updates getters and setters to use StringRef instead of const char *. I tested the build on Linux, Windows, and OSX and saw no build or test failures. I cannot test any BSD or Android variants, however I expect the required changes to be minimal or non-existant.
llvm-svn: 282079
show more ...
|
#
b9c1b51e |
| 06-Sep-2016 |
Kate Stone <katherine.stone@apple.com> |
*** This commit represents a complete reformatting of the LLDB source code *** to conform to clang-format’s LLVM style. This kind of mass change has *** two obvious implications:
Firstly, merging t
*** This commit represents a complete reformatting of the LLDB source code *** to conform to clang-format’s LLVM style. This kind of mass change has *** two obvious implications:
Firstly, merging this particular commit into a downstream fork may be a huge effort. Alternatively, it may be worth merging all changes up to this commit, performing the same reformatting operation locally, and then discarding the merge for this particular commit. The commands used to accomplish this reformatting were as follows (with current working directory as the root of the repository):
find . \( -iname "*.c" -or -iname "*.cpp" -or -iname "*.h" -or -iname "*.mm" \) -exec clang-format -i {} + find . -iname "*.py" -exec autopep8 --in-place --aggressive --aggressive {} + ;
The version of clang-format used was 3.9.0, and autopep8 was 1.2.4.
Secondly, “blame” style tools will generally point to this commit instead of a meaningful prior commit. There are alternatives available that will attempt to look through this change and find the appropriate prior commit. YMMV.
llvm-svn: 280751
show more ...
|
#
1b54baef |
| 31-Aug-2016 |
Enrico Granata <egranata@apple.com> |
Add a data formatter for std::function in libcxx
llvm-svn: 280295
|
Revision tags: llvmorg-3.9.0, llvmorg-3.9.0-rc3, llvmorg-3.9.0-rc2 |
|
#
9361c439 |
| 18-Aug-2016 |
Pavel Labath <labath@google.com> |
Fix parsing of complicated C++ names
Summary: CPlusPlusLanguage::MethodName was not correctly parsing templated functions whose demangled name included the return type -- the space before the functi
Fix parsing of complicated C++ names
Summary: CPlusPlusLanguage::MethodName was not correctly parsing templated functions whose demangled name included the return type -- the space before the function name was included in the "context" and the context itself was not terminated correctly due to a misuse of the substr function (second argument is length, not the end position). Fix that and add a regression test.
Reviewers: clayborg
Subscribers: lldb-commits
Differential Revision: https://reviews.llvm.org/D23608
llvm-svn: 279038
show more ...
|
Revision tags: llvmorg-3.9.0-rc1 |
|
#
14cb4f96 |
| 06-Jul-2016 |
Enrico Granata <egranata@apple.com> |
Fix the installation of the vector<bool> data formatters in order to restore functionality
llvm-svn: 274697
|
#
9c6c8e99 |
| 06-Jul-2016 |
Tamas Berghammer <tberghammer@google.com> |
Add data formatter for libstdc++ shared_ptr and weak_ptr
Differential revision: http://reviews.llvm.org/D21984
llvm-svn: 274617
|
#
4721a55e |
| 04-Jul-2016 |
Tamas Berghammer <tberghammer@google.com> |
Fix the libc++ pretty printers for the android NDK
The libc++ shipped with the android NDK is shipped using a different internal namespace then the upstream libc++ (__ndk1 vs. __1) to avoid an ODR v
Fix the libc++ pretty printers for the android NDK
The libc++ shipped with the android NDK is shipped using a different internal namespace then the upstream libc++ (__ndk1 vs. __1) to avoid an ODR violation between the platform and the user application. This change fixes our pretty printers to be able to work with the types from the android NDK libc++.
Differential revision: http://reviews.llvm.org/D21680
llvm-svn: 274489
show more ...
|
Revision tags: llvmorg-3.8.1, llvmorg-3.8.1-rc1 |
|
#
c530ba98 |
| 02-May-2016 |
Sean Callanan <scallanan@apple.com> |
Import block pointers from DWARF as Clang block pointers, not as structs.
Also added a data formatter that presents them as structs if you use frame variable to look at their contents. Now the bloc
Import block pointers from DWARF as Clang block pointers, not as structs.
Also added a data formatter that presents them as structs if you use frame variable to look at their contents. Now the blocks testcase works.
<rdar://problem/15984431>
llvm-svn: 268307
show more ...
|
#
08f5674b |
| 12-Apr-2016 |
Greg Clayton <gclayton@apple.com> |
Fixed being able to set breakpoints on destructors when we don't fully specify the demangled name. So all of the following now work:
(lldb) b ~Foo (lldb) b Foo::~Foo (lldb) b Bar::Foo::~Foo
Improve
Fixed being able to set breakpoints on destructors when we don't fully specify the demangled name. So all of the following now work:
(lldb) b ~Foo (lldb) b Foo::~Foo (lldb) b Bar::Foo::~Foo
Improved out C++ breakpoint locations tests as well to cover this issue.
<rdar://problem/25577252>
llvm-svn: 266139
show more ...
|
Revision tags: llvmorg-3.8.0 |
|
#
bbd16815 |
| 29-Feb-2016 |
Eugene Zelenko <eugene.zelenko@gmail.com> |
Fix Clang-tidy modernize-use-nullptr warnings in source/Plugins/Language; other minor fixes.
llvm-svn: 262246
|
Revision tags: llvmorg-3.8.0-rc3 |
|
#
75995b5e |
| 12-Feb-2016 |
Enrico Granata <egranata@apple.com> |
Data formatter support for libc++ std::atomic<T>
On libc++ std::atomic is a fairly simple data type (layout wise, at least), wrapping actual contents in a member variable named "__a_"
All the forma
Data formatter support for libc++ std::atomic<T>
On libc++ std::atomic is a fairly simple data type (layout wise, at least), wrapping actual contents in a member variable named "__a_"
All the formatters are doing is "peel away" this intermediate layer and exposing user data as direct children or values of the std::atomic root variable
Fixes rdar://24329405
llvm-svn: 260752
show more ...
|
Revision tags: llvmorg-3.8.0-rc2, llvmorg-3.8.0-rc1 |
|
#
9293fc41 |
| 07-Jan-2016 |
Siva Chandra <sivachandra@google.com> |
Better scheme to lookup alternate mangled name when looking up function address.
Summary: This change is relevant for inferiors compiled with GCC. GCC does not emit complete debug info for std::basi
Better scheme to lookup alternate mangled name when looking up function address.
Summary: This change is relevant for inferiors compiled with GCC. GCC does not emit complete debug info for std::basic_string<...>, and consequently, Clang (the LLDB compiler) does not generate correct mangled names for certain functions.
This change removes the hard-coded alternate names in ItaniumABILanguageRuntime.cpp.
Before the hard-coded names were put in ItaniumABILanguageRuntime.cpp, one could not evaluate std::string methods (ex. std::string::length). After putting in the hard-coded names, one could evaluate them. However, it did not still enable one to call methods on, say for example, std::vector<string>. This change makes that possible.
There is some amount of incompleteness in this change. Consider the following example:
std::string hello("hello"), world("world"); std::map<std::string, std::string> m; m[hello] = world;
One can still not evaluate the expression "m[hello]" in LLDB. Will address this issue in another pass.
Reviewers: jingham, vharron, evgeny777, spyffe, dawn
Subscribers: clayborg, dawn, lldb-commits
Differential Revision: http://reviews.llvm.org/D12809
llvm-svn: 257113
show more ...
|
Revision tags: llvmorg-3.7.1, llvmorg-3.7.1-rc2, llvmorg-3.7.1-rc1 |
|
#
e5839f3e |
| 29-Oct-2015 |
Enrico Granata <egranata@apple.com> |
Remove two #if0ed regions of code that we were using for an experiment but don't really want
llvm-svn: 251670
|
#
458d3d6a |
| 27-Oct-2015 |
Tamas Berghammer <tberghammer@google.com> |
Fix MSVC build after r251402
llvm-svn: 251403
|
#
9fa11470 |
| 27-Oct-2015 |
Tamas Berghammer <tberghammer@google.com> |
Some minor improvements on the symtab parsing code
* Remove an unneccessary re-computaion on arch spec from the ELF file * Use a local cache to optimize name based section lookups in symtab parsin
Some minor improvements on the symtab parsing code
* Remove an unneccessary re-computaion on arch spec from the ELF file * Use a local cache to optimize name based section lookups in symtab parsing * Optimize C++ method basename validation with replacing a regex with hand written code
These modifications reduce the time required to parse the symtab from large applications by ~25% (tested with LLDB as inferior)
Differential revision: http://reviews.llvm.org/D14088
llvm-svn: 251402
show more ...
|
#
82ffb8e9 |
| 22-Oct-2015 |
Todd Fiala <todd.fiala@gmail.com> |
Fix libstdc++ data formatters on Ubuntu 15.10 x86_64
See http://reviews.llvm.org/D13964 for details.
llvm-svn: 250965
|
#
045c8292 |
| 25-Sep-2015 |
Dawn Perchik <dawn@burble.org> |
Fix evaluation of unicode character arrays (char16_t[] and char32_t[])
Suppose we have the UTF-16 string: char16_t[] s = u"hello"; Before this patch, evaluating the string in lldb would get:
Fix evaluation of unicode character arrays (char16_t[] and char32_t[])
Suppose we have the UTF-16 string: char16_t[] s = u"hello"; Before this patch, evaluating the string in lldb would get: (char16_t [6]) $0 = ([0] = U+0068 u'h', [1] = U+0065 u'e', [2] = U+006c u'l', [3] = U+006c u'l', [4] = U+006f u'o', [5] = U+0000 u'\0') After applying the patch, we now get: (char16_t [6]) $0 = u"hello"
Patch from evgeny.leviant@gmail.com Reviewed by: granata.enrico Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D13053
llvm-svn: 248555
show more ...
|
#
7cb59e1a |
| 16-Sep-2015 |
Enrico Granata <egranata@apple.com> |
Move hardcoded formatters from the FormatManager to the Language plugins
llvm-svn: 247831
|
#
c6bbb8b6 |
| 04-Sep-2015 |
Enrico Granata <egranata@apple.com> |
Never mind, I see what the problem is on the Windows build. Attempt a fix
llvm-svn: 246876
|