diff options
author | Brooks Davis <brooks@FreeBSD.org> | 2010-05-06 15:35:00 +0000 |
---|---|---|
committer | Brooks Davis <brooks@FreeBSD.org> | 2010-05-06 15:35:00 +0000 |
commit | 619336abdf11002aab0c85490943ce8d6e9df4c0 (patch) | |
tree | ac01c9c5194b2cdf14fc468a96d6b53e7aef5cfe | |
parent | b6ffef5760b078473c3f1698f2c05e959e721d70 (diff) |
Notes
-rw-r--r-- | devel/llvm-devel/Makefile | 4 | ||||
-rw-r--r-- | devel/llvm-devel/Makefile.svn_rev | 2 | ||||
-rw-r--r-- | devel/llvm-devel/distinfo | 6 | ||||
-rw-r--r-- | devel/llvm-devel/files/patch-tools_clang_include_clang_Analysis_Analyses_PrintfFormatString.h | 21 | ||||
-rw-r--r-- | devel/llvm-devel/files/patch-tools_clang_lib_Analysis_PrintfFormatString.cpp | 25 | ||||
-rw-r--r-- | devel/llvm-devel/files/patch-tools_clang_lib_Sema_SemaChecking.cpp | 45 | ||||
-rw-r--r-- | devel/llvm-devel/pkg-plist | 34 |
7 files changed, 117 insertions, 20 deletions
diff --git a/devel/llvm-devel/Makefile b/devel/llvm-devel/Makefile index eddb9e52cb16..29d74a7b83e1 100644 --- a/devel/llvm-devel/Makefile +++ b/devel/llvm-devel/Makefile @@ -6,7 +6,7 @@ # PORTNAME= llvm -DISTVERSION= 2.7.r${SVN_REV} +DISTVERSION= 2.8.r${SVN_REV} CATEGORIES= devel lang MASTER_SITES= ${MASTER_SITE_LOCAL} MASTER_SITE_SUBDIR= brooks @@ -131,6 +131,7 @@ regression-test: ${BUILD_COOKIE} fi PLIST_FILE_LIST= bin/bugpoint \ + bin/c-index-test \ bin/ccc-analyzer \ bin/clang* \ bin/llc \ @@ -139,7 +140,6 @@ PLIST_FILE_LIST= bin/bugpoint \ bin/opt \ bin/scan-build \ bin/tblgen \ - lib/libCIndex.* \ lib/libCompilerDriver.a \ lib/libEnhancedDisassembly.so \ lib/libEnhancedDisassembly.a \ diff --git a/devel/llvm-devel/Makefile.svn_rev b/devel/llvm-devel/Makefile.svn_rev index 8e6647efa53d..fe4e52b79073 100644 --- a/devel/llvm-devel/Makefile.svn_rev +++ b/devel/llvm-devel/Makefile.svn_rev @@ -1 +1 @@ -SVN_REV= 102038 +SVN_REV= 103179 diff --git a/devel/llvm-devel/distinfo b/devel/llvm-devel/distinfo index 71ce9a223c36..12bd3c0e5ebb 100644 --- a/devel/llvm-devel/distinfo +++ b/devel/llvm-devel/distinfo @@ -1,3 +1,3 @@ -MD5 (llvm-2.7.r102038.tar.bz2) = d1689bc83ec7d0a2ac836cb51351d257 -SHA256 (llvm-2.7.r102038.tar.bz2) = 3f42998334bca65371b47718d7a7334d79530073cf621de3c99cb037508ce9d0 -SIZE (llvm-2.7.r102038.tar.bz2) = 10898923 +MD5 (llvm-2.8.r103179.tar.bz2) = 4e5124a80d23b969cec0a531ad759626 +SHA256 (llvm-2.8.r103179.tar.bz2) = c45e4292756e64c5e80e6c3c88d8944a57e2c8dbbb944d026f38a1659259f7a9 +SIZE (llvm-2.8.r103179.tar.bz2) = 10960466 diff --git a/devel/llvm-devel/files/patch-tools_clang_include_clang_Analysis_Analyses_PrintfFormatString.h b/devel/llvm-devel/files/patch-tools_clang_include_clang_Analysis_Analyses_PrintfFormatString.h new file mode 100644 index 000000000000..65f72ac71095 --- /dev/null +++ b/devel/llvm-devel/files/patch-tools_clang_include_clang_Analysis_Analyses_PrintfFormatString.h @@ -0,0 +1,21 @@ + +$FreeBSD$ + +--- tools/clang/include/clang/Analysis/Analyses/PrintfFormatString.h.orig ++++ tools/clang/include/clang/Analysis/Analyses/PrintfFormatString.h +@@ -57,6 +57,7 @@ + InvalidSpecifier = 0, + // C99 conversion specifiers. + dArg, // 'd' ++ DArg, // 'D' FreeBSD specific specifiers + iArg, // 'i', + oArg, // 'o', + uArg, // 'u', +@@ -82,6 +83,7 @@ + ObjCObjArg, // '@' + // GlibC specific specifiers. + PrintErrno, // 'm' ++ bArg, // FreeBSD specific specifiers + // Specifier ranges. + IntArgBeg = dArg, + IntArgEnd = iArg, diff --git a/devel/llvm-devel/files/patch-tools_clang_lib_Analysis_PrintfFormatString.cpp b/devel/llvm-devel/files/patch-tools_clang_lib_Analysis_PrintfFormatString.cpp new file mode 100644 index 000000000000..50e951381e7d --- /dev/null +++ b/devel/llvm-devel/files/patch-tools_clang_lib_Analysis_PrintfFormatString.cpp @@ -0,0 +1,25 @@ + +$FreeBSD$ + +--- tools/clang/lib/Analysis/PrintfFormatString.cpp.orig ++++ tools/clang/lib/Analysis/PrintfFormatString.cpp +@@ -369,11 +369,19 @@ + case '@': k = ConversionSpecifier::ObjCObjArg; break; + // Glibc specific. + case 'm': k = ConversionSpecifier::PrintErrno; break; ++ // FreeBSD format extensions ++ case 'b': k = ConversionSpecifier::bArg; break; /* check for int and then char * */ ++ case 'r': k = ConversionSpecifier::xArg; break; ++ case 'y': k = ConversionSpecifier::iArg; break; ++ case 'D': k = ConversionSpecifier::DArg; break; /* check for u_char * pointer and a char * string */ + } + ConversionSpecifier CS(conversionPosition, k); + FS.setConversionSpecifier(CS); + if (CS.consumesDataArgument() && !FS.usesPositionalArg()) + FS.setArgIndex(argIndex++); ++ // FreeBSD extension ++ if (k == ConversionSpecifier::bArg || k == ConversionSpecifier::DArg) ++ argIndex++; + + if (k == ConversionSpecifier::InvalidSpecifier) { + // Assume the conversion takes one argument. diff --git a/devel/llvm-devel/files/patch-tools_clang_lib_Sema_SemaChecking.cpp b/devel/llvm-devel/files/patch-tools_clang_lib_Sema_SemaChecking.cpp new file mode 100644 index 000000000000..32917b92b8d0 --- /dev/null +++ b/devel/llvm-devel/files/patch-tools_clang_lib_Sema_SemaChecking.cpp @@ -0,0 +1,45 @@ + +$FreeBSD$ + +--- tools/clang/lib/Sema/SemaChecking.cpp.orig ++++ tools/clang/lib/Sema/SemaChecking.cpp +@@ -1275,6 +1275,39 @@ + CoveredArgs.set(argIndex); + } + ++ // FreeBSD extensions ++ if (CS.getKind() == ConversionSpecifier::bArg || CS.getKind() == ConversionSpecifier::DArg) { ++ // claim the second argument ++ CoveredArgs.set(argIndex + 1); ++ ++ // Now type check the data expression that matches the ++ // format specifier. ++ const Expr *Ex = getDataArg(argIndex); ++ QualType type = (CS.getKind() == ConversionSpecifier::bArg) ? S.Context.IntTy : S.Context.getPointerType(S.Context.UnsignedCharTy); ++ //const analyze_printf::ArgTypeResult &ATR = S.Context.IntTy; ++ const analyze_printf::ArgTypeResult &ATR = type; ++ if (ATR.isValid() && !ATR.matchesType(S.Context, Ex->getType())) ++ S.Diag(getLocationOfByte(CS.getStart()), ++ diag::warn_printf_conversion_argument_type_mismatch) ++ << ATR.getRepresentativeType(S.Context) << Ex->getType() ++ << getFormatSpecifierRange(startSpecifier, specifierLen) ++ << Ex->getSourceRange(); ++ ++ // Now type check the data expression that matches the ++ // format specifier. ++ Ex = getDataArg(argIndex + 1); ++ const analyze_printf::ArgTypeResult &ATR2 = ArgTypeResult::CStrTy; ++ if (ATR2.isValid() && !ATR2.matchesType(S.Context, Ex->getType())) ++ S.Diag(getLocationOfByte(CS.getStart()), ++ diag::warn_printf_conversion_argument_type_mismatch) ++ << ATR2.getRepresentativeType(S.Context) << Ex->getType() ++ << getFormatSpecifierRange(startSpecifier, specifierLen) ++ << Ex->getSourceRange(); ++ ++ return true; ++ } ++ // END OF FREEBSD EXTENSIONS ++ + // Check for using an Objective-C specific conversion specifier + // in a non-ObjC literal. + if (!IsObjCLiteral && CS.isObjCArg()) { diff --git a/devel/llvm-devel/pkg-plist b/devel/llvm-devel/pkg-plist index 7ec9704f638d..7df326d87e68 100644 --- a/devel/llvm-devel/pkg-plist +++ b/devel/llvm-devel/pkg-plist @@ -1,4 +1,5 @@ bin/bugpoint +bin/c-index-test bin/ccc-analyzer bin/clang bin/clang++ @@ -55,11 +56,12 @@ include/clang/AST/ParentMap.h include/clang/AST/PrettyPrinter.h include/clang/AST/RecordLayout.h include/clang/AST/Redeclarable.h +include/clang/AST/Release/StmtNodes.inc.tmp include/clang/AST/Stmt.h include/clang/AST/StmtCXX.h include/clang/AST/StmtGraphTraits.h include/clang/AST/StmtIterator.h -include/clang/AST/StmtNodes.def +include/clang/AST/StmtNodes.inc include/clang/AST/StmtObjC.h include/clang/AST/StmtVisitor.h include/clang/AST/TemplateBase.h @@ -73,8 +75,10 @@ include/clang/AST/TypeNodes.def include/clang/AST/TypeOrdering.h include/clang/AST/TypeVisitor.h include/clang/AST/UnresolvedSet.h +include/clang/AST/UsuallyTinyPtrVector.h include/clang/Analysis/Analyses/LiveVariables.h include/clang/Analysis/Analyses/PrintfFormatString.h +include/clang/Analysis/Analyses/PrintfFormatString.h.orig include/clang/Analysis/Analyses/ReachableCode.h include/clang/Analysis/Analyses/UninitializedValues.h include/clang/Analysis/AnalysisContext.h @@ -680,6 +684,7 @@ include/llvm/Transforms/Utils/FunctionUtils.h include/llvm/Transforms/Utils/Local.h include/llvm/Transforms/Utils/PromoteMemToReg.h include/llvm/Transforms/Utils/SSAUpdater.h +include/llvm/Transforms/Utils/SSAUpdaterImpl.h include/llvm/Transforms/Utils/SSI.h include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h include/llvm/Transforms/Utils/UnrollLoop.h @@ -689,17 +694,15 @@ include/llvm/Use.h include/llvm/User.h include/llvm/Value.h include/llvm/ValueSymbolTable.h -lib/clang/1.5/include/emmintrin.h -lib/clang/1.5/include/mm_malloc.h -lib/clang/1.5/include/mmintrin.h -lib/clang/1.5/include/nmmintrin.h -lib/clang/1.5/include/pmmintrin.h -lib/clang/1.5/include/smmintrin.h -lib/clang/1.5/include/tmmintrin.h -lib/clang/1.5/include/wmmintrin.h -lib/clang/1.5/include/xmmintrin.h -lib/libCIndex.a -lib/libCIndex.so +lib/clang/2.0/include/emmintrin.h +lib/clang/2.0/include/mm_malloc.h +lib/clang/2.0/include/mmintrin.h +lib/clang/2.0/include/nmmintrin.h +lib/clang/2.0/include/pmmintrin.h +lib/clang/2.0/include/smmintrin.h +lib/clang/2.0/include/tmmintrin.h +lib/clang/2.0/include/wmmintrin.h +lib/clang/2.0/include/xmmintrin.h lib/libCompilerDriver.a lib/libEnhancedDisassembly.a lib/libEnhancedDisassembly.so @@ -781,6 +784,8 @@ lib/libLLVMpic16passes.a lib/libLTO.a lib/libLTO.so lib/libUnitTestMain.a +lib/libclang.a +lib/libclang.so lib/libclangAST.a lib/libclangAnalysis.a lib/libclangBasic.a @@ -918,8 +923,8 @@ lib/libprofile_rt.so %%DOCSDIR%%/ps/llvmgxx.ps %%DOCSDIR%%/ps/opt.ps %%DOCSDIR%%/ps/tblgen.ps -@dirrm lib/clang/1.5/include -@dirrm lib/clang/1.5 +@dirrm lib/clang/2.0/include +@dirrm lib/clang/2.0 @dirrm lib/clang @dirrm include/llvm/Transforms/Utils @dirrm include/llvm/Transforms/IPO @@ -961,6 +966,7 @@ lib/libprofile_rt.so @dirrm include/clang/Analysis/FlowSensitive @dirrm include/clang/Analysis/Analyses @dirrm include/clang/Analysis +@dirrm include/clang/AST/Release @dirrm include/clang/AST @dirrm include/clang-c @dirrm include/clang |