81a96aa6242f7b559770f5dc62316253cb8cb0d4 |
|
18-Apr-2013 |
Greg Clayton <gclayton@apple.com> |
Since we use C++11, we should switch over to using std::unique_ptr when C++11 is being used. To do this, we follow what we have done for shared pointers and we define a STD_UNIQUE_PTR macro that can be used and it will "do the right thing". Due to some API differences in std::unique_ptr and due to the fact that we need to be able to compile without C++11, we can't use move semantics so some code needed to change so that it can compile with either C++. Anyone wanting to use a unique_ptr or auto_ptr should now use the "STD_UNIQUE_PTR(TYPE)" macro. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179779 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h
|
79e9f965938ec5766b9caedfa85262ecb603c453 |
|
12-Feb-2013 |
Sean Callanan <scallanan@apple.com> |
Made LLDB build with the latest Clang. This meant changing the ClangASTSource to return a bool instead of returning a list of results. Our testsuite mostly works with this change, but some minor issues may remain both on LLDB's side and on Clang's side. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@174949 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h
|
8f2e392e8937aaf66f91201dc5f4190d61902c67 |
|
04-Feb-2012 |
Sean Callanan <scallanan@apple.com> |
I have brought LLDB up-to-date with top of tree LLVM/Clang. This brings in several fixes, including: - Improvements in the Just-In-Time compiler's allocation of memory: the JIT now allocates memory in chunks of sections, improving its ability to generate relocations. I have revamped the RecordingMemoryManager to reflect these changes, as well as to get the memory allocation and data copying out fo the ClangExpressionParser code. Jim Grosbach wrote the updates to the JIT on the LLVM side. - A new ExternalASTSource interface to allow LLDB to report accurate structure layout information to Clang. Previously we could only report the sizes of fields, not their offsets. This meant that if data structures included field alignment directives, we could not communicate the necessary alignment to Clang and accesses to the data would fail. Now we can (and I have update the relevant test case). Thanks to Doug Gregor for implementing the Clang side of this fix. - The way Objective-C interfaces are completed by Clang has been made consistent with RecordDecls; with help from Doug Gregor and Greg Clayton I have ensured that this still works. - I have eliminated all local LLVM and Clang patches, committing the ones that are still relevant to LLVM and Clang as needed. I have tested the changes extensively locally, but please let me know if they cause any trouble for you. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@149775 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h
|
3fc0c4f12b19f1e2bd276d2b6eb0fdd096a01414 |
|
28-Jan-2012 |
Greg Clayton <gclayton@apple.com> |
Adding the DWARF parser side for assited layout where the AST context will ask ExternalASTSource objects to help laying out a type. This is needed because the DWARF typically doesn't contain alignement or packing attribute values, and we need to be able to match up types that the compiler uses in expressions. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@149160 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h
|
2fc7e8d0d392fe85f22d9c75212ebca4cbce547f |
|
03-Dec-2011 |
Sean Callanan <scallanan@apple.com> |
Added ClangExternalASTSourceCommon, a local superclass for all our external AST sources that lets us associate arbitrary flags with the types we put into the AST contexts. Also added an API on ClangASTContext that allows access to these flags given only an ASTContext and a type. Because we don't have access to RTTI, and because at some point in the future we might encounter external AST sources that we didn't make (so they don't subclass ClangExternalASTSourceCommon) I added a magic number that we check before doing anything else, so that we can catch that problem as soon as it appears. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@145748 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h
|
a31b4ddfd213da1c2595fe2c5ae599d05de65400 |
|
26-Oct-2011 |
Sean Callanan <scallanan@apple.com> |
Added a new #define, LLVM_NDEBUG_OFF, that should be set if linking against an LLVM compiled with NDEBUG off. If it is set, we do not enable NDEBUG in any place where we include LLVM headers. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@143036 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h
|
9b6898f3ec1dedbe1dfc8bd7cd1d82a5b10e1bb0 |
|
30-Jul-2011 |
Sean Callanan <scallanan@apple.com> |
This change brings in the latest LLVM/Clang, and completes the support in the LLDB expression parser for incomplete types. Clang now imports types lazily, and we complete those types as necessary. Changes include: - ClangASTSource now supports three APIs which it passes to ClangExpressionDeclMap. CompleteType completes a TagDecl or an ObjCInterfaceDecl when needed; FindExternalVisibleDecls finds named entities that are visible in the expression's scope; and FindExternalLexicalDecls performs a (potentially restricted) search for entities inside a lexical scope like a namespace. These changes mean that entities in namespaces should work normally. - The SymbolFileDWARF code for searching a context for a specific name is now more general, and can search arbitrary contexts. - We are continuing to adapt our calls into LLVM from interfaces that take start and end iterators when accepting multiple items to interfaces that use ArrayRef. - I have cleaned up some code, especially our use of namespaces. This change is neutral for our testsuite and greatly improves correctness for large programs (like Clang) with complicated type systems. It should also lay the groundwork for improving the expression parser's performance as we are lazier and lazier about providing type information. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@136555 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h
|
e6d72ca9a6b22cd062136bbff039c3d8217f798a |
|
25-Jun-2011 |
Greg Clayton <gclayton@apple.com> |
This commit adds broad architectural support for hierarchical inspection of namespaces in the expression parser. ClangExpressionDeclMap hitherto reported that namespaces had been completely imported, even though the namespaces are returned empty. To deal with this situation, ClangASTSource was recently extended with an API to complete incomplete type definitions, and, for greater efficiency, to complete these definitions partially, returning only those objects that have a given name. This commit supports these APIs on LLDB's side, and uses it to provide information on types resident in namespaces. Namespaces are now imported as they were -- that is to say, empty -- but with minimal import mode on. This means that Clang will come back and request their contents by name as needed. We now respond with information on the contained types; this will be followed soon by information on functions and variables. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@133852 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h
|
d8b65024a03833688b487535d6b8710bc2ffdd51 |
|
17-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Added missing source files. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@123614 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h
|