pkgsrc-WIP-changes archive

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

Import llvm-5.0.0nb20170705 as wip/llvm-all-in-one.



Module Name:	pkgsrc-wip
Committed By:	Kamil Rytarowski <n54%gmx.com@localhost>
Pushed By:	kamil
Date:		Wed Jul 5 22:32:26 2017 +0200
Changeset:	5d51083e70a074da4d4a36bfafb3e0df73e447c6

Added Files:
	llvm-all-in-one/DESCR
	llvm-all-in-one/Makefile
	llvm-all-in-one/PLIST
	llvm-all-in-one/buildlink3.mk
	llvm-all-in-one/distinfo
	llvm-all-in-one/options.mk
	llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_AddressSanitizer.cpp
	llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_InstrProfiling.cpp
	llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_MemorySanitizer.cpp

Log Message:
Import llvm-5.0.0nb20170705 as wip/llvm-all-in-one.

Low Level Virtual Machine (LLVM) is:

A compilation strategy designed to enable effective program optimization across
the entire lifetime of a program. LLVM supports effective optimization at
compile time, link-time (particularly interprocedural), run-time and offline
(i.e., after software is installed), while remaining transparent to developers
and maintaining compatibility with existing build scripts.

A virtual instruction set - LLVM is a low-level object code representation that
uses simple RISC-like instructions, but provides rich, language-independent,
type information and dataflow (SSA) information about operands. This combination
enables sophisticated transformations on object code, while remaining
light-weight enough to be attached to the executable. This combination is key to
allowing link-time, run-time, and offline transformations.

A compiler infrastructure - LLVM is also a collection of source code that
implements the language and compilation strategy. The primary components of the
LLVM infrastructure are a GCC-based C & C++ front-end, a link-time optimization
framework with a growing set of global and interprocedural analyses and
transformations, static back-ends for the X86, X86-64, PowerPC 32/64, ARM,
Thumb, IA-64, Alpha and SPARC architectures, a back-end which emits portable C
code, and a Just-In-Time compiler for X86, X86-64, PowerPC 32/64 processors.

This package contains: llvm, clang, compiler-rt, lldb, lld, libunwind, libcxx,
libcxxabi, openmp, polly, test-suite, clang-tools-extra, llgo.

The reason to create this package is that tests in the LLVM projects are not
fully standalone and they are required to run all in the same source tree.

Sponsored by <The NetBSD Foundation>

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=5d51083e70a074da4d4a36bfafb3e0df73e447c6

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 llvm-all-in-one/DESCR                              |   22 +
 llvm-all-in-one/Makefile                           |  161 +++
 llvm-all-in-one/PLIST                              | 1326 ++++++++++++++++++++
 llvm-all-in-one/buildlink3.mk                      |   22 +
 llvm-all-in-one/distinfo                           |   17 +
 llvm-all-in-one/options.mk                         |   55 +
 ...Transforms_Instrumentation_AddressSanitizer.cpp |   29 +
 ...b_Transforms_Instrumentation_InstrProfiling.cpp |   12 +
 ..._Transforms_Instrumentation_MemorySanitizer.cpp |   47 +
 9 files changed, 1691 insertions(+)

diffs:
diff --git a/llvm-all-in-one/DESCR b/llvm-all-in-one/DESCR
new file mode 100644
index 0000000000..9bf02c2c5d
--- /dev/null
+++ b/llvm-all-in-one/DESCR
@@ -0,0 +1,22 @@
+Low Level Virtual Machine (LLVM) is:
+
+A compilation strategy designed to enable effective program optimization across
+the entire lifetime of a program. LLVM supports effective optimization at
+compile time, link-time (particularly interprocedural), run-time and offline
+(i.e., after software is installed), while remaining transparent to developers
+and maintaining compatibility with existing build scripts.
+
+A virtual instruction set - LLVM is a low-level object code representation that
+uses simple RISC-like instructions, but provides rich, language-independent,
+type information and dataflow (SSA) information about operands. This combination
+enables sophisticated transformations on object code, while remaining
+light-weight enough to be attached to the executable. This combination is key to
+allowing link-time, run-time, and offline transformations.
+
+A compiler infrastructure - LLVM is also a collection of source code that
+implements the language and compilation strategy. The primary components of the
+LLVM infrastructure are a GCC-based C & C++ front-end, a link-time optimization
+framework with a growing set of global and interprocedural analyses and
+transformations, static back-ends for the X86, X86-64, PowerPC 32/64, ARM,
+Thumb, IA-64, Alpha and SPARC architectures, a back-end which emits portable C
+code, and a Just-In-Time compiler for X86, X86-64, PowerPC 32/64 processors.
diff --git a/llvm-all-in-one/Makefile b/llvm-all-in-one/Makefile
new file mode 100644
index 0000000000..5d71c42cfc
--- /dev/null
+++ b/llvm-all-in-one/Makefile
@@ -0,0 +1,161 @@
+# $NetBSD: Makefile.common,v 1.7 2015/07/20 05:49:53 adam Exp $
+
+LLVM_VERSION=	5.0.0
+
+CATEGORIES=	lang devel
+
+LLVM_SVN_REV=		307184
+
+SVN_REPOSITORIES=		llvm
+SVN_REPO.llvm=			http://llvm.org/svn/llvm-project/llvm/trunk
+SVN_REVISION.llvm=		${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		clang
+SVN_REPO.clang=			http://llvm.org/svn/llvm-project/cfe/trunk
+SVN_REVISION.clang=		${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		compiler-rt
+SVN_REPO.compiler-rt=		http://llvm.org/svn/llvm-project/compiler-rt/trunk
+SVN_REVISION.compiler-rt=	${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		lldb
+SVN_REPO.lldb=			http://llvm.org/svn/llvm-project/lldb/trunk
+SVN_REVISION.lldb=		${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		lld
+SVN_REPO.lld=			http://llvm.org/svn/llvm-project/lld/trunk
+SVN_REVISION.lld=		${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		libunwind
+SVN_REPO.libunwind=		http://llvm.org/svn/llvm-project/libunwind/trunk
+SVN_REVISION.libunwind=		${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		libcxx
+SVN_REPO.libcxx=		http://llvm.org/svn/llvm-project/libcxx/trunk
+SVN_REVISION.libcxx=		${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		libcxxabi
+SVN_REPO.libcxxabi=		http://llvm.org/svn/llvm-project/libcxxabi/trunk
+SVN_REVISION.libcxxabi=		${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		openmp
+SVN_REPO.openmp=		http://llvm.org/svn/llvm-project/openmp/trunk
+SVN_REVISION.openmp=		${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		polly
+SVN_REPO.polly=			http://llvm.org/svn/llvm-project/polly/trunk
+SVN_REVISION.polly=		${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		test-suite
+SVN_REPO.test-suite=		http://llvm.org/svn/llvm-project/test-suite/trunk
+SVN_REVISION.test-suite=	${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		clang-tools-extra
+SVN_REPO.clang-tools-extra=	http://llvm.org/svn/llvm-project/clang-tools-extra/trunk
+SVN_REVISION.clang-tools-extra=	${LLVM_SVN_REV}
+
+SVN_REPOSITORIES+=		llgo
+SVN_REPO.llgo=			http://llvm.org/svn/llvm-project/llgo/trunk
+SVN_REVISION.llgo=		${LLVM_SVN_REV}
+
+WRKSRC=			${WRKDIR}/llvm
+
+CHECK_PORTABILITY_SKIP=	utils/buildit/build_llvm
+
+# XXX perl is not added as a tool as it does not seem to be required
+REPLACE_PERL+=		utils/*.pl
+REPLACE_PERL+=		utils/codegen-diff
+REPLACE_PERL+=		utils/llvm-native-gxx
+
+REPLACE_PYTHON+=	*.py
+REPLACE_PYTHON+=	*/*.py
+REPLACE_PYTHON+=	*/*/*.py
+REPLACE_PYTHON+=	*/*/*/*.py
+REPLACE_PYTHON+=	*/*/*/*/*.py
+REPLACE_PYTHON+=	utils/Misc/zkill
+REPLACE_PYTHON+=	utils/bisect
+REPLACE_PYTHON+=	utils/clang-parse-diagnostics-file
+REPLACE_PYTHON+=	utils/git/find-rev
+REPLACE_PYTHON+=	utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest
+REPLACE_PYTHON+=	utils/llvm-build/llvm-build
+REPLACE_PYTHON+=	utils/llvm-compilers-check
+REPLACE_PYTHON+=	utils/llvm-lit/llvm-lit.in
+
+PKGNAME=	llvm-${LLVM_VERSION}
+
+MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=	http://llvm.org/
+COMMENT=	Low Level Virtual Machine compiler infrastructure
+LICENSE=	modified-bsd
+
+USE_TOOLS+=		perl
+USE_LANGUAGES=		c c++11
+USE_CMAKE=		yes
+GCC_REQD+=		4.8
+PYTHON_FOR_BUILD_ONLY=	yes
+
+CONFIGURE_DIRS=		${WRKDIR}/build
+CMAKE_ARG_PATH=		${WRKSRC}
+
+CMAKE_ARGS+=	-DCMAKE_BUILD_TYPE=Release
+CMAKE_ARGS+=	-DCMAKE_C_COMPILER=${CC:Q}
+CMAKE_ARGS+=	-DCMAKE_CXX_COMPILER=${CXX:Q}
+CMAKE_ARGS+=	-DCMAKE_CXX_LINK_FLAGS=${LDFLAGS:Q}
+CMAKE_ARGS+=	-DLLVM_BUILD_LLVM_DYLIB=ON
+CMAKE_ARGS+=	-DLLVM_INSTALL_UTILS=ON
+#CMAKE_ARGS+=	-DLLVM_LINK_LLVM_DYLIB=ON
+
+CMAKE_ARGS.Darwin+=	-DCMAKE_LIBTOOL=/usr/bin/libtool
+
+TEST_TARGET=		check
+TEST_ENV+=		LD_LIBRARY_PATH=${WRKDIR}/build/lib
+
+# It may be that the Solaris linker is more strict here and they can be removed on
+# all platforms.  Change this to a patch if verified.
+SUBST_CLASSES.SunOS+=	lto
+SUBST_STAGE.lto=	pre-configure
+SUBST_FILES.lto=	tools/lto/lto.exports
+SUBST_SED.lto=		-e '/^LLVM/d'
+
+.include "../../mk/bsd.prefs.mk"
+
+PLIST_VARS+=	notdylib
+.if ${_OPSYS_SHLIB_TYPE} == "dylib"
+SOEXT=		dylib
+.else
+SOEXT=		so
+PLIST.notdylib=	yes
+.endif
+PLIST_SUBST+=	SOEXT=${SOEXT}
+
+# needs std::atomic with 64-bit CAS
+.if ${MACHINE_ARCH} == "i386"
+CXXFLAGS+=	-march=i586
+.endif
+
+.include "options.mk"
+
+# replacing config.guess is required even for cmake.
+# It is used to detect correct LLVM_HOST_TRIPLE, e.g. for NetBSD/evbarm.
+post-extract:
+	${RUN} mkdir -p ${WRKDIR}/build
+.for f in config.guess config.sub
+	cp ../../mk/gnu-config/${f} ${WRKSRC}/cmake/${f}
+.endfor
+	${RUN} ln -sf ${WRKDIR}/compiler-rt ${WRKDIR}/llvm/projects/compiler-rt
+	${RUN} ln -sf ${WRKDIR}/libcxx ${WRKDIR}/llvm/projects/libcxx
+	${RUN} ln -sf ${WRKDIR}/libcxxabi ${WRKDIR}/llvm/projects/libcxxabi
+	${RUN} ln -sf ${WRKDIR}/libunwind ${WRKDIR}/llvm/projects/libunwind
+	${RUN} ln -sf ${WRKDIR}/test-suite ${WRKDIR}/llvm/projects/test-suite
+	${RUN} ln -sf ${WRKDIR}/openmp ${WRKDIR}/llvm/projects/openmp
+	${RUN} ln -sf ${WRKDIR}/libcxx ${WRKDIR}/llvm/projects/libcxx
+	${RUN} ln -sf ${WRKDIR}/clang ${WRKDIR}/llvm/tools/clang
+	${RUN} ln -sf ${WRKDIR}/llgo ${WRKDIR}/llvm/tools/llgo
+	${RUN} ln -sf ${WRKDIR}/lld ${WRKDIR}/llvm/tools/lld
+	${RUN} ln -sf ${WRKDIR}/lldb ${WRKDIR}/llvm/tools/lldb
+	${RUN} ln -sf ${WRKDIR}/clang-tools-extra ${WRKDIR}/llvm/tools/extra
+
+.include "../../wip/mk/svn-package.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../lang/python/tool.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/llvm-all-in-one/PLIST b/llvm-all-in-one/PLIST
new file mode 100644
index 0000000000..d862ff6c75
--- /dev/null
+++ b/llvm-all-in-one/PLIST
@@ -0,0 +1,1326 @@
+@comment $NetBSD$
+bin/FileCheck
+bin/bugpoint
+bin/count
+bin/llc
+bin/lli
+bin/lli-child-target
+bin/llvm-PerfectShuffle
+bin/llvm-ar
+bin/llvm-as
+bin/llvm-bcanalyzer
+bin/llvm-c-test
+bin/llvm-cat
+bin/llvm-config
+bin/llvm-cov
+bin/llvm-cvtres
+bin/llvm-cxxdump
+bin/llvm-cxxfilt
+bin/llvm-diff
+bin/llvm-dis
+bin/llvm-dsymutil
+bin/llvm-dwarfdump
+bin/llvm-dwp
+bin/llvm-extract
+bin/llvm-lib
+bin/llvm-link
+bin/llvm-lto
+bin/llvm-lto2
+bin/llvm-mc
+bin/llvm-mcmarkup
+bin/llvm-modextract
+bin/llvm-nm
+bin/llvm-objdump
+bin/llvm-opt-report
+bin/llvm-pdbutil
+bin/llvm-profdata
+bin/llvm-ranlib
+bin/llvm-readobj
+bin/llvm-rtdyld
+bin/llvm-size
+bin/llvm-split
+bin/llvm-stress
+bin/llvm-strings
+bin/llvm-symbolizer
+bin/llvm-tblgen
+bin/llvm-xray
+bin/not
+bin/obj2yaml
+bin/opt
+bin/sancov
+bin/sanstats
+bin/verify-uselistorder
+bin/yaml-bench
+bin/yaml2obj
+include/llvm-c/Analysis.h
+include/llvm-c/BitReader.h
+include/llvm-c/BitWriter.h
+include/llvm-c/Core.h
+include/llvm-c/Disassembler.h
+include/llvm-c/ErrorHandling.h
+include/llvm-c/ExecutionEngine.h
+include/llvm-c/IRReader.h
+include/llvm-c/Initialization.h
+include/llvm-c/LinkTimeOptimizer.h
+include/llvm-c/Linker.h
+include/llvm-c/Object.h
+include/llvm-c/OrcBindings.h
+include/llvm-c/Support.h
+include/llvm-c/Target.h
+include/llvm-c/TargetMachine.h
+include/llvm-c/Transforms/IPO.h
+include/llvm-c/Transforms/PassManagerBuilder.h
+include/llvm-c/Transforms/Scalar.h
+include/llvm-c/Transforms/Vectorize.h
+include/llvm-c/Types.h
+include/llvm-c/lto.h
+include/llvm/ADT/APFloat.h
+include/llvm/ADT/APInt.h
+include/llvm/ADT/APSInt.h
+include/llvm/ADT/AllocatorList.h
+include/llvm/ADT/ArrayRef.h
+include/llvm/ADT/BitVector.h
+include/llvm/ADT/BitmaskEnum.h
+include/llvm/ADT/BreadthFirstIterator.h
+include/llvm/ADT/CachedHashString.h
+include/llvm/ADT/DAGDeltaAlgorithm.h
+include/llvm/ADT/DeltaAlgorithm.h
+include/llvm/ADT/DenseMap.h
+include/llvm/ADT/DenseMapInfo.h
+include/llvm/ADT/DenseSet.h
+include/llvm/ADT/DepthFirstIterator.h
+include/llvm/ADT/EpochTracker.h
+include/llvm/ADT/EquivalenceClasses.h
+include/llvm/ADT/FoldingSet.h
+include/llvm/ADT/GraphTraits.h
+include/llvm/ADT/Hashing.h
+include/llvm/ADT/ImmutableList.h
+include/llvm/ADT/ImmutableMap.h
+include/llvm/ADT/ImmutableSet.h
+include/llvm/ADT/IndexedMap.h
+include/llvm/ADT/IntEqClasses.h
+include/llvm/ADT/IntervalMap.h
+include/llvm/ADT/IntrusiveRefCntPtr.h
+include/llvm/ADT/MapVector.h
+include/llvm/ADT/None.h
+include/llvm/ADT/Optional.h
+include/llvm/ADT/PackedVector.h
+include/llvm/ADT/PointerEmbeddedInt.h
+include/llvm/ADT/PointerIntPair.h
+include/llvm/ADT/PointerSumType.h
+include/llvm/ADT/PointerUnion.h
+include/llvm/ADT/PostOrderIterator.h
+include/llvm/ADT/PriorityQueue.h
+include/llvm/ADT/PriorityWorklist.h
+include/llvm/ADT/SCCIterator.h
+include/llvm/ADT/STLExtras.h
+include/llvm/ADT/ScopeExit.h
+include/llvm/ADT/ScopedHashTable.h
+include/llvm/ADT/Sequence.h
+include/llvm/ADT/SetOperations.h
+include/llvm/ADT/SetVector.h
+include/llvm/ADT/SmallBitVector.h
+include/llvm/ADT/SmallPtrSet.h
+include/llvm/ADT/SmallSet.h
+include/llvm/ADT/SmallString.h
+include/llvm/ADT/SmallVector.h
+include/llvm/ADT/SparseBitVector.h
+include/llvm/ADT/SparseMultiSet.h
+include/llvm/ADT/SparseSet.h
+include/llvm/ADT/Statistic.h
+include/llvm/ADT/StringExtras.h
+include/llvm/ADT/StringMap.h
+include/llvm/ADT/StringRef.h
+include/llvm/ADT/StringSet.h
+include/llvm/ADT/StringSwitch.h
+include/llvm/ADT/TinyPtrVector.h
+include/llvm/ADT/Triple.h
+include/llvm/ADT/Twine.h
+include/llvm/ADT/UniqueVector.h
+include/llvm/ADT/VariadicFunction.h
+include/llvm/ADT/edit_distance.h
+include/llvm/ADT/ilist.h
+include/llvm/ADT/ilist_base.h
+include/llvm/ADT/ilist_iterator.h
+include/llvm/ADT/ilist_node.h
+include/llvm/ADT/ilist_node_base.h
+include/llvm/ADT/ilist_node_options.h
+include/llvm/ADT/iterator.h
+include/llvm/ADT/iterator_range.h
+include/llvm/ADT/simple_ilist.h
+include/llvm/Analysis/AliasAnalysis.h
+include/llvm/Analysis/AliasAnalysisEvaluator.h
+include/llvm/Analysis/AliasSetTracker.h
+include/llvm/Analysis/AssumptionCache.h
+include/llvm/Analysis/BasicAliasAnalysis.h
+include/llvm/Analysis/BlockFrequencyInfo.h
+include/llvm/Analysis/BlockFrequencyInfoImpl.h
+include/llvm/Analysis/BranchProbabilityInfo.h
+include/llvm/Analysis/CFG.h
+include/llvm/Analysis/CFGPrinter.h
+include/llvm/Analysis/CFLAliasAnalysisUtils.h
+include/llvm/Analysis/CFLAndersAliasAnalysis.h
+include/llvm/Analysis/CFLSteensAliasAnalysis.h
+include/llvm/Analysis/CGSCCPassManager.h
+include/llvm/Analysis/CallGraph.h
+include/llvm/Analysis/CallGraphSCCPass.h
+include/llvm/Analysis/CallPrinter.h
+include/llvm/Analysis/CaptureTracking.h
+include/llvm/Analysis/CodeMetrics.h
+include/llvm/Analysis/ConstantFolding.h
+include/llvm/Analysis/DOTGraphTraitsPass.h
+include/llvm/Analysis/DemandedBits.h
+include/llvm/Analysis/DependenceAnalysis.h
+include/llvm/Analysis/DivergenceAnalysis.h
+include/llvm/Analysis/DomPrinter.h
+include/llvm/Analysis/DominanceFrontier.h
+include/llvm/Analysis/DominanceFrontierImpl.h
+include/llvm/Analysis/EHPersonalities.h
+include/llvm/Analysis/GlobalsModRef.h
+include/llvm/Analysis/IVUsers.h
+include/llvm/Analysis/IndirectCallPromotionAnalysis.h
+include/llvm/Analysis/IndirectCallSiteVisitor.h
+include/llvm/Analysis/InlineCost.h
+include/llvm/Analysis/InstructionSimplify.h
+include/llvm/Analysis/Interval.h
+include/llvm/Analysis/IntervalIterator.h
+include/llvm/Analysis/IntervalPartition.h
+include/llvm/Analysis/IteratedDominanceFrontier.h
+include/llvm/Analysis/LazyBlockFrequencyInfo.h
+include/llvm/Analysis/LazyBranchProbabilityInfo.h
+include/llvm/Analysis/LazyCallGraph.h
+include/llvm/Analysis/LazyValueInfo.h
+include/llvm/Analysis/Lint.h
+include/llvm/Analysis/Loads.h
+include/llvm/Analysis/LoopAccessAnalysis.h
+include/llvm/Analysis/LoopAnalysisManager.h
+include/llvm/Analysis/LoopInfo.h
+include/llvm/Analysis/LoopInfoImpl.h
+include/llvm/Analysis/LoopIterator.h
+include/llvm/Analysis/LoopPass.h
+include/llvm/Analysis/LoopUnrollAnalyzer.h
+include/llvm/Analysis/MemoryBuiltins.h
+include/llvm/Analysis/MemoryDependenceAnalysis.h
+include/llvm/Analysis/MemoryLocation.h
+include/llvm/Analysis/MemorySSA.h
+include/llvm/Analysis/MemorySSAUpdater.h
+include/llvm/Analysis/ModuleSummaryAnalysis.h
+include/llvm/Analysis/ObjCARCAliasAnalysis.h
+include/llvm/Analysis/ObjCARCAnalysisUtils.h
+include/llvm/Analysis/ObjCARCInstKind.h
+include/llvm/Analysis/ObjectUtils.h
+include/llvm/Analysis/OptimizationDiagnosticInfo.h
+include/llvm/Analysis/OrderedBasicBlock.h
+include/llvm/Analysis/PHITransAddr.h
+include/llvm/Analysis/Passes.h
+include/llvm/Analysis/PostDominators.h
+include/llvm/Analysis/ProfileSummaryInfo.h
+include/llvm/Analysis/PtrUseVisitor.h
+include/llvm/Analysis/RegionInfo.h
+include/llvm/Analysis/RegionInfoImpl.h
+include/llvm/Analysis/RegionIterator.h
+include/llvm/Analysis/RegionPass.h
+include/llvm/Analysis/RegionPrinter.h
+include/llvm/Analysis/ScalarEvolution.h
+include/llvm/Analysis/ScalarEvolutionAliasAnalysis.h
+include/llvm/Analysis/ScalarEvolutionExpander.h
+include/llvm/Analysis/ScalarEvolutionExpressions.h
+include/llvm/Analysis/ScalarEvolutionNormalization.h
+include/llvm/Analysis/ScopedNoAliasAA.h
+include/llvm/Analysis/SparsePropagation.h
+include/llvm/Analysis/TargetFolder.h
+include/llvm/Analysis/TargetLibraryInfo.def
+include/llvm/Analysis/TargetLibraryInfo.h
+include/llvm/Analysis/TargetTransformInfo.h
+include/llvm/Analysis/TargetTransformInfoImpl.h
+include/llvm/Analysis/Trace.h
+include/llvm/Analysis/TypeBasedAliasAnalysis.h
+include/llvm/Analysis/TypeMetadataUtils.h
+include/llvm/Analysis/ValueTracking.h
+include/llvm/Analysis/VectorUtils.h
+include/llvm/AsmParser/Parser.h
+include/llvm/AsmParser/SlotMapping.h
+include/llvm/BinaryFormat/COFF.h
+include/llvm/BinaryFormat/Dwarf.def
+include/llvm/BinaryFormat/Dwarf.h
+include/llvm/BinaryFormat/ELF.h
+include/llvm/BinaryFormat/ELFRelocs/AArch64.def
+include/llvm/BinaryFormat/ELFRelocs/AMDGPU.def
+include/llvm/BinaryFormat/ELFRelocs/ARM.def
+include/llvm/BinaryFormat/ELFRelocs/AVR.def
+include/llvm/BinaryFormat/ELFRelocs/BPF.def
+include/llvm/BinaryFormat/ELFRelocs/Hexagon.def
+include/llvm/BinaryFormat/ELFRelocs/Lanai.def
+include/llvm/BinaryFormat/ELFRelocs/Mips.def
+include/llvm/BinaryFormat/ELFRelocs/PowerPC.def
+include/llvm/BinaryFormat/ELFRelocs/PowerPC64.def
+include/llvm/BinaryFormat/ELFRelocs/RISCV.def
+include/llvm/BinaryFormat/ELFRelocs/Sparc.def
+include/llvm/BinaryFormat/ELFRelocs/SystemZ.def
+include/llvm/BinaryFormat/ELFRelocs/WebAssembly.def
+include/llvm/BinaryFormat/ELFRelocs/i386.def
+include/llvm/BinaryFormat/ELFRelocs/x86_64.def
+include/llvm/BinaryFormat/MachO.def
+include/llvm/BinaryFormat/MachO.h
+include/llvm/BinaryFormat/Magic.h
+include/llvm/BinaryFormat/Wasm.h
+include/llvm/BinaryFormat/WasmRelocs/WebAssembly.def
+include/llvm/Bitcode/BitCodes.h
+include/llvm/Bitcode/BitcodeReader.h
+include/llvm/Bitcode/BitcodeWriter.h
+include/llvm/Bitcode/BitcodeWriterPass.h
+include/llvm/Bitcode/BitstreamReader.h
+include/llvm/Bitcode/BitstreamWriter.h
+include/llvm/Bitcode/LLVMBitCodes.h
+include/llvm/CodeGen/Analysis.h
+include/llvm/CodeGen/AsmPrinter.h
+include/llvm/CodeGen/AtomicExpandUtils.h
+include/llvm/CodeGen/BasicTTIImpl.h
+include/llvm/CodeGen/CalcSpillWeights.h
+include/llvm/CodeGen/CallingConvLower.h
+include/llvm/CodeGen/CommandFlags.h
+include/llvm/CodeGen/DAGCombine.h
+include/llvm/CodeGen/DFAPacketizer.h
+include/llvm/CodeGen/DIE.h
+include/llvm/CodeGen/DIEValue.def
+include/llvm/CodeGen/DwarfStringPoolEntry.h
+include/llvm/CodeGen/EdgeBundles.h
+include/llvm/CodeGen/ExecutionDepsFix.h
+include/llvm/CodeGen/ExpandReductions.h
+include/llvm/CodeGen/FastISel.h
+include/llvm/CodeGen/FaultMaps.h
+include/llvm/CodeGen/FunctionLoweringInfo.h
+include/llvm/CodeGen/GCMetadata.h
+include/llvm/CodeGen/GCMetadataPrinter.h
+include/llvm/CodeGen/GCStrategy.h
+include/llvm/CodeGen/GCs.h
+include/llvm/CodeGen/GlobalISel/CallLowering.h
+include/llvm/CodeGen/GlobalISel/GISelAccessor.h
+include/llvm/CodeGen/GlobalISel/IRTranslator.h
+include/llvm/CodeGen/GlobalISel/InstructionSelect.h
+include/llvm/CodeGen/GlobalISel/InstructionSelector.h
+include/llvm/CodeGen/GlobalISel/Legalizer.h
+include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
+include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
+include/llvm/CodeGen/GlobalISel/Localizer.h
+include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
+include/llvm/CodeGen/GlobalISel/RegBankSelect.h
+include/llvm/CodeGen/GlobalISel/RegisterBank.h
+include/llvm/CodeGen/GlobalISel/RegisterBankInfo.h
+include/llvm/CodeGen/GlobalISel/Types.h
+include/llvm/CodeGen/GlobalISel/Utils.h
+include/llvm/CodeGen/ISDOpcodes.h
+include/llvm/CodeGen/IntrinsicLowering.h
+include/llvm/CodeGen/LatencyPriorityQueue.h
+include/llvm/CodeGen/LazyMachineBlockFrequencyInfo.h
+include/llvm/CodeGen/LexicalScopes.h
+include/llvm/CodeGen/LinkAllAsmWriterComponents.h
+include/llvm/CodeGen/LinkAllCodegenComponents.h
+include/llvm/CodeGen/LiveInterval.h
+include/llvm/CodeGen/LiveIntervalAnalysis.h
+include/llvm/CodeGen/LiveIntervalUnion.h
+include/llvm/CodeGen/LivePhysRegs.h
+include/llvm/CodeGen/LiveRangeEdit.h
+include/llvm/CodeGen/LiveRegMatrix.h
+include/llvm/CodeGen/LiveRegUnits.h
+include/llvm/CodeGen/LiveStackAnalysis.h
+include/llvm/CodeGen/LiveVariables.h
+include/llvm/CodeGen/LowLevelType.h
+include/llvm/CodeGen/MIRParser/MIRParser.h
+include/llvm/CodeGen/MIRPrinter.h
+include/llvm/CodeGen/MIRYamlMapping.h
+include/llvm/CodeGen/MachORelocation.h
+include/llvm/CodeGen/MachineBasicBlock.h
+include/llvm/CodeGen/MachineBlockFrequencyInfo.h
+include/llvm/CodeGen/MachineBranchProbabilityInfo.h
+include/llvm/CodeGen/MachineCombinerPattern.h
+include/llvm/CodeGen/MachineConstantPool.h
+include/llvm/CodeGen/MachineDominanceFrontier.h
+include/llvm/CodeGen/MachineDominators.h
+include/llvm/CodeGen/MachineFrameInfo.h
+include/llvm/CodeGen/MachineFunction.h
+include/llvm/CodeGen/MachineFunctionPass.h
+include/llvm/CodeGen/MachineInstr.h
+include/llvm/CodeGen/MachineInstrBuilder.h
+include/llvm/CodeGen/MachineInstrBundle.h
+include/llvm/CodeGen/MachineInstrBundleIterator.h
+include/llvm/CodeGen/MachineJumpTableInfo.h
+include/llvm/CodeGen/MachineLoopInfo.h
+include/llvm/CodeGen/MachineMemOperand.h
+include/llvm/CodeGen/MachineModuleInfo.h
+include/llvm/CodeGen/MachineModuleInfoImpls.h
+include/llvm/CodeGen/MachineOperand.h
+include/llvm/CodeGen/MachineOptimizationRemarkEmitter.h
+include/llvm/CodeGen/MachinePassRegistry.h
+include/llvm/CodeGen/MachinePostDominators.h
+include/llvm/CodeGen/MachineRegionInfo.h
+include/llvm/CodeGen/MachineRegisterInfo.h
+include/llvm/CodeGen/MachineSSAUpdater.h
+include/llvm/CodeGen/MachineScheduler.h
+include/llvm/CodeGen/MachineTraceMetrics.h
+include/llvm/CodeGen/MachineValueType.h
+include/llvm/CodeGen/MacroFusion.h
+include/llvm/CodeGen/PBQP/CostAllocator.h
+include/llvm/CodeGen/PBQP/Graph.h
+include/llvm/CodeGen/PBQP/Math.h
+include/llvm/CodeGen/PBQP/ReductionRules.h
+include/llvm/CodeGen/PBQP/Solution.h
+include/llvm/CodeGen/PBQPRAConstraint.h
+include/llvm/CodeGen/ParallelCG.h
+include/llvm/CodeGen/Passes.h
+include/llvm/CodeGen/PreISelIntrinsicLowering.h
+include/llvm/CodeGen/PseudoSourceValue.h
+include/llvm/CodeGen/RegAllocPBQP.h
+include/llvm/CodeGen/RegAllocRegistry.h
+include/llvm/CodeGen/RegisterClassInfo.h
+include/llvm/CodeGen/RegisterPressure.h
+include/llvm/CodeGen/RegisterScavenging.h
+include/llvm/CodeGen/RegisterUsageInfo.h
+include/llvm/CodeGen/ResourcePriorityQueue.h
+include/llvm/CodeGen/RuntimeLibcalls.h
+include/llvm/CodeGen/ScheduleDAG.h
+include/llvm/CodeGen/ScheduleDAGInstrs.h
+include/llvm/CodeGen/ScheduleDAGMutation.h
+include/llvm/CodeGen/ScheduleDFS.h
+include/llvm/CodeGen/ScheduleHazardRecognizer.h
+include/llvm/CodeGen/SchedulerRegistry.h
+include/llvm/CodeGen/ScoreboardHazardRecognizer.h
+include/llvm/CodeGen/SelectionDAG.h
+include/llvm/CodeGen/SelectionDAGAddressAnalysis.h
+include/llvm/CodeGen/SelectionDAGISel.h
+include/llvm/CodeGen/SelectionDAGNodes.h
+include/llvm/CodeGen/SelectionDAGTargetInfo.h
+include/llvm/CodeGen/SlotIndexes.h
+include/llvm/CodeGen/StackMaps.h
+include/llvm/CodeGen/StackProtector.h
+include/llvm/CodeGen/TailDuplicator.h
+include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
+include/llvm/CodeGen/TargetPassConfig.h
+include/llvm/CodeGen/TargetSchedule.h
+include/llvm/CodeGen/UnreachableBlockElim.h
+include/llvm/CodeGen/ValueTypes.h
+include/llvm/CodeGen/ValueTypes.td
+include/llvm/CodeGen/VirtRegMap.h
+include/llvm/CodeGen/WinEHFuncInfo.h
+include/llvm/Config/AsmParsers.def
+include/llvm/Config/AsmPrinters.def
+include/llvm/Config/Disassemblers.def
+include/llvm/Config/Targets.def
+include/llvm/Config/abi-breaking.h
+include/llvm/Config/llvm-config.h
+include/llvm/DebugInfo/CodeView/CVDebugRecord.h
+include/llvm/DebugInfo/CodeView/CVRecord.h
+include/llvm/DebugInfo/CodeView/CVSymbolVisitor.h
+include/llvm/DebugInfo/CodeView/CVTypeVisitor.h
+include/llvm/DebugInfo/CodeView/CodeView.h
+include/llvm/DebugInfo/CodeView/CodeViewError.h
+include/llvm/DebugInfo/CodeView/CodeViewRecordIO.h
+include/llvm/DebugInfo/CodeView/CodeViewSymbols.def
+include/llvm/DebugInfo/CodeView/CodeViewTypes.def
+include/llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h
+include/llvm/DebugInfo/CodeView/DebugCrossExSubsection.h
+include/llvm/DebugInfo/CodeView/DebugCrossImpSubsection.h
+include/llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h
+include/llvm/DebugInfo/CodeView/DebugInlineeLinesSubsection.h
+include/llvm/DebugInfo/CodeView/DebugLinesSubsection.h
+include/llvm/DebugInfo/CodeView/DebugStringTableSubsection.h
+include/llvm/DebugInfo/CodeView/DebugSubsection.h
+include/llvm/DebugInfo/CodeView/DebugSubsectionRecord.h
+include/llvm/DebugInfo/CodeView/DebugSubsectionVisitor.h
+include/llvm/DebugInfo/CodeView/DebugSymbolRVASubsection.h
+include/llvm/DebugInfo/CodeView/DebugSymbolsSubsection.h
+include/llvm/DebugInfo/CodeView/DebugUnknownSubsection.h
+include/llvm/DebugInfo/CodeView/EnumTables.h
+include/llvm/DebugInfo/CodeView/Formatters.h
+include/llvm/DebugInfo/CodeView/FunctionId.h
+include/llvm/DebugInfo/CodeView/LazyRandomTypeCollection.h
+include/llvm/DebugInfo/CodeView/Line.h
+include/llvm/DebugInfo/CodeView/RecordSerialization.h
+include/llvm/DebugInfo/CodeView/StringsAndChecksums.h
+include/llvm/DebugInfo/CodeView/SymbolDeserializer.h
+include/llvm/DebugInfo/CodeView/SymbolDumpDelegate.h
+include/llvm/DebugInfo/CodeView/SymbolDumper.h
+include/llvm/DebugInfo/CodeView/SymbolRecord.h
+include/llvm/DebugInfo/CodeView/SymbolRecordMapping.h
+include/llvm/DebugInfo/CodeView/SymbolSerializer.h
+include/llvm/DebugInfo/CodeView/SymbolVisitorCallbackPipeline.h
+include/llvm/DebugInfo/CodeView/SymbolVisitorCallbacks.h
+include/llvm/DebugInfo/CodeView/SymbolVisitorDelegate.h
+include/llvm/DebugInfo/CodeView/TypeCollection.h
+include/llvm/DebugInfo/CodeView/TypeDeserializer.h
+include/llvm/DebugInfo/CodeView/TypeDumpVisitor.h
+include/llvm/DebugInfo/CodeView/TypeIndex.h
+include/llvm/DebugInfo/CodeView/TypeIndexDiscovery.h
+include/llvm/DebugInfo/CodeView/TypeName.h
+include/llvm/DebugInfo/CodeView/TypeRecord.h
+include/llvm/DebugInfo/CodeView/TypeRecordBuilder.h
+include/llvm/DebugInfo/CodeView/TypeRecordMapping.h
+include/llvm/DebugInfo/CodeView/TypeSerializer.h
+include/llvm/DebugInfo/CodeView/TypeServerHandler.h
+include/llvm/DebugInfo/CodeView/TypeStreamMerger.h
+include/llvm/DebugInfo/CodeView/TypeSymbolEmitter.h
+include/llvm/DebugInfo/CodeView/TypeTableBuilder.h
+include/llvm/DebugInfo/CodeView/TypeTableCollection.h
+include/llvm/DebugInfo/CodeView/TypeVisitorCallbackPipeline.h
+include/llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h
+include/llvm/DebugInfo/DIContext.h
+include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h
+include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
+include/llvm/DebugInfo/DWARF/DWARFAttribute.h
+include/llvm/DebugInfo/DWARF/DWARFCompileUnit.h
+include/llvm/DebugInfo/DWARF/DWARFContext.h
+include/llvm/DebugInfo/DWARF/DWARFDataExtractor.h
+include/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h
+include/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h
+include/llvm/DebugInfo/DWARF/DWARFDebugAranges.h
+include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h
+include/llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h
+include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
+include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h
+include/llvm/DebugInfo/DWARF/DWARFDebugMacro.h
+include/llvm/DebugInfo/DWARF/DWARFDebugPubTable.h
+include/llvm/DebugInfo/DWARF/DWARFDebugRangeList.h
+include/llvm/DebugInfo/DWARF/DWARFDie.h
+include/llvm/DebugInfo/DWARF/DWARFFormValue.h
+include/llvm/DebugInfo/DWARF/DWARFGdbIndex.h
+include/llvm/DebugInfo/DWARF/DWARFRelocMap.h
+include/llvm/DebugInfo/DWARF/DWARFSection.h
+include/llvm/DebugInfo/DWARF/DWARFTypeUnit.h
+include/llvm/DebugInfo/DWARF/DWARFUnit.h
+include/llvm/DebugInfo/DWARF/DWARFUnitIndex.h
+include/llvm/DebugInfo/DWARF/DWARFVerifier.h
+include/llvm/DebugInfo/MSF/IMSFFile.h
+include/llvm/DebugInfo/MSF/MSFBuilder.h
+include/llvm/DebugInfo/MSF/MSFCommon.h
+include/llvm/DebugInfo/MSF/MSFError.h
+include/llvm/DebugInfo/MSF/MSFStreamLayout.h
+include/llvm/DebugInfo/MSF/MappedBlockStream.h
+include/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h
+include/llvm/DebugInfo/PDB/DIA/DIADataStream.h
+include/llvm/DebugInfo/PDB/DIA/DIAEnumDebugStreams.h
+include/llvm/DebugInfo/PDB/DIA/DIAEnumLineNumbers.h
+include/llvm/DebugInfo/PDB/DIA/DIAEnumSourceFiles.h
+include/llvm/DebugInfo/PDB/DIA/DIAEnumSymbols.h
+include/llvm/DebugInfo/PDB/DIA/DIAError.h
+include/llvm/DebugInfo/PDB/DIA/DIALineNumber.h
+include/llvm/DebugInfo/PDB/DIA/DIARawSymbol.h
+include/llvm/DebugInfo/PDB/DIA/DIASession.h
+include/llvm/DebugInfo/PDB/DIA/DIASourceFile.h
+include/llvm/DebugInfo/PDB/DIA/DIASupport.h
+include/llvm/DebugInfo/PDB/GenericError.h
+include/llvm/DebugInfo/PDB/IPDBDataStream.h
+include/llvm/DebugInfo/PDB/IPDBEnumChildren.h
+include/llvm/DebugInfo/PDB/IPDBLineNumber.h
+include/llvm/DebugInfo/PDB/IPDBRawSymbol.h
+include/llvm/DebugInfo/PDB/IPDBSession.h
+include/llvm/DebugInfo/PDB/IPDBSourceFile.h
+include/llvm/DebugInfo/PDB/Native/DbiModuleDescriptor.h
+include/llvm/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.h
+include/llvm/DebugInfo/PDB/Native/DbiModuleList.h
+include/llvm/DebugInfo/PDB/Native/DbiStream.h
+include/llvm/DebugInfo/PDB/Native/DbiStreamBuilder.h
+include/llvm/DebugInfo/PDB/Native/EnumTables.h
+include/llvm/DebugInfo/PDB/Native/Formatters.h
+include/llvm/DebugInfo/PDB/Native/GlobalsStream.h
+include/llvm/DebugInfo/PDB/Native/Hash.h
+include/llvm/DebugInfo/PDB/Native/HashTable.h
+include/llvm/DebugInfo/PDB/Native/ISectionContribVisitor.h
+include/llvm/DebugInfo/PDB/Native/InfoStream.h
+include/llvm/DebugInfo/PDB/Native/InfoStreamBuilder.h
+include/llvm/DebugInfo/PDB/Native/ModuleDebugStream.h
+include/llvm/DebugInfo/PDB/Native/ModuleDebugStreamBuilder.h
+include/llvm/DebugInfo/PDB/Native/NamedStreamMap.h
+include/llvm/DebugInfo/PDB/Native/NativeCompilandSymbol.h
+include/llvm/DebugInfo/PDB/Native/NativeEnumModules.h
+include/llvm/DebugInfo/PDB/Native/NativeExeSymbol.h
+include/llvm/DebugInfo/PDB/Native/NativeRawSymbol.h
+include/llvm/DebugInfo/PDB/Native/NativeSession.h
+include/llvm/DebugInfo/PDB/Native/PDBFile.h
+include/llvm/DebugInfo/PDB/Native/PDBFileBuilder.h
+include/llvm/DebugInfo/PDB/Native/PDBStringTable.h
+include/llvm/DebugInfo/PDB/Native/PDBStringTableBuilder.h
+include/llvm/DebugInfo/PDB/Native/PDBTypeServerHandler.h
+include/llvm/DebugInfo/PDB/Native/PublicsStream.h
+include/llvm/DebugInfo/PDB/Native/RawConstants.h
+include/llvm/DebugInfo/PDB/Native/RawError.h
+include/llvm/DebugInfo/PDB/Native/RawTypes.h
+include/llvm/DebugInfo/PDB/Native/SymbolStream.h
+include/llvm/DebugInfo/PDB/Native/TpiHashing.h
+include/llvm/DebugInfo/PDB/Native/TpiStream.h
+include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h
+include/llvm/DebugInfo/PDB/PDB.h
+include/llvm/DebugInfo/PDB/PDBContext.h
+include/llvm/DebugInfo/PDB/PDBExtras.h
+include/llvm/DebugInfo/PDB/PDBSymDumper.h
+include/llvm/DebugInfo/PDB/PDBSymbol.h
+include/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h
+include/llvm/DebugInfo/PDB/PDBSymbolBlock.h
+include/llvm/DebugInfo/PDB/PDBSymbolCompiland.h
+include/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h
+include/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h
+include/llvm/DebugInfo/PDB/PDBSymbolCustom.h
+include/llvm/DebugInfo/PDB/PDBSymbolData.h
+include/llvm/DebugInfo/PDB/PDBSymbolExe.h
+include/llvm/DebugInfo/PDB/PDBSymbolFunc.h
+include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h
+include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h
+include/llvm/DebugInfo/PDB/PDBSymbolLabel.h
+include/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h
+include/llvm/DebugInfo/PDB/PDBSymbolThunk.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h
+include/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h
+include/llvm/DebugInfo/PDB/PDBSymbolUnknown.h
+include/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h
+include/llvm/DebugInfo/PDB/PDBTypes.h
+include/llvm/DebugInfo/PDB/UDTLayout.h
+include/llvm/DebugInfo/Symbolize/DIPrinter.h
+include/llvm/DebugInfo/Symbolize/SymbolizableModule.h
+include/llvm/DebugInfo/Symbolize/Symbolize.h
+include/llvm/Demangle/Demangle.h
+include/llvm/ExecutionEngine/ExecutionEngine.h
+include/llvm/ExecutionEngine/GenericValue.h
+include/llvm/ExecutionEngine/Interpreter.h
+include/llvm/ExecutionEngine/JITEventListener.h
+include/llvm/ExecutionEngine/JITSymbol.h
+include/llvm/ExecutionEngine/MCJIT.h
+include/llvm/ExecutionEngine/OProfileWrapper.h
+include/llvm/ExecutionEngine/ObjectCache.h
+include/llvm/ExecutionEngine/ObjectMemoryBuffer.h
+include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h
+include/llvm/ExecutionEngine/Orc/CompileUtils.h
+include/llvm/ExecutionEngine/Orc/ExecutionUtils.h
+include/llvm/ExecutionEngine/Orc/GlobalMappingLayer.h
+include/llvm/ExecutionEngine/Orc/IRCompileLayer.h
+include/llvm/ExecutionEngine/Orc/IRTransformLayer.h
+include/llvm/ExecutionEngine/Orc/IndirectionUtils.h
+include/llvm/ExecutionEngine/Orc/LambdaResolver.h
+include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h
+include/llvm/ExecutionEngine/Orc/NullResolver.h
+include/llvm/ExecutionEngine/Orc/ObjectTransformLayer.h
+include/llvm/ExecutionEngine/Orc/OrcABISupport.h
+include/llvm/ExecutionEngine/Orc/OrcError.h
+include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h
+include/llvm/ExecutionEngine/Orc/OrcRemoteTargetRPCAPI.h
+include/llvm/ExecutionEngine/Orc/OrcRemoteTargetServer.h
+include/llvm/ExecutionEngine/Orc/RPCSerialization.h
+include/llvm/ExecutionEngine/Orc/RPCUtils.h
+include/llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h
+include/llvm/ExecutionEngine/Orc/RawByteChannel.h
+include/llvm/ExecutionEngine/OrcMCJITReplacement.h
+include/llvm/ExecutionEngine/RTDyldMemoryManager.h
+include/llvm/ExecutionEngine/RuntimeDyld.h
+include/llvm/ExecutionEngine/RuntimeDyldChecker.h
+include/llvm/ExecutionEngine/SectionMemoryManager.h
+include/llvm/IR/Argument.h
+include/llvm/IR/AssemblyAnnotationWriter.h
+include/llvm/IR/Attributes.gen
+include/llvm/IR/Attributes.h
+include/llvm/IR/Attributes.td
+include/llvm/IR/AutoUpgrade.h
+include/llvm/IR/BasicBlock.h
+include/llvm/IR/CFG.h
+include/llvm/IR/CallSite.h
+include/llvm/IR/CallingConv.h
+include/llvm/IR/Comdat.h
+include/llvm/IR/Constant.h
+include/llvm/IR/ConstantFolder.h
+include/llvm/IR/ConstantRange.h
+include/llvm/IR/Constants.h
+include/llvm/IR/DIBuilder.h
+include/llvm/IR/DataLayout.h
+include/llvm/IR/DebugInfo.h
+include/llvm/IR/DebugInfoFlags.def
+include/llvm/IR/DebugInfoMetadata.h
+include/llvm/IR/DebugLoc.h
+include/llvm/IR/DerivedTypes.h
+include/llvm/IR/DerivedUser.h
+include/llvm/IR/DiagnosticInfo.h
+include/llvm/IR/DiagnosticPrinter.h
+include/llvm/IR/Dominators.h
+include/llvm/IR/Function.h
+include/llvm/IR/GVMaterializer.h
+include/llvm/IR/GetElementPtrTypeIterator.h
+include/llvm/IR/GlobalAlias.h
+include/llvm/IR/GlobalIFunc.h
+include/llvm/IR/GlobalIndirectSymbol.h
+include/llvm/IR/GlobalObject.h
+include/llvm/IR/GlobalValue.h
+include/llvm/IR/GlobalVariable.h
+include/llvm/IR/IRBuilder.h
+include/llvm/IR/IRPrintingPasses.h
+include/llvm/IR/InlineAsm.h
+include/llvm/IR/InstIterator.h
+include/llvm/IR/InstVisitor.h
+include/llvm/IR/InstrTypes.h
+include/llvm/IR/Instruction.def
+include/llvm/IR/Instruction.h
+include/llvm/IR/Instructions.h
+include/llvm/IR/IntrinsicInst.h
+include/llvm/IR/Intrinsics.gen
+include/llvm/IR/Intrinsics.h
+include/llvm/IR/Intrinsics.td
+include/llvm/IR/IntrinsicsAArch64.td
+include/llvm/IR/IntrinsicsAMDGPU.td
+include/llvm/IR/IntrinsicsARM.td
+include/llvm/IR/IntrinsicsBPF.td
+include/llvm/IR/IntrinsicsHexagon.td
+include/llvm/IR/IntrinsicsMips.td
+include/llvm/IR/IntrinsicsNVVM.td
+include/llvm/IR/IntrinsicsPowerPC.td
+include/llvm/IR/IntrinsicsSystemZ.td
+include/llvm/IR/IntrinsicsWebAssembly.td
+include/llvm/IR/IntrinsicsX86.td
+include/llvm/IR/IntrinsicsXCore.td
+include/llvm/IR/LLVMContext.h
+include/llvm/IR/LegacyPassManager.h
+include/llvm/IR/LegacyPassManagers.h
+include/llvm/IR/LegacyPassNameParser.h
+include/llvm/IR/MDBuilder.h
+include/llvm/IR/Mangler.h
+include/llvm/IR/Metadata.def
+include/llvm/IR/Metadata.h
+include/llvm/IR/Module.h
+include/llvm/IR/ModuleSlotTracker.h
+include/llvm/IR/ModuleSummaryIndex.h
+include/llvm/IR/ModuleSummaryIndexYAML.h
+include/llvm/IR/NoFolder.h
+include/llvm/IR/OperandTraits.h
+include/llvm/IR/Operator.h
+include/llvm/IR/OptBisect.h
+include/llvm/IR/PassManager.h
+include/llvm/IR/PassManagerInternal.h
+include/llvm/IR/PatternMatch.h
+include/llvm/IR/PredIteratorCache.h
+include/llvm/IR/ProfileSummary.h
+include/llvm/IR/Statepoint.h
+include/llvm/IR/SymbolTableListTraits.h
+include/llvm/IR/TrackingMDRef.h
+include/llvm/IR/Type.h
+include/llvm/IR/TypeBuilder.h
+include/llvm/IR/TypeFinder.h
+include/llvm/IR/Use.h
+include/llvm/IR/UseListOrder.h
+include/llvm/IR/User.h
+include/llvm/IR/Value.def
+include/llvm/IR/Value.h
+include/llvm/IR/ValueHandle.h
+include/llvm/IR/ValueMap.h
+include/llvm/IR/ValueSymbolTable.h
+include/llvm/IR/Verifier.h
+include/llvm/IRReader/IRReader.h
+include/llvm/InitializePasses.h
+include/llvm/LTO/Caching.h
+include/llvm/LTO/Config.h
+include/llvm/LTO/LTO.h
+include/llvm/LTO/LTOBackend.h
+include/llvm/LTO/legacy/LTOCodeGenerator.h
+include/llvm/LTO/legacy/LTOModule.h
+include/llvm/LTO/legacy/ThinLTOCodeGenerator.h
+include/llvm/LTO/legacy/UpdateCompilerUsed.h
+include/llvm/LineEditor/LineEditor.h
+include/llvm/LinkAllIR.h
+include/llvm/LinkAllPasses.h
+include/llvm/Linker/IRMover.h
+include/llvm/Linker/Linker.h
+include/llvm/MC/ConstantPools.h
+include/llvm/MC/LaneBitmask.h
+include/llvm/MC/MCAsmBackend.h
+include/llvm/MC/MCAsmInfo.h
+include/llvm/MC/MCAsmInfoCOFF.h
+include/llvm/MC/MCAsmInfoDarwin.h
+include/llvm/MC/MCAsmInfoELF.h
+include/llvm/MC/MCAsmInfoWasm.h
+include/llvm/MC/MCAsmLayout.h
+include/llvm/MC/MCAssembler.h
+include/llvm/MC/MCCodeEmitter.h
+include/llvm/MC/MCCodeView.h
+include/llvm/MC/MCContext.h
+include/llvm/MC/MCDirectives.h
+include/llvm/MC/MCDisassembler/MCDisassembler.h
+include/llvm/MC/MCDisassembler/MCExternalSymbolizer.h
+include/llvm/MC/MCDisassembler/MCRelocationInfo.h
+include/llvm/MC/MCDisassembler/MCSymbolizer.h
+include/llvm/MC/MCDwarf.h
+include/llvm/MC/MCELFObjectWriter.h
+include/llvm/MC/MCELFStreamer.h
+include/llvm/MC/MCExpr.h
+include/llvm/MC/MCFixedLenDisassembler.h
+include/llvm/MC/MCFixup.h
+include/llvm/MC/MCFixupKindInfo.h
+include/llvm/MC/MCFragment.h
+include/llvm/MC/MCInst.h
+include/llvm/MC/MCInstBuilder.h
+include/llvm/MC/MCInstPrinter.h
+include/llvm/MC/MCInstrAnalysis.h
+include/llvm/MC/MCInstrDesc.h
+include/llvm/MC/MCInstrInfo.h
+include/llvm/MC/MCInstrItineraries.h
+include/llvm/MC/MCLabel.h
+include/llvm/MC/MCLinkerOptimizationHint.h
+include/llvm/MC/MCMachObjectWriter.h
+include/llvm/MC/MCObjectFileInfo.h
+include/llvm/MC/MCObjectStreamer.h
+include/llvm/MC/MCObjectWriter.h
+include/llvm/MC/MCParser/AsmCond.h
+include/llvm/MC/MCParser/AsmLexer.h
+include/llvm/MC/MCParser/MCAsmLexer.h
+include/llvm/MC/MCParser/MCAsmParser.h
+include/llvm/MC/MCParser/MCAsmParserExtension.h
+include/llvm/MC/MCParser/MCAsmParserUtils.h
+include/llvm/MC/MCParser/MCParsedAsmOperand.h
+include/llvm/MC/MCParser/MCTargetAsmParser.h
+include/llvm/MC/MCRegisterInfo.h
+include/llvm/MC/MCSchedule.h
+include/llvm/MC/MCSection.h
+include/llvm/MC/MCSectionCOFF.h
+include/llvm/MC/MCSectionELF.h
+include/llvm/MC/MCSectionMachO.h
+include/llvm/MC/MCSectionWasm.h
+include/llvm/MC/MCStreamer.h
+include/llvm/MC/MCSubtargetInfo.h
+include/llvm/MC/MCSymbol.h
+include/llvm/MC/MCSymbolCOFF.h
+include/llvm/MC/MCSymbolELF.h
+include/llvm/MC/MCSymbolMachO.h
+include/llvm/MC/MCSymbolWasm.h
+include/llvm/MC/MCTargetOptions.h
+include/llvm/MC/MCTargetOptionsCommandFlags.h
+include/llvm/MC/MCValue.h
+include/llvm/MC/MCWasmObjectWriter.h
+include/llvm/MC/MCWasmStreamer.h
+include/llvm/MC/MCWin64EH.h
+include/llvm/MC/MCWinCOFFObjectWriter.h
+include/llvm/MC/MCWinCOFFStreamer.h
+include/llvm/MC/MCWinEH.h
+include/llvm/MC/MachineLocation.h
+include/llvm/MC/SectionKind.h
+include/llvm/MC/StringTableBuilder.h
+include/llvm/MC/SubtargetFeature.h
+include/llvm/Object/Archive.h
+include/llvm/Object/ArchiveWriter.h
+include/llvm/Object/Binary.h
+include/llvm/Object/COFF.h
+include/llvm/Object/COFFImportFile.h
+include/llvm/Object/COFFModuleDefinition.h
+include/llvm/Object/Decompressor.h
+include/llvm/Object/ELF.h
+include/llvm/Object/ELFObjectFile.h
+include/llvm/Object/ELFTypes.h
+include/llvm/Object/Error.h
+include/llvm/Object/IRObjectFile.h
+include/llvm/Object/IRSymtab.h
+include/llvm/Object/MachO.h
+include/llvm/Object/MachOUniversal.h
+include/llvm/Object/ModuleSymbolTable.h
+include/llvm/Object/ObjectFile.h
+include/llvm/Object/RelocVisitor.h
+include/llvm/Object/StackMapParser.h
+include/llvm/Object/SymbolSize.h
+include/llvm/Object/SymbolicFile.h
+include/llvm/Object/Wasm.h
+include/llvm/Object/WindowsResource.h
+include/llvm/ObjectYAML/COFFYAML.h
+include/llvm/ObjectYAML/CodeViewYAMLDebugSections.h
+include/llvm/ObjectYAML/CodeViewYAMLSymbols.h
+include/llvm/ObjectYAML/CodeViewYAMLTypes.h
+include/llvm/ObjectYAML/DWARFEmitter.h
+include/llvm/ObjectYAML/DWARFYAML.h
+include/llvm/ObjectYAML/ELFYAML.h
+include/llvm/ObjectYAML/MachOYAML.h
+include/llvm/ObjectYAML/ObjectYAML.h
+include/llvm/ObjectYAML/WasmYAML.h
+include/llvm/ObjectYAML/YAML.h
+include/llvm/Option/Arg.h
+include/llvm/Option/ArgList.h
+include/llvm/Option/OptParser.td
+include/llvm/Option/OptSpecifier.h
+include/llvm/Option/OptTable.h
+include/llvm/Option/Option.h
+include/llvm/Pass.h
+include/llvm/PassAnalysisSupport.h
+include/llvm/PassInfo.h
+include/llvm/PassRegistry.h
+include/llvm/PassSupport.h
+include/llvm/Passes/PassBuilder.h
+include/llvm/ProfileData/Coverage/CoverageMapping.h
+include/llvm/ProfileData/Coverage/CoverageMappingReader.h
+include/llvm/ProfileData/Coverage/CoverageMappingWriter.h
+include/llvm/ProfileData/InstrProf.h
+include/llvm/ProfileData/InstrProfData.inc
+include/llvm/ProfileData/InstrProfReader.h
+include/llvm/ProfileData/InstrProfWriter.h
+include/llvm/ProfileData/ProfileCommon.h
+include/llvm/ProfileData/SampleProf.h
+include/llvm/ProfileData/SampleProfReader.h
+include/llvm/ProfileData/SampleProfWriter.h
+include/llvm/Support/AArch64TargetParser.def
+include/llvm/Support/AMDGPUCodeObjectMetadata.h
+include/llvm/Support/ARMAttributeParser.h
+include/llvm/Support/ARMBuildAttributes.h
+include/llvm/Support/ARMEHABI.h
+include/llvm/Support/ARMTargetParser.def
+include/llvm/Support/ARMWinEH.h
+include/llvm/Support/AlignOf.h
+include/llvm/Support/Allocator.h
+include/llvm/Support/ArrayRecycler.h
+include/llvm/Support/Atomic.h
+include/llvm/Support/AtomicOrdering.h
+include/llvm/Support/BinaryByteStream.h
+include/llvm/Support/BinaryItemStream.h
+include/llvm/Support/BinaryStream.h
+include/llvm/Support/BinaryStreamArray.h
+include/llvm/Support/BinaryStreamError.h
+include/llvm/Support/BinaryStreamReader.h
+include/llvm/Support/BinaryStreamRef.h
+include/llvm/Support/BinaryStreamWriter.h
+include/llvm/Support/BlockFrequency.h
+include/llvm/Support/BranchProbability.h
+include/llvm/Support/CBindingWrapping.h
+include/llvm/Support/COM.h
+include/llvm/Support/CachePruning.h
+include/llvm/Support/Capacity.h
+include/llvm/Support/Casting.h
+include/llvm/Support/Chrono.h
+include/llvm/Support/CodeGen.h
+include/llvm/Support/CodeGenCWrappers.h
+include/llvm/Support/CommandLine.h
+include/llvm/Support/Compiler.h
+include/llvm/Support/Compression.h
+include/llvm/Support/ConvertUTF.h
+include/llvm/Support/CrashRecoveryContext.h
+include/llvm/Support/DOTGraphTraits.h
+include/llvm/Support/DataExtractor.h
+include/llvm/Support/DataTypes.h
+include/llvm/Support/Debug.h
+include/llvm/Support/DebugCounter.h
+include/llvm/Support/DynamicLibrary.h
+include/llvm/Support/Endian.h
+include/llvm/Support/EndianStream.h
+include/llvm/Support/Errc.h
+include/llvm/Support/Errno.h
+include/llvm/Support/Error.h
+include/llvm/Support/ErrorHandling.h
+include/llvm/Support/ErrorOr.h
+include/llvm/Support/FileOutputBuffer.h
+include/llvm/Support/FileSystem.h
+include/llvm/Support/FileUtilities.h
+include/llvm/Support/Format.h
+include/llvm/Support/FormatAdapters.h
+include/llvm/Support/FormatCommon.h
+include/llvm/Support/FormatProviders.h
+include/llvm/Support/FormatVariadic.h
+include/llvm/Support/FormatVariadicDetails.h
+include/llvm/Support/FormattedStream.h
+include/llvm/Support/GCOV.h
+include/llvm/Support/GenericDomTree.h
+include/llvm/Support/GenericDomTreeConstruction.h
+include/llvm/Support/GlobPattern.h
+include/llvm/Support/GraphWriter.h
+include/llvm/Support/Host.h
+include/llvm/Support/JamCRC.h
+include/llvm/Support/KnownBits.h
+include/llvm/Support/LEB128.h
+include/llvm/Support/LICENSE.TXT
+include/llvm/Support/LineIterator.h
+include/llvm/Support/Locale.h
+include/llvm/Support/LockFileManager.h
+include/llvm/Support/LowLevelTypeImpl.h
+include/llvm/Support/MD5.h
+include/llvm/Support/ManagedStatic.h
+include/llvm/Support/MathExtras.h
+include/llvm/Support/Memory.h
+include/llvm/Support/MemoryBuffer.h
+include/llvm/Support/MipsABIFlags.h
+include/llvm/Support/Mutex.h
+include/llvm/Support/MutexGuard.h
+include/llvm/Support/NativeFormatting.h
+include/llvm/Support/OnDiskHashTable.h
+include/llvm/Support/Options.h
+include/llvm/Support/Parallel.h
+include/llvm/Support/Path.h
+include/llvm/Support/PluginLoader.h
+include/llvm/Support/PointerLikeTypeTraits.h
+include/llvm/Support/PrettyStackTrace.h
+include/llvm/Support/Printable.h
+include/llvm/Support/Process.h
+include/llvm/Support/Program.h
+include/llvm/Support/RWMutex.h
+include/llvm/Support/RandomNumberGenerator.h
+include/llvm/Support/Recycler.h
+include/llvm/Support/RecyclingAllocator.h
+include/llvm/Support/Regex.h
+include/llvm/Support/Registry.h
+include/llvm/Support/SHA1.h
+include/llvm/Support/SMLoc.h
+include/llvm/Support/SaveAndRestore.h
+include/llvm/Support/ScaledNumber.h
+include/llvm/Support/ScopedPrinter.h
+include/llvm/Support/Signals.h
+include/llvm/Support/Solaris/sys/regset.h
+include/llvm/Support/SourceMgr.h
+include/llvm/Support/SpecialCaseList.h
+include/llvm/Support/StringPool.h
+include/llvm/Support/StringSaver.h
+include/llvm/Support/SwapByteOrder.h
+include/llvm/Support/SystemUtils.h
+include/llvm/Support/TarWriter.h
+include/llvm/Support/TargetParser.h
+include/llvm/Support/TargetRegistry.h
+include/llvm/Support/TargetSelect.h
+include/llvm/Support/ThreadLocal.h
+include/llvm/Support/ThreadPool.h
+include/llvm/Support/Threading.h
+include/llvm/Support/Timer.h
+include/llvm/Support/ToolOutputFile.h
+include/llvm/Support/TrailingObjects.h
+include/llvm/Support/TrigramIndex.h
+include/llvm/Support/TypeName.h
+include/llvm/Support/Unicode.h
+include/llvm/Support/UnicodeCharRanges.h
+include/llvm/Support/UniqueLock.h
+include/llvm/Support/VCSRevision.h
+include/llvm/Support/Valgrind.h
+include/llvm/Support/Watchdog.h
+include/llvm/Support/Win64EH.h
+include/llvm/Support/WindowsError.h
+include/llvm/Support/YAMLParser.h
+include/llvm/Support/YAMLTraits.h
+include/llvm/Support/circular_raw_ostream.h
+include/llvm/Support/raw_os_ostream.h
+include/llvm/Support/raw_ostream.h
+include/llvm/Support/raw_sha1_ostream.h
+include/llvm/Support/thread.h
+include/llvm/Support/type_traits.h
+include/llvm/Support/xxhash.h
+include/llvm/TableGen/Error.h
+include/llvm/TableGen/Main.h
+include/llvm/TableGen/Record.h
+include/llvm/TableGen/SearchableTable.td
+include/llvm/TableGen/SetTheory.h
+include/llvm/TableGen/StringMatcher.h
+include/llvm/TableGen/StringToOffsetTable.h
+include/llvm/TableGen/TableGenBackend.h
+include/llvm/Target/CostTable.h
+include/llvm/Target/GenericOpcodes.td
+include/llvm/Target/GlobalISel/RegisterBank.td
+include/llvm/Target/GlobalISel/SelectionDAGCompat.td
+include/llvm/Target/GlobalISel/Target.td
+include/llvm/Target/Target.td
+include/llvm/Target/TargetCallingConv.h
+include/llvm/Target/TargetCallingConv.td
+include/llvm/Target/TargetFrameLowering.h
+include/llvm/Target/TargetInstrInfo.h
+include/llvm/Target/TargetIntrinsicInfo.h
+include/llvm/Target/TargetItinerary.td
+include/llvm/Target/TargetLowering.h
+include/llvm/Target/TargetLoweringObjectFile.h
+include/llvm/Target/TargetMachine.h
+include/llvm/Target/TargetOpcodes.def
+include/llvm/Target/TargetOpcodes.h
+include/llvm/Target/TargetOptions.h
+include/llvm/Target/TargetRegisterInfo.h
+include/llvm/Target/TargetSchedule.td
+include/llvm/Target/TargetSelectionDAG.td
+include/llvm/Target/TargetSubtargetInfo.h
+include/llvm/Testing/Support/Error.h
+include/llvm/Testing/Support/SupportHelpers.h
+include/llvm/ToolDrivers/llvm-lib/LibDriver.h
+include/llvm/Transforms/Coroutines.h
+include/llvm/Transforms/GCOVProfiler.h
+include/llvm/Transforms/IPO.h
+include/llvm/Transforms/IPO/AlwaysInliner.h
+include/llvm/Transforms/IPO/ArgumentPromotion.h
+include/llvm/Transforms/IPO/ConstantMerge.h
+include/llvm/Transforms/IPO/CrossDSOCFI.h
+include/llvm/Transforms/IPO/DeadArgumentElimination.h
+include/llvm/Transforms/IPO/ElimAvailExtern.h
+include/llvm/Transforms/IPO/ForceFunctionAttrs.h
+include/llvm/Transforms/IPO/FunctionAttrs.h
+include/llvm/Transforms/IPO/FunctionImport.h
+include/llvm/Transforms/IPO/GlobalDCE.h
+include/llvm/Transforms/IPO/GlobalOpt.h
+include/llvm/Transforms/IPO/GlobalSplit.h
+include/llvm/Transforms/IPO/InferFunctionAttrs.h
+include/llvm/Transforms/IPO/Inliner.h
+include/llvm/Transforms/IPO/Internalize.h
+include/llvm/Transforms/IPO/LowerTypeTests.h
+include/llvm/Transforms/IPO/PartialInlining.h
+include/llvm/Transforms/IPO/PassManagerBuilder.h
+include/llvm/Transforms/IPO/SCCP.h
+include/llvm/Transforms/IPO/StripDeadPrototypes.h
+include/llvm/Transforms/IPO/ThinLTOBitcodeWriter.h
+include/llvm/Transforms/IPO/WholeProgramDevirt.h
+include/llvm/Transforms/InstCombine/InstCombine.h
+include/llvm/Transforms/InstCombine/InstCombineWorklist.h
+include/llvm/Transforms/InstrProfiling.h
+include/llvm/Transforms/Instrumentation.h
+include/llvm/Transforms/ObjCARC.h
+include/llvm/Transforms/PGOInstrumentation.h
+include/llvm/Transforms/SampleProfile.h
+include/llvm/Transforms/Scalar.h
+include/llvm/Transforms/Scalar/ADCE.h
+include/llvm/Transforms/Scalar/AlignmentFromAssumptions.h
+include/llvm/Transforms/Scalar/BDCE.h
+include/llvm/Transforms/Scalar/ConstantHoisting.h
+include/llvm/Transforms/Scalar/CorrelatedValuePropagation.h
+include/llvm/Transforms/Scalar/DCE.h
+include/llvm/Transforms/Scalar/DeadStoreElimination.h
+include/llvm/Transforms/Scalar/EarlyCSE.h
+include/llvm/Transforms/Scalar/Float2Int.h
+include/llvm/Transforms/Scalar/GVN.h
+include/llvm/Transforms/Scalar/GVNExpression.h
+include/llvm/Transforms/Scalar/GuardWidening.h
+include/llvm/Transforms/Scalar/IVUsersPrinter.h
+include/llvm/Transforms/Scalar/IndVarSimplify.h
+include/llvm/Transforms/Scalar/JumpThreading.h
+include/llvm/Transforms/Scalar/LICM.h
+include/llvm/Transforms/Scalar/LoopAccessAnalysisPrinter.h
+include/llvm/Transforms/Scalar/LoopDataPrefetch.h
+include/llvm/Transforms/Scalar/LoopDeletion.h
+include/llvm/Transforms/Scalar/LoopDistribute.h
+include/llvm/Transforms/Scalar/LoopIdiomRecognize.h
+include/llvm/Transforms/Scalar/LoopInstSimplify.h
+include/llvm/Transforms/Scalar/LoopLoadElimination.h
+include/llvm/Transforms/Scalar/LoopPassManager.h
+include/llvm/Transforms/Scalar/LoopPredication.h
+include/llvm/Transforms/Scalar/LoopRotation.h
+include/llvm/Transforms/Scalar/LoopSimplifyCFG.h
+include/llvm/Transforms/Scalar/LoopSink.h
+include/llvm/Transforms/Scalar/LoopStrengthReduce.h
+include/llvm/Transforms/Scalar/LoopUnrollPass.h
+include/llvm/Transforms/Scalar/LowerAtomic.h
+include/llvm/Transforms/Scalar/LowerExpectIntrinsic.h
+include/llvm/Transforms/Scalar/LowerGuardIntrinsic.h
+include/llvm/Transforms/Scalar/MemCpyOptimizer.h
+include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h
+include/llvm/Transforms/Scalar/NaryReassociate.h
+include/llvm/Transforms/Scalar/NewGVN.h
+include/llvm/Transforms/Scalar/PartiallyInlineLibCalls.h
+include/llvm/Transforms/Scalar/Reassociate.h
+include/llvm/Transforms/Scalar/SCCP.h
+include/llvm/Transforms/Scalar/SROA.h
+include/llvm/Transforms/Scalar/SimpleLoopUnswitch.h
+include/llvm/Transforms/Scalar/SimplifyCFG.h
+include/llvm/Transforms/Scalar/Sink.h
+include/llvm/Transforms/Scalar/SpeculativeExecution.h
+include/llvm/Transforms/Scalar/TailRecursionElimination.h
+include/llvm/Transforms/Utils/ASanStackFrameLayout.h
+include/llvm/Transforms/Utils/AddDiscriminators.h
+include/llvm/Transforms/Utils/BasicBlockUtils.h
+include/llvm/Transforms/Utils/BreakCriticalEdges.h
+include/llvm/Transforms/Utils/BuildLibCalls.h
+include/llvm/Transforms/Utils/BypassSlowDivision.h
+include/llvm/Transforms/Utils/Cloning.h
+include/llvm/Transforms/Utils/CmpInstAnalysis.h
+include/llvm/Transforms/Utils/CodeExtractor.h
+include/llvm/Transforms/Utils/CtorUtils.h
+include/llvm/Transforms/Utils/EscapeEnumerator.h
+include/llvm/Transforms/Utils/Evaluator.h
+include/llvm/Transforms/Utils/FunctionComparator.h
+include/llvm/Transforms/Utils/FunctionImportUtils.h
+include/llvm/Transforms/Utils/GlobalStatus.h
+include/llvm/Transforms/Utils/ImportedFunctionsInliningStatistics.h
+include/llvm/Transforms/Utils/IntegerDivision.h
+include/llvm/Transforms/Utils/LCSSA.h
+include/llvm/Transforms/Utils/LibCallsShrinkWrap.h
+include/llvm/Transforms/Utils/Local.h
+include/llvm/Transforms/Utils/LoopSimplify.h
+include/llvm/Transforms/Utils/LoopUtils.h
+include/llvm/Transforms/Utils/LoopVersioning.h
+include/llvm/Transforms/Utils/LowerInvoke.h
+include/llvm/Transforms/Utils/LowerMemIntrinsics.h
+include/llvm/Transforms/Utils/Mem2Reg.h
+include/llvm/Transforms/Utils/ModuleUtils.h
+include/llvm/Transforms/Utils/NameAnonGlobals.h
+include/llvm/Transforms/Utils/OrderedInstructions.h
+include/llvm/Transforms/Utils/PredicateInfo.h
+include/llvm/Transforms/Utils/PromoteMemToReg.h
+include/llvm/Transforms/Utils/SSAUpdater.h
+include/llvm/Transforms/Utils/SSAUpdaterImpl.h
+include/llvm/Transforms/Utils/SanitizerStats.h
+include/llvm/Transforms/Utils/SimplifyIndVar.h
+include/llvm/Transforms/Utils/SimplifyInstructions.h
+include/llvm/Transforms/Utils/SimplifyLibCalls.h
+include/llvm/Transforms/Utils/SplitModule.h
+include/llvm/Transforms/Utils/SymbolRewriter.h
+include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h
+include/llvm/Transforms/Utils/UnrollLoop.h
+include/llvm/Transforms/Utils/VNCoercion.h
+include/llvm/Transforms/Utils/ValueMapper.h
+include/llvm/Transforms/Vectorize.h
+include/llvm/Transforms/Vectorize/LoopVectorize.h
+include/llvm/Transforms/Vectorize/SLPVectorizer.h
+include/llvm/XRay/Graph.h
+include/llvm/XRay/InstrumentationMap.h
+include/llvm/XRay/Trace.h
+include/llvm/XRay/XRayRecord.h
+include/llvm/XRay/YAMLXRayRecord.h
+lib/BugpointPasses.${SOEXT}
+lib/LLVMHello.${SOEXT}
+lib/cmake/llvm/AddLLVM.cmake
+lib/cmake/llvm/AddLLVMDefinitions.cmake
+lib/cmake/llvm/AddOCaml.cmake
+lib/cmake/llvm/AddSphinxTarget.cmake
+lib/cmake/llvm/CheckAtomic.cmake
+lib/cmake/llvm/CheckCompilerVersion.cmake
+lib/cmake/llvm/CheckLinkerFlag.cmake
+lib/cmake/llvm/ChooseMSVCCRT.cmake
+lib/cmake/llvm/CrossCompile.cmake
+lib/cmake/llvm/DetermineGCCCompatible.cmake
+lib/cmake/llvm/FindOCaml.cmake
+lib/cmake/llvm/FindSphinx.cmake
+lib/cmake/llvm/GenerateVersionFromCVS.cmake
+lib/cmake/llvm/GetSVN.cmake
+lib/cmake/llvm/HandleLLVMOptions.cmake
+lib/cmake/llvm/HandleLLVMStdlib.cmake
+lib/cmake/llvm/LLVM-Config.cmake
+lib/cmake/llvm/LLVMConfig.cmake
+lib/cmake/llvm/LLVMConfigVersion.cmake
+lib/cmake/llvm/LLVMExports-release.cmake
+lib/cmake/llvm/LLVMExports.cmake
+lib/cmake/llvm/LLVMExternalProjectUtils.cmake
+lib/cmake/llvm/LLVMInstallSymlink.cmake
+lib/cmake/llvm/LLVMProcessSources.cmake
+lib/cmake/llvm/TableGen.cmake
+lib/cmake/llvm/VersionFromVCS.cmake
+lib/libLLVM-5.0.0svn.${SOEXT}
+lib/libLLVM-5.0svn.${SOEXT}
+lib/libLLVM.${SOEXT}
+${PLIST.AArch64}lib/libLLVMAArch64AsmParser.a
+${PLIST.AArch64}lib/libLLVMAArch64AsmPrinter.a
+${PLIST.AArch64}lib/libLLVMAArch64CodeGen.a
+${PLIST.AArch64}lib/libLLVMAArch64Desc.a
+${PLIST.AArch64}lib/libLLVMAArch64Disassembler.a
+${PLIST.AArch64}lib/libLLVMAArch64Info.a
+${PLIST.AArch64}lib/libLLVMAArch64Utils.a
+${PLIST.AMDGPU}lib/libLLVMAMDGPUAsmParser.a
+${PLIST.AMDGPU}lib/libLLVMAMDGPUAsmPrinter.a
+${PLIST.AMDGPU}lib/libLLVMAMDGPUCodeGen.a
+${PLIST.AMDGPU}lib/libLLVMAMDGPUDesc.a
+${PLIST.AMDGPU}lib/libLLVMAMDGPUDisassembler.a
+${PLIST.AMDGPU}lib/libLLVMAMDGPUInfo.a
+${PLIST.AMDGPU}lib/libLLVMAMDGPUUtils.a
+${PLIST.ARM}lib/libLLVMARMAsmParser.a
+${PLIST.ARM}lib/libLLVMARMAsmPrinter.a
+${PLIST.ARM}lib/libLLVMARMCodeGen.a
+${PLIST.ARM}lib/libLLVMARMDesc.a
+${PLIST.ARM}lib/libLLVMARMDisassembler.a
+${PLIST.ARM}lib/libLLVMARMInfo.a
+lib/libLLVMAnalysis.a
+lib/libLLVMAsmParser.a
+lib/libLLVMAsmPrinter.a
+${PLIST.BPF}lib/libLLVMBPFAsmPrinter.a
+${PLIST.BPF}lib/libLLVMBPFCodeGen.a
+${PLIST.BPF}lib/libLLVMBPFDesc.a
+${PLIST.BPF}lib/libLLVMBPFDisassembler.a
+${PLIST.BPF}lib/libLLVMBPFInfo.a
+lib/libLLVMBinaryFormat.a
+lib/libLLVMBitReader.a
+lib/libLLVMBitWriter.a
+lib/libLLVMCodeGen.a
+lib/libLLVMCore.a
+lib/libLLVMCoroutines.a
+lib/libLLVMCoverage.a
+lib/libLLVMDebugInfoCodeView.a
+lib/libLLVMDebugInfoDWARF.a
+lib/libLLVMDebugInfoMSF.a
+lib/libLLVMDebugInfoPDB.a
+lib/libLLVMDemangle.a
+lib/libLLVMExecutionEngine.a
+lib/libLLVMGlobalISel.a
+${PLIST.Hexagon}lib/libLLVMHexagonAsmParser.a
+${PLIST.Hexagon}lib/libLLVMHexagonCodeGen.a
+${PLIST.Hexagon}lib/libLLVMHexagonDesc.a
+${PLIST.Hexagon}lib/libLLVMHexagonDisassembler.a
+${PLIST.Hexagon}lib/libLLVMHexagonInfo.a
+lib/libLLVMIRReader.a
+lib/libLLVMInstCombine.a
+lib/libLLVMInstrumentation.a
+lib/libLLVMInterpreter.a
+lib/libLLVMLTO.a
+lib/libLLVMLibDriver.a
+lib/libLLVMLineEditor.a
+lib/libLLVMLinker.a
+lib/libLLVMMC.a
+lib/libLLVMMCDisassembler.a
+lib/libLLVMMCJIT.a
+lib/libLLVMMCParser.a
+lib/libLLVMMIRParser.a
+${PLIST.MSP430}lib/libLLVMMSP430AsmPrinter.a
+${PLIST.MSP430}lib/libLLVMMSP430CodeGen.a
+${PLIST.MSP430}lib/libLLVMMSP430Desc.a
+${PLIST.MSP430}lib/libLLVMMSP430Info.a
+${PLIST.Mips}lib/libLLVMMipsAsmParser.a
+${PLIST.Mips}lib/libLLVMMipsAsmPrinter.a
+${PLIST.Mips}lib/libLLVMMipsCodeGen.a
+${PLIST.Mips}lib/libLLVMMipsDesc.a
+${PLIST.Mips}lib/libLLVMMipsDisassembler.a
+${PLIST.Mips}lib/libLLVMMipsInfo.a
+${PLIST.NVPTX}lib/libLLVMNVPTXAsmPrinter.a
+${PLIST.NVPTX}lib/libLLVMNVPTXCodeGen.a
+${PLIST.NVPTX}lib/libLLVMNVPTXDesc.a
+${PLIST.NVPTX}lib/libLLVMNVPTXInfo.a
+lib/libLLVMObjCARCOpts.a
+lib/libLLVMObject.a
+lib/libLLVMObjectYAML.a
+lib/libLLVMOption.a
+lib/libLLVMOrcJIT.a
+lib/libLLVMPasses.a
+${PLIST.PowerPC}lib/libLLVMPowerPCAsmParser.a
+${PLIST.PowerPC}lib/libLLVMPowerPCAsmPrinter.a
+${PLIST.PowerPC}lib/libLLVMPowerPCCodeGen.a
+${PLIST.PowerPC}lib/libLLVMPowerPCDesc.a
+${PLIST.PowerPC}lib/libLLVMPowerPCDisassembler.a
+${PLIST.PowerPC}lib/libLLVMPowerPCInfo.a
+lib/libLLVMProfileData.a
+lib/libLLVMRuntimeDyld.a
+lib/libLLVMScalarOpts.a
+lib/libLLVMSelectionDAG.a
+${PLIST.Sparc}lib/libLLVMSparcAsmParser.a
+${PLIST.Sparc}lib/libLLVMSparcAsmPrinter.a
+${PLIST.Sparc}lib/libLLVMSparcCodeGen.a
+${PLIST.Sparc}lib/libLLVMSparcDesc.a
+${PLIST.Sparc}lib/libLLVMSparcDisassembler.a
+${PLIST.Sparc}lib/libLLVMSparcInfo.a
+lib/libLLVMSupport.a
+lib/libLLVMSymbolize.a
+${PLIST.SystemZ}lib/libLLVMSystemZAsmParser.a
+${PLIST.SystemZ}lib/libLLVMSystemZAsmPrinter.a
+${PLIST.SystemZ}lib/libLLVMSystemZCodeGen.a
+${PLIST.SystemZ}lib/libLLVMSystemZDesc.a
+${PLIST.SystemZ}lib/libLLVMSystemZDisassembler.a
+${PLIST.SystemZ}lib/libLLVMSystemZInfo.a
+lib/libLLVMTableGen.a
+lib/libLLVMTarget.a
+lib/libLLVMTransformUtils.a
+lib/libLLVMVectorize.a
+${PLIST.X86}lib/libLLVMX86AsmParser.a
+${PLIST.X86}lib/libLLVMX86AsmPrinter.a
+${PLIST.X86}lib/libLLVMX86CodeGen.a
+${PLIST.X86}lib/libLLVMX86Desc.a
+${PLIST.X86}lib/libLLVMX86Disassembler.a
+${PLIST.X86}lib/libLLVMX86Info.a
+${PLIST.X86}lib/libLLVMX86Utils.a
+${PLIST.XCore}lib/libLLVMXCoreAsmPrinter.a
+${PLIST.XCore}lib/libLLVMXCoreCodeGen.a
+${PLIST.XCore}lib/libLLVMXCoreDesc.a
+${PLIST.XCore}lib/libLLVMXCoreDisassembler.a
+${PLIST.XCore}lib/libLLVMXCoreInfo.a
+lib/libLLVMXRay.a
+lib/libLLVMipo.a
+lib/libLTO.${SOEXT}
+lib/libLTO.${SOEXT}.5
+lib/libLTO.${SOEXT}.5.0.0svn
diff --git a/llvm-all-in-one/buildlink3.mk b/llvm-all-in-one/buildlink3.mk
new file mode 100644
index 0000000000..e9e7a94b3e
--- /dev/null
+++ b/llvm-all-in-one/buildlink3.mk
@@ -0,0 +1,22 @@
+# $NetBSD$
+
+BUILDLINK_TREE+=	llvm
+
+.if !defined(LLVM_BUILDLINK3_MK)
+LLVM_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.llvm+=	llvm>=5.0.0
+BUILDLINK_PKGSRCDIR.llvm?=	../../wip/llvm-netbsd
+
+LLVM_CONFIG_PATH?=		${BUILDLINK_PREFIX.llvm}/bin/llvm-config
+
+pkgbase := llvm
+.include "../../mk/pkg-build-options.mk"
+.  if !empty(PKG_BUILD_OPTIONS.llvm:Mterminfo)
+.include "../../mk/terminfo.buildlink3.mk"
+.  endif
+
+.include "../../devel/zlib/buildlink3.mk"
+.endif	# LLVM_BUILDLINK3_MK
+
+BUILDLINK_TREE+=	-llvm
diff --git a/llvm-all-in-one/distinfo b/llvm-all-in-one/distinfo
new file mode 100644
index 0000000000..b743693d4e
--- /dev/null
+++ b/llvm-all-in-one/distinfo
@@ -0,0 +1,17 @@
+$NetBSD: distinfo,v 1.35 2015/09/11 01:21:57 tnn Exp $
+
+SHA1 (cfe-3.6.2.src.tar.xz) = 7ba809c9c17819a16b668640a642ed134d7052f0
+RMD160 (cfe-3.6.2.src.tar.xz) = 10d913b4d5317f8c2520e5fc6117df30937317a8
+Size (cfe-3.6.2.src.tar.xz) = 8617576 bytes
+SHA1 (compiler-rt-3.6.2.src.tar.xz) = c6c52d2923a60f1a2ca2f22fea1770fd2e25728d
+RMD160 (compiler-rt-3.6.2.src.tar.xz) = 9b68a32d49d4bef4603d550934192f39fea42895
+Size (compiler-rt-3.6.2.src.tar.xz) = 1128080 bytes
+SHA1 (libcxx-3.6.2.src.tar.xz) = 6c5aee9f05ecf17d1e3ecb1add34a33a5a904469
+RMD160 (libcxx-3.6.2.src.tar.xz) = 42b8832d01d4e6b553babc93cb5dbd4ce2bb1931
+Size (libcxx-3.6.2.src.tar.xz) = 944020 bytes
+SHA1 (llvm-3.6.2.src.tar.xz) = 7a00257eb2bc9431e4c77c3a36b033072c54bc7e
+RMD160 (llvm-3.6.2.src.tar.xz) = 521cbc5fe2925ea3c6e90c7a31f752a04045c972
+Size (llvm-3.6.2.src.tar.xz) = 12802380 bytes
+SHA1 (patch-lib_Transforms_Instrumentation_AddressSanitizer.cpp) = 67eee29c4d8525b603e6b7c0a52278bdf3353687
+SHA1 (patch-lib_Transforms_Instrumentation_InstrProfiling.cpp) = 871b474f415d9dc468cc07477101f88d7a20868b
+SHA1 (patch-lib_Transforms_Instrumentation_MemorySanitizer.cpp) = 64fdbb55c77d5f5f73152d2f8daa28adfc428e40
diff --git a/llvm-all-in-one/options.mk b/llvm-all-in-one/options.mk
new file mode 100644
index 0000000000..f8b4bdf022
--- /dev/null
+++ b/llvm-all-in-one/options.mk
@@ -0,0 +1,55 @@
+# $NetBSD: options.mk,v 1.3 2017/05/09 12:23:42 jperkin Exp $
+
+PKG_OPTIONS_VAR=	PKG_OPTIONS.llvm
+
+LLVM_TARGETS=	AArch64 AMDGPU ARM BPF Hexagon MSP430 Mips NVPTX PowerPC Sparc SystemZ X86 XCore
+
+.for tgt in ${LLVM_TARGETS}
+PLIST_VARS+=			${tgt}
+PKG_SUPPORTED_OPTIONS+=		llvm-target-${tgt:tl}
+.endfor
+PKG_SUPPORTED_OPTIONS+=		terminfo
+
+# Terminfo is used for colour output, only enable it by default if terminfo
+# is builtin to avoid unnecessary dependencies which could cause bootstrap
+# issues.
+CHECK_BUILTIN.terminfo:=	yes
+.include "../../mk/terminfo.builtin.mk"
+CHECK_BUILTIN.terminfo:=	no
+.if !empty(USE_BUILTIN.terminfo:M[yY][eE][sS])
+PKG_SUGGESTED_OPTIONS+=		terminfo
+.endif
+
+# Probably safe to assume that only x86 users are interested in
+# cross-compilation for now. This saves some build time for everyone else.
+.if !empty(MACHINE_ARCH:Msparc*)
+PKG_SUGGESTED_OPTIONS+=		llvm-target-sparc
+.elif !empty(MACHINE_ARCH:Mpowerpc*)
+PKG_SUGGESTED_OPTIONS+=		llvm-target-powerpc
+.elif !empty(MACHINE_ARCH:Mearm*)
+PKG_SUGGESTED_OPTIONS+=		llvm-target-arm
+.elif !empty(MACHINE_ARCH:M*mips*)
+PKG_SUGGESTED_OPTIONS+=		llvm-target-mips
+.else
+# X86 and everyone else get all targets by default.
+.  for tgt in ${LLVM_TARGETS}
+PKG_SUGGESTED_OPTIONS+=		llvm-target-${tgt:tl}
+.  endfor
+.endif
+
+.include "../../mk/bsd.options.mk"
+
+.for tgt in ${LLVM_TARGETS}
+.  if !empty(PKG_OPTIONS:Mllvm-target-${tgt:tl})
+PLIST.${tgt}=		yes
+LLVM_TARGETS_TO_BUILD+=	${tgt}
+.  endif
+.endfor
+
+.if !empty(PKG_OPTIONS:Mterminfo)
+.include "../../mk/terminfo.buildlink3.mk"
+.else
+CMAKE_ARGS+=	-DLLVM_ENABLE_TERMINFO=OFF
+.endif
+
+CMAKE_ARGS+=	-DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS_TO_BUILD:ts;}"
diff --git a/llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_AddressSanitizer.cpp b/llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_AddressSanitizer.cpp
new file mode 100644
index 0000000000..a28fed92ae
--- /dev/null
+++ b/llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_AddressSanitizer.cpp
@@ -0,0 +1,29 @@
+$NetBSD$
+
+--- lib/Transforms/Instrumentation/AddressSanitizer.cpp.orig	2017-05-29 09:26:46.000000000 +0000
++++ lib/Transforms/Instrumentation/AddressSanitizer.cpp
+@@ -80,6 +80,7 @@ static const uint64_t kMIPS64_ShadowOffs
+ static const uint64_t kAArch64_ShadowOffset64 = 1ULL << 36;
+ static const uint64_t kFreeBSD_ShadowOffset32 = 1ULL << 30;
+ static const uint64_t kFreeBSD_ShadowOffset64 = 1ULL << 46;
++static const uint64_t kNetBSD_ShadowOffset64 = 1ULL << 46;
+ static const uint64_t kPS4CPU_ShadowOffset64 = 1ULL << 40;
+ static const uint64_t kWindowsShadowOffset32 = 3ULL << 28;
+ // The shadow memory space is dynamically allocated.
+@@ -394,6 +395,7 @@ static ShadowMapping getShadowMapping(Tr
+   bool IsAndroid = TargetTriple.isAndroid();
+   bool IsIOS = TargetTriple.isiOS() || TargetTriple.isWatchOS();
+   bool IsFreeBSD = TargetTriple.isOSFreeBSD();
++  bool IsNetBSD = TargetTriple.isOSNetBSD();
+   bool IsPS4CPU = TargetTriple.isPS4CPU();
+   bool IsLinux = TargetTriple.isOSLinux();
+   bool IsPPC64 = TargetTriple.getArch() == llvm::Triple::ppc64 ||
+@@ -438,6 +440,8 @@ static ShadowMapping getShadowMapping(Tr
+       Mapping.Offset = kSystemZ_ShadowOffset64;
+     else if (IsFreeBSD)
+       Mapping.Offset = kFreeBSD_ShadowOffset64;
++    else if (IsNetBSD)
++      Mapping.Offset = kNetBSD_ShadowOffset64;
+     else if (IsPS4CPU)
+       Mapping.Offset = kPS4CPU_ShadowOffset64;
+     else if (IsLinux && IsX86_64) {
diff --git a/llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_InstrProfiling.cpp b/llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_InstrProfiling.cpp
new file mode 100644
index 0000000000..e8229cc198
--- /dev/null
+++ b/llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_InstrProfiling.cpp
@@ -0,0 +1,12 @@
+$NetBSD$
+
+--- lib/Transforms/Instrumentation/InstrProfiling.cpp.orig	2017-06-17 16:34:37.000000000 +0000
++++ lib/Transforms/Instrumentation/InstrProfiling.cpp
+@@ -394,6 +394,7 @@ static bool needsRuntimeRegistrationOfSe
+   // Use linker script magic to get data/cnts/name start/end.
+   if (Triple(M.getTargetTriple()).isOSLinux() ||
+       Triple(M.getTargetTriple()).isOSFreeBSD() ||
++      Triple(M.getTargetTriple()).isOSNetBSD() ||
+       Triple(M.getTargetTriple()).isPS4CPU())
+     return false;
+ 
diff --git a/llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_MemorySanitizer.cpp b/llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_MemorySanitizer.cpp
new file mode 100644
index 0000000000..4ef2227185
--- /dev/null
+++ b/llvm-all-in-one/patches/patch-lib_Transforms_Instrumentation_MemorySanitizer.cpp
@@ -0,0 +1,47 @@
+$NetBSD$
+
+--- lib/Transforms/Instrumentation/MemorySanitizer.cpp.orig	2017-06-12 00:24:36.000000000 +0000
++++ lib/Transforms/Instrumentation/MemorySanitizer.cpp
+@@ -280,6 +280,14 @@ static const MemoryMapParams FreeBSD_X86
+   0x380000000000,  // OriginBase
+ };
+ 
++// x86_64 NetBSD
++static const MemoryMapParams NetBSD_X86_64_MemoryMapParams = {
++  0xc00000000000,  // AndMask
++  0x200000000000,  // XorMask
++  0x100000000000,  // ShadowBase
++  0x380000000000,  // OriginBase
++};
++
+ static const PlatformMemoryMapParams Linux_X86_MemoryMapParams = {
+   &Linux_I386_MemoryMapParams,
+   &Linux_X86_64_MemoryMapParams,
+@@ -305,6 +313,11 @@ static const PlatformMemoryMapParams Fre
+   &FreeBSD_X86_64_MemoryMapParams,
+ };
+ 
++static const PlatformMemoryMapParams NetBSD_X86_MemoryMapParams = {
++  nullptr,
++  &NetBSD_X86_64_MemoryMapParams,
++};
++
+ /// \brief An instrumentation pass implementing detection of uninitialized
+ /// reads.
+ ///
+@@ -515,6 +528,15 @@ bool MemorySanitizer::doInitialization(M
+           report_fatal_error("unsupported architecture");
+       }
+       break;
++    case Triple::NetBSD:
++      switch (TargetTriple.getArch()) {
++        case Triple::x86_64:
++          MapParams = NetBSD_X86_MemoryMapParams.bits64;
++          break;
++        default:
++          report_fatal_error("unsupported architecture");
++      }
++      break;
+     case Triple::Linux:
+       switch (TargetTriple.getArch()) {
+         case Triple::x86_64:


Home | Main Index | Thread Index | Old Index