Date: Fri, 8 Jan 2016 17:32:42 +0000 (UTC) From: Dimitry Andric <dim@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r293428 - in projects/clang380-import: contrib/llvm/include/llvm lib/clang/libllvmsupport Message-ID: <201601081732.u08HWgLa020841@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dim Date: Fri Jan 8 17:32:42 2016 New Revision: 293428 URL: https://svnweb.freebsd.org/changeset/base/293428 Log: As submitted upstream in a review, avoid using undefined behavior in llvm's LinkAllPasses.h. This caused some of the calls not to be emitted, if the optimization level was -O2 or higher. Conversely, if you used -O1 or lower, calls to e.g. RunningOnValgrind() would be emitted, leading to link failures, because we did not include Valgrind.cpp into libllvmsupport. Therefore, add it unconditionally. Noticed by: ian Modified: projects/clang380-import/contrib/llvm/include/llvm/LinkAllPasses.h projects/clang380-import/lib/clang/libllvmsupport/Makefile Modified: projects/clang380-import/contrib/llvm/include/llvm/LinkAllPasses.h ============================================================================== --- projects/clang380-import/contrib/llvm/include/llvm/LinkAllPasses.h Fri Jan 8 17:27:23 2016 (r293427) +++ projects/clang380-import/contrib/llvm/include/llvm/LinkAllPasses.h Fri Jan 8 17:32:42 2016 (r293428) @@ -185,9 +185,9 @@ namespace { (void)new llvm::IntervalPartition(); (void)new llvm::ScalarEvolutionWrapperPass(); - ((llvm::Function*)nullptr)->viewCFGOnly(); + ((llvm::Function*)1)->viewCFGOnly(); llvm::RGPassManager RGM; - ((llvm::RegionPass*)nullptr)->runOnRegion((llvm::Region*)nullptr, RGM); + ((llvm::RegionPass*)1)->runOnRegion((llvm::Region*)nullptr, RGM); llvm::AliasSetTracker X(*(llvm::AliasAnalysis*)nullptr); X.add(nullptr, 0, llvm::AAMDNodes()); // for -print-alias-sets (void) llvm::AreStatisticsEnabled(); Modified: projects/clang380-import/lib/clang/libllvmsupport/Makefile ============================================================================== --- projects/clang380-import/lib/clang/libllvmsupport/Makefile Fri Jan 8 17:27:23 2016 (r293427) +++ projects/clang380-import/lib/clang/libllvmsupport/Makefile Fri Jan 8 17:32:42 2016 (r293428) @@ -78,6 +78,7 @@ SRCS= APFloat.cpp \ Triple.cpp \ Twine.cpp \ Unicode.cpp \ + Valgrind.cpp \ YAMLParser.cpp \ YAMLTraits.cpp \ circular_raw_ostream.cpp \ @@ -101,8 +102,7 @@ SRCS+= ARMWinEH.cpp \ .endif .if ${MK_CLANG_EXTRAS} != "no" || ${MK_LLDB} != "no" -SRCS+= Memory.cpp \ - Valgrind.cpp +SRCS+= Memory.cpp .endif .include "../clang.lib.mk"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201601081732.u08HWgLa020841>