Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/bsd/llvm/dist/clang Import Clang 3.5svn r199312



details:   https://anonhg.NetBSD.org/src/rev/debcac20762a
branches:  trunk
changeset: 326012:debcac20762a
user:      joerg <joerg%NetBSD.org@localhost>
date:      Wed Jan 15 21:25:28 2014 +0000

description:
Import Clang 3.5svn r199312

diffstat:

 external/bsd/llvm/dist/clang/CMakeLists.txt                                                            |    17 +-
 external/bsd/llvm/dist/clang/CODE_OWNERS.TXT                                                           |     4 +
 external/bsd/llvm/dist/clang/Makefile                                                                  |     6 +
 external/bsd/llvm/dist/clang/docs/InternalsManual.rst                                                  |   145 +-
 external/bsd/llvm/dist/clang/docs/LanguageExtensions.rst                                               |    87 +-
 external/bsd/llvm/dist/clang/docs/LibTooling.rst                                                       |     4 +-
 external/bsd/llvm/dist/clang/docs/ReleaseNotes.rst                                                     |     5 +
 external/bsd/llvm/dist/clang/docs/tools/clang.pod                                                      |    19 +-
 external/bsd/llvm/dist/clang/include/clang/AST/APValue.h                                               |    96 +-
 external/bsd/llvm/dist/clang/include/clang/AST/CharUnits.h                                             |     2 +-
 external/bsd/llvm/dist/clang/include/clang/AST/Comment.h                                               |     6 +-
 external/bsd/llvm/dist/clang/include/clang/AST/CommentLexer.h                                          |     2 +-
 external/bsd/llvm/dist/clang/include/clang/AST/Decl.h                                                  |    15 +-
 external/bsd/llvm/dist/clang/include/clang/AST/DeclBase.h                                              |    10 +-
 external/bsd/llvm/dist/clang/include/clang/AST/Expr.h                                                  |    18 +
 external/bsd/llvm/dist/clang/include/clang/AST/RecordLayout.h                                          |    15 +-
 external/bsd/llvm/dist/clang/include/clang/AST/Stmt.h                                                  |     6 +-
 external/bsd/llvm/dist/clang/include/clang/AST/StmtIterator.h                                          |     2 +-
 external/bsd/llvm/dist/clang/include/clang/AST/StmtOpenMP.h                                            |     4 +-
 external/bsd/llvm/dist/clang/include/clang/AST/Type.h                                                  |     2 +-
 external/bsd/llvm/dist/clang/include/clang/AST/VTableBuilder.h                                         |    39 +-
 external/bsd/llvm/dist/clang/include/clang/ASTMatchers/Dynamic/Diagnostics.h                           |     5 +-
 external/bsd/llvm/dist/clang/include/clang/ASTMatchers/Dynamic/VariantValue.h                          |     3 +-
 external/bsd/llvm/dist/clang/include/clang/Analysis/Analyses/Consumed.h                                |     2 +-
 external/bsd/llvm/dist/clang/include/clang/Analysis/Analyses/Dominators.h                              |    17 +-
 external/bsd/llvm/dist/clang/include/clang/Analysis/AnalysisContext.h                                  |     5 +-
 external/bsd/llvm/dist/clang/include/clang/Analysis/CFG.h                                              |    38 +-
 external/bsd/llvm/dist/clang/include/clang/Basic/Attr.td                                               |   131 +-
 external/bsd/llvm/dist/clang/include/clang/Basic/Builtins.def                                          |    15 +
 external/bsd/llvm/dist/clang/include/clang/Basic/Diagnostic.h                                          |     2 +-
 external/bsd/llvm/dist/clang/include/clang/Basic/DiagnosticIDs.h                                       |    12 +-
 external/bsd/llvm/dist/clang/include/clang/Basic/DiagnosticParseKinds.td                               |     8 +-
 external/bsd/llvm/dist/clang/include/clang/Basic/DiagnosticSemaKinds.td                                |    27 +-
 external/bsd/llvm/dist/clang/include/clang/Basic/LangOptions.def                                       |     8 +-
 external/bsd/llvm/dist/clang/include/clang/Basic/SourceLocation.h                                      |     4 +-
 external/bsd/llvm/dist/clang/include/clang/Basic/TargetInfo.h                                          |     2 +-
 external/bsd/llvm/dist/clang/include/clang/Basic/TargetOptions.h                                       |     4 -
 external/bsd/llvm/dist/clang/include/clang/Basic/TokenKinds.h                                          |    10 +-
 external/bsd/llvm/dist/clang/include/clang/Basic/Version.h                                             |     3 +
 external/bsd/llvm/dist/clang/include/clang/CodeGen/CGFunctionInfo.h                                    |     1 -
 external/bsd/llvm/dist/clang/include/clang/Driver/CC1Options.td                                        |     2 -
 external/bsd/llvm/dist/clang/include/clang/Driver/Options.td                                           |    45 +-
 external/bsd/llvm/dist/clang/include/clang/Driver/SanitizerArgs.h                                      |     3 +-
 external/bsd/llvm/dist/clang/include/clang/Frontend/CodeGenOptions.def                                 |     3 +
 external/bsd/llvm/dist/clang/include/clang/Frontend/CodeGenOptions.h                                   |    23 +-
 external/bsd/llvm/dist/clang/include/clang/Lex/Token.h                                                 |    13 +-
 external/bsd/llvm/dist/clang/include/clang/Parse/CMakeLists.txt                                        |     5 +
 external/bsd/llvm/dist/clang/include/clang/Parse/Makefile                                              |     8 +-
 external/bsd/llvm/dist/clang/include/clang/Parse/Parser.h                                              |    55 +-
 external/bsd/llvm/dist/clang/include/clang/Sema/AttributeList.h                                        |    19 +-
 external/bsd/llvm/dist/clang/include/clang/Sema/DeclSpec.h                                             |    37 +-
 external/bsd/llvm/dist/clang/include/clang/Sema/Overload.h                                             |     6 +-
 external/bsd/llvm/dist/clang/include/clang/Sema/Sema.h                                                 |    32 +-
 external/bsd/llvm/dist/clang/include/clang/Serialization/ASTReader.h                                   |     2 +-
 external/bsd/llvm/dist/clang/include/clang/Serialization/Module.h                                      |    12 +-
 external/bsd/llvm/dist/clang/include/clang/StaticAnalyzer/Checkers/ObjCRetainCount.h                   |     7 +-
 external/bsd/llvm/dist/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h                   |     2 +-
 external/bsd/llvm/dist/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h            |     4 +-
 external/bsd/llvm/dist/clang/include/clang/StaticAnalyzer/Core/CheckerManager.h                        |     2 +-
 external/bsd/llvm/dist/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h               |     4 +-
 external/bsd/llvm/dist/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h              |     4 +-
 external/bsd/llvm/dist/clang/include/clang/Tooling/ReplacementsYaml.h                                  |     2 +-
 external/bsd/llvm/dist/clang/lib/ARCMigrate/FileRemapper.cpp                                           |     3 +-
 external/bsd/llvm/dist/clang/lib/ARCMigrate/ObjCMT.cpp                                                 |     4 +-
 external/bsd/llvm/dist/clang/lib/AST/APValue.cpp                                                       |    74 +-
 external/bsd/llvm/dist/clang/lib/AST/ASTContext.cpp                                                    |    17 +-
 external/bsd/llvm/dist/clang/lib/AST/ASTDumper.cpp                                                     |    28 +-
 external/bsd/llvm/dist/clang/lib/AST/Decl.cpp                                                          |    15 +-
 external/bsd/llvm/dist/clang/lib/AST/DeclOpenMP.cpp                                                    |     2 +-
 external/bsd/llvm/dist/clang/lib/AST/DeclPrinter.cpp                                                   |     2 +-
 external/bsd/llvm/dist/clang/lib/AST/Expr.cpp                                                          |     5 +-
 external/bsd/llvm/dist/clang/lib/AST/ExprConstant.cpp                                                  |    89 +-
 external/bsd/llvm/dist/clang/lib/AST/Mangle.cpp                                                        |     2 +-
 external/bsd/llvm/dist/clang/lib/AST/MicrosoftCXXABI.cpp                                               |     2 +-
 external/bsd/llvm/dist/clang/lib/AST/MicrosoftMangle.cpp                                               |     2 +-
 external/bsd/llvm/dist/clang/lib/AST/RecordLayout.cpp                                                  |     4 +-
 external/bsd/llvm/dist/clang/lib/AST/RecordLayoutBuilder.cpp                                           |   753 +++---
 external/bsd/llvm/dist/clang/lib/AST/TypePrinter.cpp                                                   |     9 +-
 external/bsd/llvm/dist/clang/lib/AST/VTableBuilder.cpp                                                 |   295 +-
 external/bsd/llvm/dist/clang/lib/ASTMatchers/Dynamic/Marshallers.h                                     |     3 +-
 external/bsd/llvm/dist/clang/lib/ASTMatchers/Dynamic/Parser.cpp                                        |     5 +-
 external/bsd/llvm/dist/clang/lib/ASTMatchers/Dynamic/Registry.cpp                                      |     4 +-
 external/bsd/llvm/dist/clang/lib/ASTMatchers/Dynamic/VariantValue.cpp                                  |     1 -
 external/bsd/llvm/dist/clang/lib/Analysis/AnalysisDeclContext.cpp                                      |    25 +-
 external/bsd/llvm/dist/clang/lib/Analysis/BodyFarm.cpp                                                 |    82 +
 external/bsd/llvm/dist/clang/lib/Analysis/BodyFarm.h                                                   |     7 +-
 external/bsd/llvm/dist/clang/lib/Analysis/CFG.cpp                                                      |    30 +
 external/bsd/llvm/dist/clang/lib/Analysis/Consumed.cpp                                                 |   447 ++--
 external/bsd/llvm/dist/clang/lib/Basic/CMakeLists.txt                                                  |    21 +-
 external/bsd/llvm/dist/clang/lib/Basic/Diagnostic.cpp                                                  |    18 +-
 external/bsd/llvm/dist/clang/lib/Basic/DiagnosticIDs.cpp                                               |     2 +-
 external/bsd/llvm/dist/clang/lib/Basic/IdentifierTable.cpp                                             |     6 +-
 external/bsd/llvm/dist/clang/lib/Basic/SourceLocation.cpp                                              |     7 +-
 external/bsd/llvm/dist/clang/lib/Basic/TargetInfo.cpp                                                  |     6 +-
 external/bsd/llvm/dist/clang/lib/Basic/Targets.cpp                                                     |    12 +-
 external/bsd/llvm/dist/clang/lib/Basic/TokenKinds.cpp                                                  |    22 +-
 external/bsd/llvm/dist/clang/lib/Basic/Version.cpp                                                     |    10 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/ABIInfo.h                                                     |     2 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/BackendUtil.cpp                                               |     8 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGCUDARuntime.cpp                                             |     3 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGCXX.cpp                                                     |    12 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGCall.cpp                                                    |     1 +
 external/bsd/llvm/dist/clang/lib/CodeGen/CGClass.cpp                                                   |     6 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGCleanup.cpp                                                 |    23 -
 external/bsd/llvm/dist/clang/lib/CodeGen/CGCleanup.h                                                   |     9 +
 external/bsd/llvm/dist/clang/lib/CodeGen/CGDebugInfo.cpp                                               |    12 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGException.cpp                                               |     7 +
 external/bsd/llvm/dist/clang/lib/CodeGen/CGExpr.cpp                                                    |    14 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGExprAgg.cpp                                                 |     8 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGExprCXX.cpp                                                 |     2 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGExprComplex.cpp                                             |     8 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGExprScalar.cpp                                              |    37 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGObjC.cpp                                                    |    14 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGObjCGNU.cpp                                                 |     5 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGObjCMac.cpp                                                 |     6 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGOpenCLRuntime.cpp                                           |    19 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGRecordLayoutBuilder.cpp                                     |    83 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CGStmt.cpp                                                    |   237 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CMakeLists.txt                                                |    11 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CodeGenABITypes.cpp                                           |     3 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CodeGenAction.cpp                                             |     8 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CodeGenFunction.cpp                                           |   103 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CodeGenFunction.h                                             |    35 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CodeGenModule.cpp                                             |    38 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CodeGenModule.h                                               |     8 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/CodeGenPGO.cpp                                                |   457 ++++
 external/bsd/llvm/dist/clang/lib/CodeGen/CodeGenPGO.h                                                  |   220 ++
 external/bsd/llvm/dist/clang/lib/CodeGen/EHScopeStack.h                                                |     2 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/MicrosoftCXXABI.cpp                                           |    77 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/ModuleBuilder.cpp                                             |     2 +-
 external/bsd/llvm/dist/clang/lib/CodeGen/TargetInfo.cpp                                                |     5 +
 external/bsd/llvm/dist/clang/lib/CodeGen/TargetInfo.h                                                  |     2 +-
 external/bsd/llvm/dist/clang/lib/Driver/Driver.cpp                                                     |    27 +-
 external/bsd/llvm/dist/clang/lib/Driver/SanitizerArgs.cpp                                              |     1 -
 external/bsd/llvm/dist/clang/lib/Driver/ToolChains.cpp                                                 |    61 +-
 external/bsd/llvm/dist/clang/lib/Driver/ToolChains.h                                                   |     7 +-
 external/bsd/llvm/dist/clang/lib/Driver/Tools.cpp                                                      |    83 +-
 external/bsd/llvm/dist/clang/lib/Format/BreakableToken.cpp                                             |    11 +-
 external/bsd/llvm/dist/clang/lib/Format/ContinuationIndenter.cpp                                       |    33 +-
 external/bsd/llvm/dist/clang/lib/Format/Format.cpp                                                     |     2 +-
 external/bsd/llvm/dist/clang/lib/Format/FormatToken.cpp                                                |    33 +-
 external/bsd/llvm/dist/clang/lib/Format/FormatToken.h                                                  |    28 +-
 external/bsd/llvm/dist/clang/lib/Format/TokenAnnotator.cpp                                             |    28 +-
 external/bsd/llvm/dist/clang/lib/Format/UnwrappedLineParser.cpp                                        |     4 +
 external/bsd/llvm/dist/clang/lib/Format/UnwrappedLineParser.h                                          |     2 +-
 external/bsd/llvm/dist/clang/lib/Frontend/ASTUnit.cpp                                                  |     3 +-
 external/bsd/llvm/dist/clang/lib/Frontend/CompilerInstance.cpp                                         |    12 +-
 external/bsd/llvm/dist/clang/lib/Frontend/CompilerInvocation.cpp                                       |    35 +-
 external/bsd/llvm/dist/clang/lib/Frontend/DependencyFile.cpp                                           |     3 +-
 external/bsd/llvm/dist/clang/lib/Frontend/FrontendAction.cpp                                           |     2 +-
 external/bsd/llvm/dist/clang/lib/Frontend/FrontendActions.cpp                                          |     1 -
 external/bsd/llvm/dist/clang/lib/Frontend/InitPreprocessor.cpp                                         |     5 +-
 external/bsd/llvm/dist/clang/lib/Index/CommentToXML.cpp                                                |     2 +-
 external/bsd/llvm/dist/clang/lib/Lex/HeaderSearch.cpp                                                  |     2 +-
 external/bsd/llvm/dist/clang/lib/Lex/Lexer.cpp                                                         |    10 +-
 external/bsd/llvm/dist/clang/lib/Lex/PPDirectives.cpp                                                  |     6 +-
 external/bsd/llvm/dist/clang/lib/Lex/PPMacroExpansion.cpp                                              |     8 +-
 external/bsd/llvm/dist/clang/lib/Lex/Preprocessor.cpp                                                  |     4 +-
 external/bsd/llvm/dist/clang/lib/Lex/TokenLexer.cpp                                                    |     6 +-
 external/bsd/llvm/dist/clang/lib/Parse/CMakeLists.txt                                                  |     1 +
 external/bsd/llvm/dist/clang/lib/Parse/ParseDecl.cpp                                                   |   382 +--
 external/bsd/llvm/dist/clang/lib/Parse/ParseDeclCXX.cpp                                                |   164 +-
 external/bsd/llvm/dist/clang/lib/Parse/ParseExpr.cpp                                                   |    14 +-
 external/bsd/llvm/dist/clang/lib/Parse/ParseExprCXX.cpp                                                |    55 +-
 external/bsd/llvm/dist/clang/lib/Parse/ParseOpenMP.cpp                                                 |     2 +-
 external/bsd/llvm/dist/clang/lib/Parse/ParseStmt.cpp                                                   |    18 +-
 external/bsd/llvm/dist/clang/lib/Parse/ParseTemplate.cpp                                               |     8 +-
 external/bsd/llvm/dist/clang/lib/Parse/ParseTentative.cpp                                              |    13 +-
 external/bsd/llvm/dist/clang/lib/Parse/Parser.cpp                                                      |    34 +-
 external/bsd/llvm/dist/clang/lib/Rewrite/Core/Rewriter.cpp                                             |     3 +-
 external/bsd/llvm/dist/clang/lib/Sema/AnalysisBasedWarnings.cpp                                        |    13 +
 external/bsd/llvm/dist/clang/lib/Sema/AttributeList.cpp                                                |    29 +-
 external/bsd/llvm/dist/clang/lib/Sema/CMakeLists.txt                                                   |     1 -
 external/bsd/llvm/dist/clang/lib/Sema/DeclSpec.cpp                                                     |    93 +-
 external/bsd/llvm/dist/clang/lib/Sema/JumpDiagnostics.cpp                                              |     2 +-
 external/bsd/llvm/dist/clang/lib/Sema/Sema.cpp                                                         |    13 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaAccess.cpp                                                   |     4 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaCXXScopeSpec.cpp                                             |     4 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaCast.cpp                                                     |    15 +
 external/bsd/llvm/dist/clang/lib/Sema/SemaChecking.cpp                                                 |    27 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaDecl.cpp                                                     |    81 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaDeclAttr.cpp                                                 |   302 ++-
 external/bsd/llvm/dist/clang/lib/Sema/SemaDeclCXX.cpp                                                  |    34 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaDeclObjC.cpp                                                 |    47 -
 external/bsd/llvm/dist/clang/lib/Sema/SemaExpr.cpp                                                     |    72 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaExprCXX.cpp                                                  |     8 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaLambda.cpp                                                   |     2 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaLookup.cpp                                                   |     4 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaObjCProperty.cpp                                             |    22 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaOpenMP.cpp                                                   |     2 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaOverload.cpp                                                 |   198 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaStmtAttr.cpp                                                 |     1 -
 external/bsd/llvm/dist/clang/lib/Sema/SemaTemplate.cpp                                                 |    39 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaTemplateDeduction.cpp                                        |    28 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp                                  |    43 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaTemplateVariadic.cpp                                         |     2 +-
 external/bsd/llvm/dist/clang/lib/Sema/SemaType.cpp                                                     |   138 +-
 external/bsd/llvm/dist/clang/lib/Serialization/ASTReader.cpp                                           |     7 +-
 external/bsd/llvm/dist/clang/lib/Serialization/ASTWriter.cpp                                           |     1 -
 external/bsd/llvm/dist/clang/lib/Serialization/GlobalModuleIndex.cpp                                   |     5 +-
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt                                |     1 -
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Checkers/Checkers.td                                   |     4 -
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp                         |     9 +-
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Checkers/IdenticalExprChecker.cpp                      |     2 +-
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp                             |    51 +-
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp                        |    29 +-
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Core/BugReporter.cpp                                   |     5 +-
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Core/CallEvent.cpp                                     |    25 +-
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp                                    |    15 +
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp                                |     7 +-
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Core/RegionStore.cpp                                   |    10 +-
 external/bsd/llvm/dist/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp                          |     2 +-
 external/bsd/llvm/dist/clang/lib/Tooling/CompilationDatabase.cpp                                       |    19 +-
 external/bsd/llvm/dist/clang/lib/Tooling/Refactoring.cpp                                               |     2 +-
 external/bsd/llvm/dist/clang/test/ARCMT/cxx-checking.mm                                                |     2 +-
 external/bsd/llvm/dist/clang/test/Analysis/Inputs/system-header-simulator-objc.h                       |     7 +-
 external/bsd/llvm/dist/clang/test/Analysis/NewDelete-checker-test.cpp                                  |     6 +-
 external/bsd/llvm/dist/clang/test/Analysis/NoReturn.m                                                  |     2 +-
 external/bsd/llvm/dist/clang/test/Analysis/cfg.cpp                                                     |   122 +-
 external/bsd/llvm/dist/clang/test/Analysis/checker-plugins.c                                           |    10 +
 external/bsd/llvm/dist/clang/test/Analysis/dead-stores.c                                               |     8 +-
 external/bsd/llvm/dist/clang/test/Analysis/dead-stores.m                                               |     8 +
 external/bsd/llvm/dist/clang/test/Analysis/inlining/dyn-dispatch-bifurcate.cpp                         |     2 +-
 external/bsd/llvm/dist/clang/test/Analysis/malloc.m                                                    |     5 +
 external/bsd/llvm/dist/clang/test/Analysis/misc-ps-region-store.m                                      |     8 +-
 external/bsd/llvm/dist/clang/test/Analysis/misc-ps.m                                                   |    12 +-
 external/bsd/llvm/dist/clang/test/Analysis/null-deref-ps.c                                             |     6 +-
 external/bsd/llvm/dist/clang/test/Analysis/properties.m                                                |    81 +-
 external/bsd/llvm/dist/clang/test/Analysis/properties.mm                                               |    80 +
 external/bsd/llvm/dist/clang/test/Analysis/uninit-vals-ps-region.m                                     |     4 +-
 external/bsd/llvm/dist/clang/test/CMakeLists.txt                                                       |     2 +
 external/bsd/llvm/dist/clang/test/CXX/dcl.dcl/dcl.enum/p2.cpp                                          |     6 +
 external/bsd/llvm/dist/clang/test/CXX/dcl.dcl/dcl.link/p7.cpp                                          |     4 +-
 external/bsd/llvm/dist/clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p2.cpp                            |     2 +-
 external/bsd/llvm/dist/clang/test/CXX/drs/dr2xx.cpp                                                    |    35 +-
 external/bsd/llvm/dist/clang/test/CXX/special/class.copy/implicit-move-def.cpp                         |     6 +-
 external/bsd/llvm/dist/clang/test/CXX/special/class.dtor/p3-0x.cpp                                     |     2 +-
 external/bsd/llvm/dist/clang/test/CXX/special/class.dtor/p9.cpp                                        |    28 +-
 external/bsd/llvm/dist/clang/test/CXX/temp/temp.decls/temp.variadic/fixed-expansion.cpp                |    15 +-
 external/bsd/llvm/dist/clang/test/CodeGen/2010-01-13-MemBarrier.c                                      |     1 -
 external/bsd/llvm/dist/clang/test/CodeGen/Inputs/instr-profile.pgodata                                 |   127 +
 external/bsd/llvm/dist/clang/test/CodeGen/builtin-ms-noop.cpp                                          |     3 +-
 external/bsd/llvm/dist/clang/test/CodeGen/captured-statements.c                                        |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGen/complex-convert.c                                            |    11 +-
 external/bsd/llvm/dist/clang/test/CodeGen/cxx-default-arg.cpp                                          |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGen/dllimport-dllexport.c                                        |    10 +
 external/bsd/llvm/dist/clang/test/CodeGen/exceptions-seh.c                                             |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGen/fp-contract-pragma.cpp                                       |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGen/instr-profile.c                                              |   428 ++++
 external/bsd/llvm/dist/clang/test/CodeGen/libcall-declarations.c                                       |    21 +-
 external/bsd/llvm/dist/clang/test/CodeGen/lineno-dbginfo.c                                             |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGen/mangle-windows.c                                             |     3 +-
 external/bsd/llvm/dist/clang/test/CodeGen/overloadable.c                                               |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGen/sret.c                                                       |     2 +
 external/bsd/llvm/dist/clang/test/CodeGen/sret2.c                                                      |     2 +
 external/bsd/llvm/dist/clang/test/CodeGen/target-data.c                                                |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGen/tbaa-for-vptr.cpp                                            |    10 +-
 external/bsd/llvm/dist/clang/test/CodeGen/tbaa-ms-abi.cpp                                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGen/volatile-complex.c                                           |     8 +-
 external/bsd/llvm/dist/clang/test/CodeGenCUDA/filter-decl.cu                                           |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/2003-11-27-MultipleInheritanceThunk.cpp                   |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/2004-03-08-ReinterpretCastCopy.cpp                        |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/2004-03-09-UnmangledBuiltinMethods.cpp                    |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/2006-09-12-OpaqueStructCrash.cpp                          |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/2010-05-11-alwaysinlineinstantiation.cpp                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/Inputs/instr-profile.pgodata                              |    16 +
 external/bsd/llvm/dist/clang/test/CodeGenCXX/PR5093-static-member-function.cpp                         |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/PR5863-unreachable-block.cpp                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/address-of-fntemplate.cpp                                 |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/attr-cleanup.cpp                                          |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/attr-used.cpp                                             |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/block-byref-cxx-objc.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/block.cpp                                                 |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/c-linkage.cpp                                             |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/captured-statements.cpp                                   |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/const-base-cast.cpp                                       |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/const-global-linkage.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/constructor-attr.cpp                                      |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/constructor-destructor-return-this.cpp                    |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/constructor-init-reference.cpp                            |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/copy-assign-synthesis-2.cpp                               |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/copy-constructor-synthesis-2.cpp                          |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/coverage.cpp                                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/cxx0x-defaulted-templates.cpp                             |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/cxx11-noreturn.cpp                                        |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/cxx11-unrestricted-union.cpp                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-char16.cpp                                     |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-class-limited.cpp                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-class-nolimit.cpp                              |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-dup-fwd-decl.cpp                               |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-enum.cpp                                       |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-global-ctor-dtor.cpp                           |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-method.cpp                                     |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-method2.cpp                                    |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-namespace.cpp                                  |     6 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-pubtypes.cpp                                   |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-same-line.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-scope.cpp                                      |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-template-limit.cpp                             |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-template-member.cpp                            |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-thunk.cpp                                      |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-use-after-free.cpp                             |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-uuid.cpp                                       |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/debug-info-vtable-optzn.cpp                               |    21 +
 external/bsd/llvm/dist/clang/test/CodeGenCXX/default-constructor-default-argument.cpp                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/default-constructor-template-member.cpp                   |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/default-destructor-nested.cpp                             |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/deferred-global-init.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/delayed-template-parsing.cpp                              |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/derived-to-virtual-base-class-calls-final.cpp             |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/destructor-exception-spec.cpp                             |     6 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/duplicate-mangled-name.cpp                                |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/dynamic_cast-no-rtti.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/elide-call-reference.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/extern-c.cpp                                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/function-template-explicit-specialization.cpp             |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/function-template-specialization.cpp                      |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/global-llvm-constant.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/implicit-instantiation-1.cpp                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/init-priority-attr.cpp                                    |    17 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/instr-profile.cpp                                         |    76 +
 external/bsd/llvm/dist/clang/test/CodeGenCXX/instrument-functions.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/internal-linkage.cpp                                      |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/linetable-cleanup.cpp                                     |     6 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/linkage.cpp                                               |     8 +
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-abi-examples.cpp                                   |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-address-space.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-alias-template.cpp                                 |     7 -
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-local-class-names.cpp                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-local-class-vtables.cpp                            |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-local-classes-nested.cpp                           |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-ms-abi-examples.cpp                                |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-ms-arg-qualifiers.cpp                              |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-ms-back-references-pr13207.cpp                     |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-ms-back-references.cpp                             |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-ms-cxx11.cpp                                       |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-ms-return-qualifiers.cpp                           |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-ms-template-callback.cpp                           |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-ms-templates.cpp                                   |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-ms-vector-types.cpp                                |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-ms.cpp                                             |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-nullptr-arg.cpp                                    |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-std-externc.cpp                                    |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-template.cpp                                       |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/mangle-windows.cpp                                        |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/member-alignment.cpp                                      |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-alignment-fail.cpp                          |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-arg-order.cpp                               |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-array-cookies.cpp                           |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-constexpr-vs-inheritance.cpp                |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-default-cc.cpp                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-exceptions.cpp                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-member-pointers.cpp                         |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-methods.cpp                                 |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-multiple-nonvirtual-inheritance.cpp         |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-non-virtual-base-ordering.cpp               |    10 +
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-sret-and-byval.cpp                          |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-static-initializers.cpp                     |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-structors-alias.cpp                         |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-structors.cpp                               |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-thunks.cpp                                  |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-vbtables.cpp                                |    43 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-virtual-inheritance-vtordisps.cpp           |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-virtual-inheritance.cpp                     |    31 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-virtual-member-pointers.cpp                 |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-vtables-multiple-nonvirtual-inheritance.cpp |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-vtables-return-thunks.cpp                   |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance-vtordisps.cpp   |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp             |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-new.cpp                                         |    10 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-uuidof.cpp                                      |     6 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/ms-integer-static-data-members.cpp                        |     8 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/ms_wide_predefined_expr.cpp                               |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/no-elide-constructors.cpp                                 |    35 +
 external/bsd/llvm/dist/clang/test/CodeGenCXX/noinline-template.cpp                                     |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/pr11797.cpp                                               |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/pr12104.cpp                                               |     6 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/pr9965.cpp                                                |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/pragma-weak.cpp                                           |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/predefined-expr.cpp                                       |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/reference-field.cpp                                       |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/reference-init.cpp                                        |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/return.cpp                                                |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/scoped-enums.cpp                                          |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/sparcv9-abi.cpp                                           |    26 +
 external/bsd/llvm/dist/clang/test/CodeGenCXX/specialized-static-data-mem-init.cpp                      |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/stmtexpr.cpp                                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/template-dependent-bind-temporary.cpp                     |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/template-inner-struct-visibility-hidden.cpp               |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/throw-expression-dtor.cpp                                 |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/thunk-use-after-free.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/trivial-constructor-init.cpp                              |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/vararg-non-pod.cpp                                        |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virt-dtor-gen.cpp                                         |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virt-dtor-key.cpp                                         |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virt-template-vtable.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virtual-base-cast.cpp                                     |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virtual-base-ctor.cpp                                     |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virtual-base-destructor-call.cpp                          |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virtual-destructor-synthesis.cpp                          |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virtual-function-calls.cpp                                |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virtual-implicit-copy-assignment.cpp                      |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virtual-implicit-move-assignment.cpp                      |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virtual-inherited-destructor.cpp                          |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/virtual-pseudo-destructor-call.cpp                        |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/visibility-hidden-extern-templates.cpp                    |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/volatile-1.cpp                                            |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/vtable-cast-crash.cpp                                     |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/weak-extern-typeinfo.cpp                                  |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenCXX/weak-external.cpp                                         |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenObjC/arc-linetable-autorelease.m                              |     9 +-
 external/bsd/llvm/dist/clang/test/CodeGenObjC/arc-linetable.m                                          |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenObjC/debug-info-self.m                                        |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenObjC/overloadable.m                                           |     8 +-
 external/bsd/llvm/dist/clang/test/CodeGenObjCXX/arc-mangle.mm                                          |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenObjCXX/microsoft-abi-arc-param-order.mm                       |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenOpenCL/address-spaces-mangling.cl                             |     4 +-
 external/bsd/llvm/dist/clang/test/CodeGenOpenCL/kernel-arg-info.cl                                     |     2 +-
 external/bsd/llvm/dist/clang/test/CodeGenOpenCL/local.cl                                               |     2 +-
 external/bsd/llvm/dist/clang/test/Driver/cl-fallback.c                                                 |     5 +
 external/bsd/llvm/dist/clang/test/Driver/cl.c                                                          |     1 -
 external/bsd/llvm/dist/clang/test/Driver/clang-translation.c                                           |     2 +-
 external/bsd/llvm/dist/clang/test/Driver/constructors.c                                                |     9 +
 external/bsd/llvm/dist/clang/test/Driver/darwin-ld.c                                                   |     9 +
 external/bsd/llvm/dist/clang/test/Driver/freebsd.c                                                     |     2 +-
 external/bsd/llvm/dist/clang/test/Driver/linux-as.c                                                    |    26 +
 external/bsd/llvm/dist/clang/test/Driver/linux-ld.c                                                    |    22 +-
 external/bsd/llvm/dist/clang/test/Driver/netbsd.c                                                      |    41 +-
 external/bsd/llvm/dist/clang/test/Driver/netbsd.cpp                                                    |    40 +
 external/bsd/llvm/dist/clang/test/Driver/qa_override.c                                                 |     4 +-
 external/bsd/llvm/dist/clang/test/Driver/unknown-gcc-arch.c                                            |     8 +
 external/bsd/llvm/dist/clang/test/Frontend/plugins.c                                                   |     5 +
 external/bsd/llvm/dist/clang/test/Index/Inputs/retain-comments-from-system-headers-module.map          |     4 +
 external/bsd/llvm/dist/clang/test/Index/recursive-cxx-member-calls.cpp                                 |     4 +-
 external/bsd/llvm/dist/clang/test/Index/retain-comments-from-system-headers.c                          |     5 +-
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-alias-avoidance-padding.cpp                            |   288 +-
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-aligned-tail-padding.cpp                               |   640 +++--
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-basic-layout.cpp                                       |    46 +-
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-bitfields-vbases.cpp                                   |   164 +-
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-empty-base-after-base-with-vbptr.cpp                   |   336 +-
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-empty-nonvirtual-bases.cpp                             |   180 +-
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-empty-virtual-base.cpp                                 |  1020 ++++----
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-lazy-empty-nonvirtual-base.cpp                         |  1066 +++++----
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-misalignedarray.cpp                                    |    38 +-
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-pack-and-align.cpp                                     |   377 ++-
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-primary-bases.cpp                                      |   453 ++--
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-size-alignment-fail.cpp                                |   160 +-
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-vfvb-alignment.cpp                                     |   580 ++--
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-vfvb-sharing.cpp                                       |   186 +-
 external/bsd/llvm/dist/clang/test/Layout/ms-x86-vtordisp.cpp                                           |   258 +-
 external/bsd/llvm/dist/clang/test/Makefile                                                             |     2 +
 external/bsd/llvm/dist/clang/test/Misc/ast-dump-color.cpp                                              |     2 +-
 external/bsd/llvm/dist/clang/test/Modules/module_file_info.m                                           |     1 -
 external/bsd/llvm/dist/clang/test/PCH/chain-selectors.m                                                |     6 +-
 external/bsd/llvm/dist/clang/test/PCH/cxx-reference.cpp                                                |     6 +-
 external/bsd/llvm/dist/clang/test/PCH/cxx-required-decls.cpp                                           |     6 +-
 external/bsd/llvm/dist/clang/test/PCH/cxx-templates.cpp                                                |    22 +-
 external/bsd/llvm/dist/clang/test/PCH/irgen-rdar13114142.mm                                            |     4 +-
 external/bsd/llvm/dist/clang/test/PCH/objc_literals.mm                                                 |     8 +-
 external/bsd/llvm/dist/clang/test/PCH/objcxx-ivar-class.mm                                             |     6 +-
 external/bsd/llvm/dist/clang/test/Parser/altivec-csk-bool.c                                            |     2 +-
 external/bsd/llvm/dist/clang/test/Parser/cxx-decl.cpp                                                  |    19 +-
 external/bsd/llvm/dist/clang/test/Parser/cxx0x-decl.cpp                                                |    11 +
 external/bsd/llvm/dist/clang/test/Parser/declarators.c                                                 |     1 +
 external/bsd/llvm/dist/clang/test/Preprocessor/has_attribute.c                                         |    12 +-
 external/bsd/llvm/dist/clang/test/Preprocessor/header_lookup1.c                                        |     2 +-
 external/bsd/llvm/dist/clang/test/Sema/aarch64-neon-vector-types.c                                     |    15 +
 external/bsd/llvm/dist/clang/test/Sema/attr-aligned.c                                                  |     2 +-
 external/bsd/llvm/dist/clang/test/Sema/attr-malloc.c                                                   |     4 +-
 external/bsd/llvm/dist/clang/test/Sema/empty1.c                                                        |     4 +-
 external/bsd/llvm/dist/clang/test/Sema/enable_if.c                                                     |    97 +
 external/bsd/llvm/dist/clang/test/Sema/ext_vector_casts.c                                              |     5 +
 external/bsd/llvm/dist/clang/test/Sema/i-c-e.c                                                         |     2 +-
 external/bsd/llvm/dist/clang/test/Sema/ms_bitfield_layout.c                                            |     4 +-
 external/bsd/llvm/dist/clang/test/Sema/ms_class_layout.cpp                                             |     4 +-
 external/bsd/llvm/dist/clang/test/Sema/shift.c                                                         |     2 +-
 external/bsd/llvm/dist/clang/test/Sema/types.c                                                         |     2 +-
 external/bsd/llvm/dist/clang/test/Sema/vector-cast.c                                                   |     8 +
 external/bsd/llvm/dist/clang/test/SemaCXX/MicrosoftCompatibility.cpp                                   |     6 +
 external/bsd/llvm/dist/clang/test/SemaCXX/MicrosoftExtensions.cpp                                      |     4 -
 external/bsd/llvm/dist/clang/test/SemaCXX/calling-conv-compat.cpp                                      |     2 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/conversion-function.cpp                                      |    11 +
 external/bsd/llvm/dist/clang/test/SemaCXX/cxx1y-generic-lambdas.cpp                                    |    17 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/cxx98-compat.cpp                                             |     6 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/decl-microsoft-call-conv.cpp                                 |     2 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/deleted-operator.cpp                                         |     5 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/destructor.cpp                                               |    17 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/enable_if.cpp                                                |    72 +
 external/bsd/llvm/dist/clang/test/SemaCXX/enum-scoped.cpp                                              |     8 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/expressions.cpp                                              |     7 +
 external/bsd/llvm/dist/clang/test/SemaCXX/flexible-array-test.cpp                                      |    21 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/implicit-member-functions.cpp                                |     2 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/implicit-virtual-member-functions.cpp                        |     8 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/member-pointer-ms.cpp                                        |     4 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/microsoft-dtor-lookup-cxx11.cpp                              |     2 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/microsoft-dtor-lookup.cpp                                    |    13 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/pr9812.c                                                     |    21 +
 external/bsd/llvm/dist/clang/test/SemaCXX/pr9812.cpp                                                   |     9 +
 external/bsd/llvm/dist/clang/test/SemaCXX/primary-base.cpp                                             |     2 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/typeid-ref.cpp                                               |     2 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/typo-correction.cpp                                          |     4 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/undefined-internal.cpp                                       |     5 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/vector-casts.cpp                                             |    10 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/virtual-base-used.cpp                                        |    49 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/virtual-override-x86.cpp                                     |     2 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/virtual-override.cpp                                         |     4 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/warn-consumed-analysis.cpp                                   |    95 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/warn-consumed-parsing.cpp                                    |    10 +
 external/bsd/llvm/dist/clang/test/SemaCXX/warn-infinite-recursion.cpp                                  |    23 +
 external/bsd/llvm/dist/clang/test/SemaCXX/warn-reinterpret-base-class.cpp                              |    18 +-
 external/bsd/llvm/dist/clang/test/SemaCXX/warn-tautological-compare.cpp                                |    27 +
 external/bsd/llvm/dist/clang/test/SemaCXX/warn-weak-vtables.cpp                                        |     3 +-
 external/bsd/llvm/dist/clang/test/SemaObjC/arc-decls.m                                                 |    20 +-
 external/bsd/llvm/dist/clang/test/SemaObjC/selector-3.m                                                |    20 +-
 external/bsd/llvm/dist/clang/test/SemaObjC/unused.m                                                    |     9 +
 external/bsd/llvm/dist/clang/test/SemaObjCXX/microsoft-abi-byval.mm                                    |     7 +-
 external/bsd/llvm/dist/clang/test/SemaOpenCL/address-spaces.cl                                         |    26 +
 external/bsd/llvm/dist/clang/test/SemaOpenCL/invalid-kernel-attrs.cl                                   |     3 +-
 external/bsd/llvm/dist/clang/test/SemaOpenCL/invalid-kernel.cl                                         |    12 +
 external/bsd/llvm/dist/clang/test/SemaTemplate/attributes.cpp                                          |     2 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/inject-templated-friend-post.cpp                        |    13 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/inject-templated-friend.cpp                             |     4 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/instantiate-complete.cpp                                |    10 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/instantiate-exception-spec-cxx11.cpp                    |     5 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/instantiate-exception-spec.cpp                          |     6 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/instantiate-function-params.cpp                         |     6 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/instantiation-backtrace.cpp                             |     4 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/instantiation-depth-subst-2.cpp                         |     4 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/instantiation-depth-subst.cpp                           |     4 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/instantiation-order.cpp                                 |     4 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/operator-template.cpp                                   |     5 +-
 external/bsd/llvm/dist/clang/test/SemaTemplate/virtual-member-functions.cpp                            |    10 +-
 external/bsd/llvm/dist/clang/test/lit.cfg                                                              |    43 +
 external/bsd/llvm/dist/clang/test/lit.site.cfg.in                                                      |     5 +
 external/bsd/llvm/dist/clang/tools/c-index-test/CMakeLists.txt                                         |     2 +-
 external/bsd/llvm/dist/clang/tools/clang-check/ClangCheck.cpp                                          |     4 +-
 external/bsd/llvm/dist/clang/tools/clang-format/ClangFormat.cpp                                        |     9 +-
 external/bsd/llvm/dist/clang/tools/driver/driver.cpp                                                   |    14 +-
 external/bsd/llvm/dist/clang/tools/libclang/CXLoadedDiagnostic.cpp                                     |     6 +-
 external/bsd/llvm/dist/clang/tools/libclang/CXString.h                                                 |     2 +-
 external/bsd/llvm/dist/clang/tools/libclang/CXTranslationUnit.h                                        |     2 +-
 external/bsd/llvm/dist/clang/tools/scan-build/ccc-analyzer                                             |    14 +-
 external/bsd/llvm/dist/clang/unittests/AST/ASTContextParentMapTest.cpp                                 |     2 +-
 external/bsd/llvm/dist/clang/unittests/AST/ASTTypeTraitsTest.cpp                                       |     2 +-
 external/bsd/llvm/dist/clang/unittests/AST/DeclPrinterTest.cpp                                         |     6 +-
 external/bsd/llvm/dist/clang/unittests/AST/SourceLocationTest.cpp                                      |     2 +-
 external/bsd/llvm/dist/clang/unittests/ASTMatchers/ASTMatchersTest.cpp                                 |     2 +-
 external/bsd/llvm/dist/clang/unittests/ASTMatchers/Dynamic/ParserTest.cpp                              |     7 +-
 external/bsd/llvm/dist/clang/unittests/ASTMatchers/Dynamic/RegistryTest.cpp                            |     3 +-
 external/bsd/llvm/dist/clang/unittests/ASTMatchers/Dynamic/VariantValueTest.cpp                        |     2 +-
 external/bsd/llvm/dist/clang/unittests/Format/FormatTest.cpp                                           |    91 +-
 external/bsd/llvm/dist/clang/unittests/Format/FormatTestJS.cpp                                         |     1 -
 external/bsd/llvm/dist/clang/unittests/Lex/PPCallbacksTest.cpp                                         |     4 +-
 external/bsd/llvm/dist/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp                             |     1 -
 external/bsd/llvm/dist/clang/unittests/Tooling/ToolingTest.cpp                                         |     7 +-
 external/bsd/llvm/dist/clang/utils/TableGen/ClangAttrEmitter.cpp                                       |   307 ++-
 external/bsd/llvm/dist/clang/utils/TableGen/TableGen.cpp                                               |    17 +
 external/bsd/llvm/dist/clang/utils/TableGen/TableGenBackends.h                                         |     1 +
 external/bsd/llvm/dist/clang/www/cxx_status.html                                                       |     4 +-
 560 files changed, 10740 insertions(+), 5644 deletions(-)

diffs (truncated from 29365 to 300 lines):

diff -r 54e2b98ff714 -r debcac20762a external/bsd/llvm/dist/clang/CMakeLists.txt
--- a/external/bsd/llvm/dist/clang/CMakeLists.txt       Wed Jan 15 21:23:25 2014 +0000
+++ b/external/bsd/llvm/dist/clang/CMakeLists.txt       Wed Jan 15 21:25:28 2014 +0000
@@ -2,7 +2,7 @@
 # standalone project, using LLVM as an external library:
 if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
   project(Clang)
-  cmake_minimum_required(VERSION 2.8)
+  cmake_minimum_required(VERSION 2.8.8)
 
   # Rely on llvm-config.
   set(CONFIG_OUTPUT)
@@ -71,6 +71,9 @@
 
   option(LLVM_INSTALL_TOOLCHAIN_ONLY "Only include toolchain files in the 'install' target." OFF)
 
+  option(LLVM_FORCE_USE_OLD_HOST_TOOLCHAIN
+         "Set to ON to force using an old, unsupported host toolchain." OFF)
+
   include(AddLLVM)
   include(TableGen)
   include(HandleLLVMOptions)
@@ -319,6 +322,10 @@
     add_llvm_symbol_exports( ${name} ${LLVM_EXPORTED_SYMBOL_FILE} )
   endif()
 
+  if (MODULE)
+    set_property(TARGET ${name} PROPERTY SUFFIX ${LLVM_PLUGIN_EXT})
+  endif ()
+
   if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "libclang")
     install(TARGETS ${name}
       LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
@@ -410,6 +417,11 @@
 add_subdirectory(runtime)
 
 option(CLANG_BUILD_EXAMPLES "Build CLANG example programs by default." OFF)
+if (CLANG_BUILD_EXAMPLES)
+  set(ENABLE_CLANG_EXAMPLES "1")
+else()
+  set(ENABLE_CLANG_EXAMPLES "0")
+endif()
 add_subdirectory(examples)
 
 option(CLANG_INCLUDE_TESTS
@@ -442,8 +454,5 @@
   endif()
 endif()
 
-set(BUG_REPORT_URL "http://llvm.org/bugs/"; CACHE STRING
-  "Default URL where bug reports are to be submitted.")
-
 set(CLANG_ORDER_FILE "" CACHE FILEPATH
   "Order file to use when compiling clang in order to improve startup time.")
diff -r 54e2b98ff714 -r debcac20762a external/bsd/llvm/dist/clang/CODE_OWNERS.TXT
--- a/external/bsd/llvm/dist/clang/CODE_OWNERS.TXT      Wed Jan 15 21:23:25 2014 +0000
+++ b/external/bsd/llvm/dist/clang/CODE_OWNERS.TXT      Wed Jan 15 21:25:28 2014 +0000
@@ -8,6 +8,10 @@
 (W), PGP key ID and fingerprint (P), description (D), and snail-mail address
 (S).
 
+N: Aaron Ballman
+E: aaron%aaronballman.com@localhost
+D: Clang attributes
+
 N: Chandler Carruth
 E: chandlerc%gmail.com@localhost
 E: chandlerc%google.com@localhost
diff -r 54e2b98ff714 -r debcac20762a external/bsd/llvm/dist/clang/Makefile
--- a/external/bsd/llvm/dist/clang/Makefile     Wed Jan 15 21:23:25 2014 +0000
+++ b/external/bsd/llvm/dist/clang/Makefile     Wed Jan 15 21:25:28 2014 +0000
@@ -23,6 +23,12 @@
 endif
 endif
 
+ifeq ($(BUILD_EXAMPLES),1)
+  ENABLE_CLANG_EXAMPLES := 1
+else
+  ENABLE_CLANG_EXAMPLES := 0
+endif
+
 ifeq ($(MAKECMDGOALS),libs-only)
   DIRS := $(filter-out tools docs, $(DIRS))
   OPTIONAL_DIRS :=
diff -r 54e2b98ff714 -r debcac20762a external/bsd/llvm/dist/clang/docs/InternalsManual.rst
--- a/external/bsd/llvm/dist/clang/docs/InternalsManual.rst     Wed Jan 15 21:23:25 2014 +0000
+++ b/external/bsd/llvm/dist/clang/docs/InternalsManual.rst     Wed Jan 15 21:25:28 2014 +0000
@@ -1588,47 +1588,146 @@
 How to add an attribute
 -----------------------
 
-To add an attribute, you'll have to add it to the list of attributes, add it to
-the parsing phase, and look for it in the AST scan.
-`r124217 <http://llvm.org/viewvc/llvm-project?view=rev&revision=124217>`_
-has a good example of adding a warning attribute.
+Attribute Basics
+^^^^^^^^^^^^^^^^
 
-(Beware that this hasn't been reviewed/fixed by the people who designed the
-attributes system yet.)
+Attributes in clang come in two forms: parsed form, and semantic form. Both 
+forms are represented via a tablegen definition of the attribute, specified in
+Attr.td.
 
 
 ``include/clang/Basic/Attr.td``
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
-First, add your attribute to the `include/clang/Basic/Attr.td file
-<http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/Attr.td?view=markup>`_.
+First, add your attribute to the `include/clang/Basic/Attr.td 
+<http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/Attr.td?view=markup>`_ 
+file.
 
 Each attribute gets a ``def`` inheriting from ``Attr`` or one of its
 subclasses.  ``InheritableAttr`` means that the attribute also applies to
-subsequent declarations of the same name.
+subsequent declarations of the same name.  ``InheritableParamAttr`` is similar 
+to ``InheritableAttr``, except that the attribute is written on a parameter 
+instead of a declaration, type or statement.  Attributes inheriting from 
+``TypeAttr`` are pure type attributes which generally are not given a 
+representation in the AST.  Attributes inheriting from ``TargetSpecificAttr`` 
+are attributes specific to one or more target architectures.  An attribute that 
+inherits from ``IgnoredAttr`` is parsed, but will generate an ignored attribute 
+diagnostic when used.  The attribute type may be useful when an attribute is 
+supported by another vendor, but not supported by clang.
 
 ``Spellings`` lists the strings that can appear in ``__attribute__((here))`` or
-``[[here]]``.  All such strings will be synonymous.  If you want to allow the
-``[[]]`` C++11 syntax, you have to define a list of ``Namespaces``, which will
-let users write ``[[namespace::spelling]]``.  Using the empty string for a
-namespace will allow users to write just the spelling with no "``::``".
-Attributes which g++-4.8 accepts should also have a
-``CXX11<"gnu", "spelling">`` spelling.
+``[[here]]``.  All such strings will be synonymous.  Possible ``Spellings`` 
+are: ``GNU`` (for use with GNU-style __attribute__ spellings), ``Declspec`` 
+(for use with Microsoft Visual Studio-style __declspec spellings), ``CXX11` 
+(for use with C++11-style [[foo]] and [[foo::bar]] spellings), and ``Keyword`` 
+(for use with attributes that are implemented as keywords, like C++11's 
+``override`` or ``final``). If you want to allow the ``[[]]`` C++11 syntax, you 
+have to define a list of ``Namespaces``, which will let users write 
+``[[namespace::spelling]]``.  Using the empty string for a namespace will allow 
+users to write just the spelling with no "``::``".  Attributes which g++-4.8 
+or later accepts should also have a ``CXX11<"gnu", "spelling">`` spelling.
 
 ``Subjects`` restricts what kinds of AST node to which this attribute can
-appertain (roughly, attach).
+appertain (roughly, attach).  The subjects are specified via a ``SubjectList``, 
+which specify the list of subjects. Additionally, subject-related diagnostics 
+can be specified to be warnings or errors, with the default being a warning.  
+The diagnostics displayed to the user are automatically determined based on 
+the subjects in the list, but a custom diagnostic parameter can also be 
+specified in the ``SubjectList``.  The diagnostics generated for subject list 
+violations are either ``diag::warn_attribute_wrong_decl_type`` or
+``diag::err_attribute_wrong_decl_type``, and the parameter enumeration is 
+found in `include/clang/Sema/AttributeList.h 
+<http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Sema/AttributeList.h?view=markup>`_ 
+If you add new Decl nodes to the ``SubjectList``, you may need to update the 
+logic used to automatically determine the diagnostic parameter in `utils/TableGen/ClangAttrEmitter.cpp 
+<http://llvm.org/viewvc/llvm-project/cfe/trunk/utils/TableGen/ClangAttrEmitter.cpp?view=markup>`_.
+
+Diagnostic checking for attribute subject lists is automated except when 
+``HasCustomParsing`` is set to ``1``.
+
+By default, all subjects in the SubjectList must either be a Decl node defined 
+in ``DeclNodes.td``, or a statement node defined in ``StmtNodes.td``.  However, 
+more complex subjects can be created by creating a ``SubsetSubject`` object.  
+Each such object has a base subject which it appertains to (which must be a 
+Decl or Stmt node, and not a SubsetSubject node), and some custom code which is 
+called when determining whether an attribute appertains to the subject.  For 
+instance, a ``NonBitField`` SubsetSubject appertains to a ``FieldDecl``, and 
+tests whether the given FieldDecl is a bit field.  When a SubsetSubject is 
+specified in a SubjectList, a custom diagnostic parameter must also be provided.
 
 ``Args`` names the arguments the attribute takes, in order.  If ``Args`` is
 ``[StringArgument<"Arg1">, IntArgument<"Arg2">]`` then
-``__attribute__((myattribute("Hello", 3)))`` will be a valid use.
+``__attribute__((myattribute("Hello", 3)))`` will be a valid use.  Attribute 
+arguments specify both the parsed form and the semantic form of the attribute.  
+The previous example shows an attribute which requires two attributes while 
+parsing, and the Attr subclass' constructor for the attribute will require a 
+string and integer argument.
+
+Diagnostic checking for argument counts is automated except when 
+``HasCustomParsing`` is set to ``1``, or when the attribute uses an optional or 
+variadic argument.  Diagnostic checking for argument semantics is not automated.
+
+If the parsed form of the attribute is more complex, or differs from the 
+semantic form, the ``HasCustomParsing`` bit can be set to ``1`` for the class, 
+and the parsing code in `Parser::ParseGNUAttributeArgs 
+<http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Parse/ParseDecl.cpp?view=markup>`_ 
+can be updated for the special case.  Note that this only applies to arguments 
+with a GNU spelling -- attributes with a __declspec spelling currently ignore 
+this flag and are handled by ``Parser::ParseMicrosoftDeclSpec``.
+
+Custom accessors can be generated for an attribute based on the spelling list 
+for that attribute.  For instance, if an attribute has two different spellings: 
+'Foo' and 'Bar', accessors can be created: 
+``[Accessor<"isFoo", [GNU<"Foo">]>, Accessor<"isBar", [GNU<"Bar">]>]``
+These accessors will be generated on the semantic form of the attribute, 
+accepting no arguments and returning a Boolean.
+
+Attributes which do not require an AST node should set the ``ASTNode`` field to 
+``0`` to avoid polluting the AST.  Note that anything inheriting from 
+``TypeAttr`` or ``IgnoredAttr`` automatically do not generate an AST node.  All 
+other attributes generate an AST node by default.  The AST node is the semantic 
+representation of the attribute.
+
+Attributes which do not require custom semantic handling should set the 
+``SemaHandler`` field to ``0``.  Note that anything inheriting from 
+``IgnoredAttr`` automatically do not get a semantic handler.  All other 
+attributes are assumed to use a semantic handler by default.  Attributes 
+without a semantic handler are not given a parsed attribute Kind enumeration.
+
+The ``LangOpts`` field can be used to specify a list of language options 
+required by the attribute.  For instance, all of the CUDA-specific attributes 
+specify ``[CUDA]`` for the ``LangOpts`` field, and when the CUDA language 
+option is not enabled, an "attribute ignored" warning diagnostic is emitted.  
+Since language options are not table generated nodes, new language options must 
+be created manually and should specify the spelling used by ``LangOptions`` class.
+
+Target-specific attribute sometimes share a spelling with other attributes in 
+different targets.  For instance, the ARM and MSP430 targets both have an 
+attribute spelled ``GNU<"interrupt">``, but with different parsing and semantic 
+requirements.  To support this feature, an attribute inheriting from 
+``TargetSpecificAttribute`` make specify a ``ParseKind`` field.  This field 
+should be the same value between all arguments sharing a spelling, and 
+corresponds to the parsed attribute's Kind enumeration.  This allows attributes 
+to share a parsed attribute kind, but have distinct semantic attribute classes.  
+For instance, ``AttributeList::AT_Interrupt`` is the shared parsed attribute 
+kind, but ARMInterruptAttr and MSP430InterruptAttr are the semantic attributes 
+generated.
+
+If additional functionality is desired for the semantic form of the attribute, 
+the ``AdditionalMembers`` field specifies code to be copied verbatim into the 
+semantic attribute class object.
 
 Boilerplate
 ^^^^^^^^^^^
 
-Write a new ``HandleYourAttr()`` function in `lib/Sema/SemaDeclAttr.cpp
-<http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDeclAttr.cpp?view=markup>`_,
-and add a case to the switch in ``ProcessNonInheritableDeclAttr()`` or
-``ProcessInheritableDeclAttr()`` forwarding to it.
+All semantic processing of declaration attributes happens in `lib/Sema/SemaDeclAttr.cpp
+<http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDeclAttr.cpp?view=markup>`_, 
+and generally starts in the ``ProcessDeclAttribute`` function.  If your 
+attribute is a "simple" attribute -- meaning that it requires no custom 
+semantic processing aside from what is automatically  provided for you, you can 
+add a call to ``handleSimpleAttribute<YourAttr>(S, D, Attr);`` to the switch 
+statement. Otherwise, write a new ``handleYourAttr()`` function, and add that 
+to the switch statement.
 
 If your attribute causes extra warnings to fire, define a ``DiagGroup`` in
 `include/clang/Basic/DiagnosticGroups.td
@@ -1638,6 +1737,10 @@
 ``InGroup<DiagGroup<"your-attribute">>`` directly in `DiagnosticSemaKinds.td
 <http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td?view=markup>`_
 
+All semantic diagnostics generated for your attribute, including automatically-
+generated ones (such as subjects and argument counts), should have a 
+corresponding test case.
+
 The meat of your attribute
 ^^^^^^^^^^^^^^^^^^^^^^^^^^
 
diff -r 54e2b98ff714 -r debcac20762a external/bsd/llvm/dist/clang/docs/LanguageExtensions.rst
--- a/external/bsd/llvm/dist/clang/docs/LanguageExtensions.rst  Wed Jan 15 21:23:25 2014 +0000
+++ b/external/bsd/llvm/dist/clang/docs/LanguageExtensions.rst  Wed Jan 15 21:25:28 2014 +0000
@@ -113,8 +113,8 @@
 -------------------
 
 This function-like macro takes a single identifier argument that is the name of
-an attribute.  It evaluates to 1 if the attribute is supported or 0 if not.  It
-can be used like this:
+an attribute.  It evaluates to 1 if the attribute is supported by the current
+compilation target, or 0 if not.  It can be used like this:
 
 .. code-block:: c++
 
@@ -134,6 +134,7 @@
 (double underscore) to avoid interference from a macro with the same name.  For
 instance, ``__always_inline__`` can be used instead of ``always_inline``.
 
+
 Include File Checking Macros
 ============================
 
@@ -872,7 +873,6 @@
 Use ``__has_feature(cxx_variable_templates)`` or
 ``__has_extension(cxx_variable_templates)`` to determine if support for
 templated variable declarations is enabled.
-Clang does not yet support this feature.
 
 C11
 ---
@@ -1315,6 +1315,8 @@
 Query the presence of this new mangling with
 ``__has_feature(objc_protocol_qualifier_mangling)``.
 



Home | Main Index | Thread Index | Old Index