llvm-project/clang/lib/AST
David Majnemer c986fcc9aa MS ABI: Simplify microsoft mangling of template instantiations
Use mangled template instantiation name as key for back references.
Templates have their own context for back references, so their mangling
is always the same regardless of context. This avoids mangling template
instantiations twice.

Patch by Agustín Bergé!

llvm-svn: 210416
2014-06-08 04:51:13 +00:00
..
APValue.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
ASTConsumer.cpp Sort all of Clang's files under 'lib', and fix up the broken headers 2012-12-04 09:13:33 +00:00
ASTContext.cpp Delay lookup of simple default template arguments under -fms-compatibility 2014-06-06 22:36:36 +00:00
ASTDiagnostic.cpp Implement -Wframe-larger-than backend diagnostic 2014-06-05 22:10:59 +00:00
ASTDumper.cpp Teach AST dumper to dump the array filler in an initializer list. 2014-06-03 08:24:28 +00:00
ASTImporter.cpp Rename SourceManager::createFileIDForMemBuffer() 2014-05-16 17:23:01 +00:00
ASTTypeTraits.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
AttrImpl.cpp Refactor the Microsoft inheritance attribute handling so that it no longer has special treatment. Also fixes a minor bug where the attributes were being parsed as though they were GNU-style attributes when they were in fact keyword attributes. 2013-12-18 23:44:18 +00:00
CMakeLists.txt [CMake] Use LINK_LIBS instead of target_link_libraries(). 2014-02-26 06:41:29 +00:00
CXXABI.h Drop AST's version of ARMCXXABI, it doesn't differ from the Itanium base 2014-05-13 11:20:16 +00:00
CXXInheritance.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
Comment.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
CommentBriefParser.cpp Some refactoring in my patch on document 2013-03-02 02:39:57 +00:00
CommentCommandTraits.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
CommentLexer.cpp CommentLexer: eliminate an NDEBUG from the headers 2013-12-07 13:51:26 +00:00
CommentParser.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
CommentSema.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
Decl.cpp Fix crash declaring global allocation function with zero parameters. Fixes PR19968! 2014-06-07 00:43:57 +00:00
DeclBase.cpp Move the logic for testing for namespace std into one location. This check can 2014-05-28 02:16:01 +00:00
DeclCXX.cpp Avoid allocating extra memory to handle the lazy definition data pointer for 2014-05-22 23:19:02 +00:00
DeclFriend.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
DeclGroup.cpp Sort all of Clang's files under 'lib', and fix up the broken headers 2012-12-04 09:13:33 +00:00
DeclObjC.cpp If a declaration is loaded, and then a module import adds a redeclaration, then 2014-05-16 23:01:30 +00:00
DeclOpenMP.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
DeclPrinter.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
DeclTemplate.cpp If a declaration is loaded, and then a module import adds a redeclaration, then 2014-05-16 23:01:30 +00:00
DeclarationName.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
Expr.cpp Improved location for non-constant initializers diagnostics. 2014-05-22 19:20:46 +00:00
ExprCXX.cpp Add range accessors for captures of a LambdaExpr. 2014-05-27 19:13:04 +00:00
ExprClassification.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
ExprConstant.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
ExternalASTSource.cpp Move virtual methods out of line. 2014-05-21 14:19:22 +00:00
InheritViz.cpp [C++11] Replacing CXXRecordDecl iterators bases_begin() and bases_end() with iterator_range bases(). Updating all of the usages of the iterators with range-based for loops. 2014-03-13 15:41:46 +00:00
ItaniumCXXABI.cpp Drop AST's version of ARMCXXABI, it doesn't differ from the Itanium base 2014-05-13 11:20:16 +00:00
ItaniumMangle.cpp Remove old proposal notices 2014-06-05 22:11:20 +00:00
Makefile
Mangle.cpp [C++11] Replacing FunctionProtoType iterators param_type_begin() and param_type_end() with iterator_range param_types(). Updating all of the usages of the iterators with range-based for loops. 2014-03-17 15:23:01 +00:00
MangleNumberingContext.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
MicrosoftCXXABI.cpp [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-11 06:22:39 +00:00
MicrosoftMangle.cpp MS ABI: Simplify microsoft mangling of template instantiations 2014-06-08 04:51:13 +00:00
NSAPI.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
NestedNameSpecifier.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
ParentMap.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
RawCommentList.cpp Comment parsing: when comment ranges are deserialized from multiple modules, 2014-03-27 15:40:39 +00:00
RecordLayout.cpp CXXInfo memory should be released after calling the destructor 2014-05-24 07:19:25 +00:00
RecordLayoutBuilder.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
SelectorLocationsKind.cpp Fix crash when using archaic protocol, rdar://10238337 2011-10-05 21:28:06 +00:00
Stmt.cpp [OPENMP] Parsing/Sema for OMPLasprivateClause. 2014-06-04 13:06:39 +00:00
StmtIterator.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
StmtPrinter.cpp Adding a new #pragma for the vectorize and interleave optimization hints. 2014-06-06 12:40:24 +00:00
StmtProfile.cpp PR19936: Fix a really dumb bug where we would profile dependent operator* expressions incorrectly. 2014-06-05 22:43:40 +00:00
StmtViz.cpp
TemplateBase.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
TemplateName.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
Type.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
TypeLoc.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
TypePrinter.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00
VTTBuilder.cpp [C++11] Replacing CXXRecordDecl iterators bases_begin() and bases_end() with iterator_range bases(). Updating all of the usages of the iterators with range-based for loops. 2014-03-13 15:41:46 +00:00
VTableBuilder.cpp [C++11] Use 'nullptr'. AST edition. 2014-05-12 05:36:57 +00:00