pkgsrc-WIP-changes archive

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

libLLVM-dfbsd: Import libLLVM 5.0.1 as wip/libLLVM-dfbsd



Module Name:	pkgsrc-wip
Committed By:	David Shao <davshao%gmail.com@localhost>
Pushed By:	dshao
Date:		Mon Apr 30 20:46:43 2018 -0700
Changeset:	22e8866de5e2d40bb7eaa539c6f206d278200508

Modified Files:
	Makefile
Added Files:
	libLLVM-dfbsd/DESCR
	libLLVM-dfbsd/Makefile
	libLLVM-dfbsd/PLIST
	libLLVM-dfbsd/TODO
	libLLVM-dfbsd/buildlink3.mk
	libLLVM-dfbsd/distinfo
	libLLVM-dfbsd/options.mk
	libLLVM-dfbsd/patches/patch-CMakeLists.txt
	libLLVM-dfbsd/patches/patch-cmake_modules_AddLLVM.cmake
	libLLVM-dfbsd/patches/patch-cmake_modules_CMakeLists.txt
	libLLVM-dfbsd/patches/patch-cmake_modules_HandleLLVMOptions.cmake
	libLLVM-dfbsd/patches/patch-cmake_modules_TableGen.cmake
	libLLVM-dfbsd/patches/patch-lib_Support_Unix_Path.inc
	libLLVM-dfbsd/patches/patch-tools_llvm-config_llvm-config.cpp
	libLLVM-dfbsd/patches/patch-tools_llvm-shlib_CMakeLists.txt

Log Message:
libLLVM-dfbsd: Import libLLVM 5.0.1 as wip/libLLVM-dfbsd

Essentially the same as the rolled back attempted update
from December 2017, except commented out line now enables
restricting targets.

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

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

diffstat:
 Makefile                                           |    1 +
 libLLVM-dfbsd/DESCR                                |    7 +
 libLLVM-dfbsd/Makefile                             |  149 +++
 libLLVM-dfbsd/PLIST                                | 1161 ++++++++++++++++++++
 libLLVM-dfbsd/TODO                                 |    1 +
 libLLVM-dfbsd/buildlink3.mk                        |   18 +
 libLLVM-dfbsd/distinfo                             |   14 +
 libLLVM-dfbsd/options.mk                           |   56 +
 libLLVM-dfbsd/patches/patch-CMakeLists.txt         |   24 +
 .../patches/patch-cmake_modules_AddLLVM.cmake      |   49 +
 .../patches/patch-cmake_modules_CMakeLists.txt     |   12 +
 .../patch-cmake_modules_HandleLLVMOptions.cmake    |   14 +
 .../patches/patch-cmake_modules_TableGen.cmake     |   15 +
 .../patches/patch-lib_Support_Unix_Path.inc        |   39 +
 .../patch-tools_llvm-config_llvm-config.cpp        |   57 +
 .../patches/patch-tools_llvm-shlib_CMakeLists.txt  |   27 +
 16 files changed, 1644 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index b1b9454065..add3924b9c 100644
--- a/Makefile
+++ b/Makefile
@@ -1652,6 +1652,7 @@ SUBDIR+=	lhapdf
 SUBDIR+=	lhs2tex
 SUBDIR+=	libGenome
 SUBDIR+=	libLLVM38
+SUBDIR+=	libLLVM-dfbsd
 SUBDIR+=	libalkimia
 SUBDIR+=	libanimal
 SUBDIR+=	libavc1394
diff --git a/libLLVM-dfbsd/DESCR b/libLLVM-dfbsd/DESCR
new file mode 100644
index 0000000000..c78531718e
--- /dev/null
+++ b/libLLVM-dfbsd/DESCR
@@ -0,0 +1,7 @@
+The LLVM Project is a collection of modular and reusable compiler and toolchain
+technologies. Despite its name, LLVM has little to do with traditional virtual
+machines, though it does provide helpful libraries that can be used to build
+them.
+
+This package contains the LLVM core shared libraries intended to be usable by
+packages built on an otherwise GCC-built system.
diff --git a/libLLVM-dfbsd/Makefile b/libLLVM-dfbsd/Makefile
new file mode 100644
index 0000000000..5198706554
--- /dev/null
+++ b/libLLVM-dfbsd/Makefile
@@ -0,0 +1,149 @@
+# $NetBSD: Makefile,v 1.26 2017/12/01 19:22:13 adam Exp $
+
+DISTNAME=	llvm-5.0.1.src
+PKGNAME=	${DISTNAME:S/llvm/libLLVM/:S/.src//}
+CATEGORIES=	lang devel
+MASTER_SITES=	http://llvm.org/releases/${PKGVERSION_NOREV}/
+EXTRACT_SUFX=	.tar.xz
+
+MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=	http://llvm.org/
+COMMENT=	Low Level Virtual Machine shared library
+LICENSE=	modified-bsd
+
+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=gcc
+# CMAKE_ARGS+=	-DCMAKE_CXX_COMPILER=g++
+CMAKE_ARGS+=	-DCMAKE_CXX_LINK_FLAGS=${LDFLAGS:Q}
+CMAKE_ARGS+=	-DLLVM_BUILD_LLVM_DYLIB=ON
+CMAKE_ARGS+=	-DLLVM_LINK_LLVM_DYLIB=ON
+CMAKE_ARGS+=	-DLLVM_INCLUDE_TESTS=OFF
+CMAKE_ARGS+=	-DCMAKE_EXE_LINKER_FLAGS=${COMPILER_RPATH_FLAG}${PREFIX}/lib/libLLVM
+
+CMAKE_ARGS.Darwin+=	-DCMAKE_LIBTOOL=/usr/bin/libtool
+
+# From FreeBSD ports devel/llvm40
+CMAKE_ARGS+=	-DLLVM_ENABLE_RTTI=ON
+
+.for tool in 	bugpoint bugpoint_passes dsymutil llc lli llvm_ar	\
+	llvm_as llvm_bcanalyzer llvm_c_test llvm_cov llvm_cxxdump	\
+	llvm_diff llvm_dis llvm_dwarfdump llvm_dwp llvm_extract llvm_go	\
+	llvm_jitlistener llvm_link llvm_lto llvm_mc llvm_mcmarkup	\
+	llvm_nm llvm_objdump llvm_pdbdump llvm_profdata llvm_readobj	\
+	llvm_rtdyld llvm_size llvm_split llvm_stress llvm_symbolizer	\
+	lto obj2yaml opt sancov verify_uselistorder yaml2obj sanstats
+CMAKE_ARGS+=	-DLLVM_TOOL_${tool:tu}_BUILD=OFF
+.endfor
+
+SUBST_CLASSES+=		fix-cnf
+SUBST_STAGE.fix-cnf=	pre-configure
+SUBST_MESSAGE.fix-cnf=	Fixing llvm-config paths
+SUBST_FILES.fix-cnf=	tools/llvm-config/llvm-config.cpp
+SUBST_VARS.fix-cnf=	PREFIX LLVM_MAJOR_MINOR COMPILER_RPATH_FLAG
+
+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/GenLibDeps.pl
+REPLACE_PERL+=		utils/UpdateCMakeLists.pl
+REPLACE_PERL+=		utils/codegen-diff
+REPLACE_PERL+=		utils/findsym.pl
+REPLACE_PERL+=		utils/llvm-native-gxx
+REPLACE_PERL+=		utils/test_debuginfo.pl
+
+REPLACE_PYTHON+=	examples/Kaleidoscope/MCJIT/cached/genk-timing.py
+REPLACE_PYTHON+=	examples/Kaleidoscope/MCJIT/cached/split-lib.py
+REPLACE_PYTHON+=	examples/Kaleidoscope/MCJIT/complete/genk-timing.py
+REPLACE_PYTHON+=	examples/Kaleidoscope/MCJIT/complete/split-lib.py
+REPLACE_PYTHON+=	examples/Kaleidoscope/MCJIT/lazy/genk-timing.py
+REPLACE_PYTHON+=	test/BugPoint/compile-custom.ll.py
+REPLACE_PYTHON+=	test/tools/llvm-readobj/Inputs/relocs.py
+REPLACE_PYTHON+=	utils/Misc/zkill
+REPLACE_PYTHON+=	utils/Target/ARM/analyze-match-table.py
+REPLACE_PYTHON+=	utils/bisect
+REPLACE_PYTHON+=	utils/clang-parse-diagnostics-file
+REPLACE_PYTHON+=	utils/create_ladder_graph.py
+REPLACE_PYTHON+=	utils/git/find-rev
+REPLACE_PYTHON+=	utils/lint/common_lint.py
+REPLACE_PYTHON+=	utils/lint/cpp_lint.py
+REPLACE_PYTHON+=	utils/lint/generic_lint.py
+REPLACE_PYTHON+=	utils/lit/lit.py
+REPLACE_PYTHON+=	utils/lit/lit/ProgressBar.py
+REPLACE_PYTHON+=	utils/lit/lit/main.py
+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
+REPLACE_PYTHON+=	utils/release/findRegressions-nightly.py
+REPLACE_PYTHON+=	utils/release/findRegressions-simple.py
+REPLACE_PYTHON+=	utils/schedcover.py
+REPLACE_PYTHON+=	utils/shuffle_fuzz.py
+REPLACE_PYTHON+=	utils/sort_includes.py
+REPLACE_PYTHON+=	utils/testgen/mc-bundling-x86-gen.py
+REPLACE_PYTHON+=	utils/update_llc_test_checks.py
+REPLACE_PYTHON+=	utils/wciia.py
+
+TEST_TARGET=		check
+TEST_ENV+=		LD_LIBRARY_PATH=${WRKDIR}/build/lib
+
+.include "../../mk/bsd.prefs.mk"
+
+# 3.8.0 -> 3.8
+LLVM_MAJOR_MINOR=	${PKGVERSION_NOREV:C/^([0-9]+\.[0-9]+)\..*$/\1/}
+PLIST_SUBST+=		LLVM_MAJOR_MINOR=${LLVM_MAJOR_MINOR}
+
+PLIST_VARS+=	notdylib
+.if ${SHLIB_TYPE} == "dylib"
+SOEXT=		dylib
+LLVM_LIBNAME=	libLLVM.${SOEXT}
+.else
+SOEXT=		so
+LLVM_LIBNAME=	libLLVM-${LLVM_MAJOR_MINOR}.${SOEXT}
+PLIST.notdylib=	yes
+.endif
+PLIST_SUBST+=	SOEXT=${SOEXT}
+PLIST_SUBST+=	LLVM_LIBNAME=${LLVM_LIBNAME}
+
+.include "options.mk"
+
+# needs std::atomic with 64-bit CAS
+.if ${MACHINE_ARCH} == "i386"
+CXXFLAGS+=	-march=i586
+.endif
+
+# 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
+	${RM} ${WRKSRC}/tools/opt-viewer/CMakeLists.txt
+
+post-install:
+	${INSTALL_LIB_DIR} ${DESTDIR}${PREFIX}/lib/libLLVM
+	${INSTALL_LIB} ${WRKDIR}/build/lib/${LLVM_LIBNAME}	\
+		${DESTDIR}${PREFIX}/lib/libLLVM/${LLVM_LIBNAME}
+.if ${OPSYS} == "Darwin"
+	install_name_tool -id	\
+		${PREFIX}/lib/libLLVM/${LLVM_LIBNAME}	\
+		${DESTDIR}${PREFIX}/lib/libLLVM/${LLVM_LIBNAME}
+.else
+	${LN} -sf ${LLVM_LIBNAME}	\
+		${DESTDIR}${PREFIX}/lib/libLLVM/libLLVM.${SOEXT}
+	${LN} -sf ${LLVM_LIBNAME}	\
+		${DESTDIR}${PREFIX}/lib/libLLVM/libLLVM-${PKGVERSION_NOREV}.${SOEXT}
+.endif
+
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../lang/python/application.mk"
+.include "../../lang/python/tool.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/libLLVM-dfbsd/PLIST b/libLLVM-dfbsd/PLIST
new file mode 100644
index 0000000000..858a71bc5a
--- /dev/null
+++ b/libLLVM-dfbsd/PLIST
@@ -0,0 +1,1161 @@
+@comment $NetBSD: PLIST,v 1.10 2017/12/01 19:22:13 adam Exp $
+include/libLLVM/llvm-c/Analysis.h
+include/libLLVM/llvm-c/BitReader.h
+include/libLLVM/llvm-c/BitWriter.h
+include/libLLVM/llvm-c/Core.h
+include/libLLVM/llvm-c/Disassembler.h
+include/libLLVM/llvm-c/ErrorHandling.h
+include/libLLVM/llvm-c/ExecutionEngine.h
+include/libLLVM/llvm-c/IRReader.h
+include/libLLVM/llvm-c/Initialization.h
+include/libLLVM/llvm-c/LinkTimeOptimizer.h
+include/libLLVM/llvm-c/Linker.h
+include/libLLVM/llvm-c/Object.h
+include/libLLVM/llvm-c/OrcBindings.h
+include/libLLVM/llvm-c/Support.h
+include/libLLVM/llvm-c/Target.h
+include/libLLVM/llvm-c/TargetMachine.h
+include/libLLVM/llvm-c/Transforms/IPO.h
+include/libLLVM/llvm-c/Transforms/PassManagerBuilder.h
+include/libLLVM/llvm-c/Transforms/Scalar.h
+include/libLLVM/llvm-c/Transforms/Vectorize.h
+include/libLLVM/llvm-c/Types.h
+include/libLLVM/llvm-c/lto.h
+include/libLLVM/llvm/ADT/APFloat.h
+include/libLLVM/llvm/ADT/APInt.h
+include/libLLVM/llvm/ADT/APSInt.h
+include/libLLVM/llvm/ADT/AllocatorList.h
+include/libLLVM/llvm/ADT/ArrayRef.h
+include/libLLVM/llvm/ADT/BitVector.h
+include/libLLVM/llvm/ADT/BitmaskEnum.h
+include/libLLVM/llvm/ADT/BreadthFirstIterator.h
+include/libLLVM/llvm/ADT/CachedHashString.h
+include/libLLVM/llvm/ADT/DAGDeltaAlgorithm.h
+include/libLLVM/llvm/ADT/DeltaAlgorithm.h
+include/libLLVM/llvm/ADT/DenseMap.h
+include/libLLVM/llvm/ADT/DenseMapInfo.h
+include/libLLVM/llvm/ADT/DenseSet.h
+include/libLLVM/llvm/ADT/DepthFirstIterator.h
+include/libLLVM/llvm/ADT/EpochTracker.h
+include/libLLVM/llvm/ADT/EquivalenceClasses.h
+include/libLLVM/llvm/ADT/FoldingSet.h
+include/libLLVM/llvm/ADT/GraphTraits.h
+include/libLLVM/llvm/ADT/Hashing.h
+include/libLLVM/llvm/ADT/ImmutableList.h
+include/libLLVM/llvm/ADT/ImmutableMap.h
+include/libLLVM/llvm/ADT/ImmutableSet.h
+include/libLLVM/llvm/ADT/IndexedMap.h
+include/libLLVM/llvm/ADT/IntEqClasses.h
+include/libLLVM/llvm/ADT/IntervalMap.h
+include/libLLVM/llvm/ADT/IntrusiveRefCntPtr.h
+include/libLLVM/llvm/ADT/MapVector.h
+include/libLLVM/llvm/ADT/None.h
+include/libLLVM/llvm/ADT/Optional.h
+include/libLLVM/llvm/ADT/PackedVector.h
+include/libLLVM/llvm/ADT/PointerEmbeddedInt.h
+include/libLLVM/llvm/ADT/PointerIntPair.h
+include/libLLVM/llvm/ADT/PointerSumType.h
+include/libLLVM/llvm/ADT/PointerUnion.h
+include/libLLVM/llvm/ADT/PostOrderIterator.h
+include/libLLVM/llvm/ADT/PriorityQueue.h
+include/libLLVM/llvm/ADT/PriorityWorklist.h
+include/libLLVM/llvm/ADT/SCCIterator.h
+include/libLLVM/llvm/ADT/STLExtras.h
+include/libLLVM/llvm/ADT/ScopeExit.h
+include/libLLVM/llvm/ADT/ScopedHashTable.h
+include/libLLVM/llvm/ADT/Sequence.h
+include/libLLVM/llvm/ADT/SetOperations.h
+include/libLLVM/llvm/ADT/SetVector.h
+include/libLLVM/llvm/ADT/SmallBitVector.h
+include/libLLVM/llvm/ADT/SmallPtrSet.h
+include/libLLVM/llvm/ADT/SmallSet.h
+include/libLLVM/llvm/ADT/SmallString.h
+include/libLLVM/llvm/ADT/SmallVector.h
+include/libLLVM/llvm/ADT/SparseBitVector.h
+include/libLLVM/llvm/ADT/SparseMultiSet.h
+include/libLLVM/llvm/ADT/SparseSet.h
+include/libLLVM/llvm/ADT/Statistic.h
+include/libLLVM/llvm/ADT/StringExtras.h
+include/libLLVM/llvm/ADT/StringMap.h
+include/libLLVM/llvm/ADT/StringRef.h
+include/libLLVM/llvm/ADT/StringSet.h
+include/libLLVM/llvm/ADT/StringSwitch.h
+include/libLLVM/llvm/ADT/TinyPtrVector.h
+include/libLLVM/llvm/ADT/Triple.h
+include/libLLVM/llvm/ADT/Twine.h
+include/libLLVM/llvm/ADT/UniqueVector.h
+include/libLLVM/llvm/ADT/VariadicFunction.h
+include/libLLVM/llvm/ADT/edit_distance.h
+include/libLLVM/llvm/ADT/ilist.h
+include/libLLVM/llvm/ADT/ilist_base.h
+include/libLLVM/llvm/ADT/ilist_iterator.h
+include/libLLVM/llvm/ADT/ilist_node.h
+include/libLLVM/llvm/ADT/ilist_node_base.h
+include/libLLVM/llvm/ADT/ilist_node_options.h
+include/libLLVM/llvm/ADT/iterator.h
+include/libLLVM/llvm/ADT/iterator_range.h
+include/libLLVM/llvm/ADT/simple_ilist.h
+include/libLLVM/llvm/Analysis/AliasAnalysis.h
+include/libLLVM/llvm/Analysis/AliasAnalysisEvaluator.h
+include/libLLVM/llvm/Analysis/AliasSetTracker.h
+include/libLLVM/llvm/Analysis/AssumptionCache.h
+include/libLLVM/llvm/Analysis/BasicAliasAnalysis.h
+include/libLLVM/llvm/Analysis/BlockFrequencyInfo.h
+include/libLLVM/llvm/Analysis/BlockFrequencyInfoImpl.h
+include/libLLVM/llvm/Analysis/BranchProbabilityInfo.h
+include/libLLVM/llvm/Analysis/CFG.h
+include/libLLVM/llvm/Analysis/CFGPrinter.h
+include/libLLVM/llvm/Analysis/CFLAliasAnalysisUtils.h
+include/libLLVM/llvm/Analysis/CFLAndersAliasAnalysis.h
+include/libLLVM/llvm/Analysis/CFLSteensAliasAnalysis.h
+include/libLLVM/llvm/Analysis/CGSCCPassManager.h
+include/libLLVM/llvm/Analysis/CallGraph.h
+include/libLLVM/llvm/Analysis/CallGraphSCCPass.h
+include/libLLVM/llvm/Analysis/CallPrinter.h
+include/libLLVM/llvm/Analysis/CaptureTracking.h
+include/libLLVM/llvm/Analysis/CodeMetrics.h
+include/libLLVM/llvm/Analysis/ConstantFolding.h
+include/libLLVM/llvm/Analysis/DOTGraphTraitsPass.h
+include/libLLVM/llvm/Analysis/DemandedBits.h
+include/libLLVM/llvm/Analysis/DependenceAnalysis.h
+include/libLLVM/llvm/Analysis/DivergenceAnalysis.h
+include/libLLVM/llvm/Analysis/DomPrinter.h
+include/libLLVM/llvm/Analysis/DominanceFrontier.h
+include/libLLVM/llvm/Analysis/DominanceFrontierImpl.h
+include/libLLVM/llvm/Analysis/EHPersonalities.h
+include/libLLVM/llvm/Analysis/GlobalsModRef.h
+include/libLLVM/llvm/Analysis/IVUsers.h
+include/libLLVM/llvm/Analysis/IndirectCallPromotionAnalysis.h
+include/libLLVM/llvm/Analysis/IndirectCallSiteVisitor.h
+include/libLLVM/llvm/Analysis/InlineCost.h
+include/libLLVM/llvm/Analysis/InstructionSimplify.h
+include/libLLVM/llvm/Analysis/Interval.h
+include/libLLVM/llvm/Analysis/IntervalIterator.h
+include/libLLVM/llvm/Analysis/IntervalPartition.h
+include/libLLVM/llvm/Analysis/IteratedDominanceFrontier.h
+include/libLLVM/llvm/Analysis/LazyBlockFrequencyInfo.h
+include/libLLVM/llvm/Analysis/LazyBranchProbabilityInfo.h
+include/libLLVM/llvm/Analysis/LazyCallGraph.h
+include/libLLVM/llvm/Analysis/LazyValueInfo.h
+include/libLLVM/llvm/Analysis/Lint.h
+include/libLLVM/llvm/Analysis/Loads.h
+include/libLLVM/llvm/Analysis/LoopAccessAnalysis.h
+include/libLLVM/llvm/Analysis/LoopAnalysisManager.h
+include/libLLVM/llvm/Analysis/LoopInfo.h
+include/libLLVM/llvm/Analysis/LoopInfoImpl.h
+include/libLLVM/llvm/Analysis/LoopIterator.h
+include/libLLVM/llvm/Analysis/LoopPass.h
+include/libLLVM/llvm/Analysis/LoopUnrollAnalyzer.h
+include/libLLVM/llvm/Analysis/MemoryBuiltins.h
+include/libLLVM/llvm/Analysis/MemoryDependenceAnalysis.h
+include/libLLVM/llvm/Analysis/MemoryLocation.h
+include/libLLVM/llvm/Analysis/MemorySSA.h
+include/libLLVM/llvm/Analysis/MemorySSAUpdater.h
+include/libLLVM/llvm/Analysis/ModuleSummaryAnalysis.h
+include/libLLVM/llvm/Analysis/ObjCARCAliasAnalysis.h
+include/libLLVM/llvm/Analysis/ObjCARCAnalysisUtils.h
+include/libLLVM/llvm/Analysis/ObjCARCInstKind.h
+include/libLLVM/llvm/Analysis/ObjectUtils.h
+include/libLLVM/llvm/Analysis/OptimizationDiagnosticInfo.h
+include/libLLVM/llvm/Analysis/OrderedBasicBlock.h
+include/libLLVM/llvm/Analysis/PHITransAddr.h
+include/libLLVM/llvm/Analysis/Passes.h
+include/libLLVM/llvm/Analysis/PostDominators.h
+include/libLLVM/llvm/Analysis/ProfileSummaryInfo.h
+include/libLLVM/llvm/Analysis/PtrUseVisitor.h
+include/libLLVM/llvm/Analysis/RegionInfo.h
+include/libLLVM/llvm/Analysis/RegionInfoImpl.h
+include/libLLVM/llvm/Analysis/RegionIterator.h
+include/libLLVM/llvm/Analysis/RegionPass.h
+include/libLLVM/llvm/Analysis/RegionPrinter.h
+include/libLLVM/llvm/Analysis/ScalarEvolution.h
+include/libLLVM/llvm/Analysis/ScalarEvolutionAliasAnalysis.h
+include/libLLVM/llvm/Analysis/ScalarEvolutionExpander.h
+include/libLLVM/llvm/Analysis/ScalarEvolutionExpressions.h
+include/libLLVM/llvm/Analysis/ScalarEvolutionNormalization.h
+include/libLLVM/llvm/Analysis/ScopedNoAliasAA.h
+include/libLLVM/llvm/Analysis/SparsePropagation.h
+include/libLLVM/llvm/Analysis/TargetFolder.h
+include/libLLVM/llvm/Analysis/TargetLibraryInfo.def
+include/libLLVM/llvm/Analysis/TargetLibraryInfo.h
+include/libLLVM/llvm/Analysis/TargetTransformInfo.h
+include/libLLVM/llvm/Analysis/TargetTransformInfoImpl.h
+include/libLLVM/llvm/Analysis/Trace.h
+include/libLLVM/llvm/Analysis/TypeBasedAliasAnalysis.h
+include/libLLVM/llvm/Analysis/TypeMetadataUtils.h
+include/libLLVM/llvm/Analysis/ValueTracking.h
+include/libLLVM/llvm/Analysis/VectorUtils.h
+include/libLLVM/llvm/AsmParser/Parser.h
+include/libLLVM/llvm/AsmParser/SlotMapping.h
+include/libLLVM/llvm/BinaryFormat/COFF.h
+include/libLLVM/llvm/BinaryFormat/Dwarf.def
+include/libLLVM/llvm/BinaryFormat/Dwarf.h
+include/libLLVM/llvm/BinaryFormat/ELF.h
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/AArch64.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/AMDGPU.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/ARM.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/AVR.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/BPF.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/Hexagon.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/Lanai.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/Mips.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/PowerPC.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/PowerPC64.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/RISCV.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/Sparc.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/SystemZ.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/WebAssembly.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/i386.def
+include/libLLVM/llvm/BinaryFormat/ELFRelocs/x86_64.def
+include/libLLVM/llvm/BinaryFormat/MachO.def
+include/libLLVM/llvm/BinaryFormat/MachO.h
+include/libLLVM/llvm/BinaryFormat/Magic.h
+include/libLLVM/llvm/BinaryFormat/Wasm.h
+include/libLLVM/llvm/BinaryFormat/WasmRelocs/WebAssembly.def
+include/libLLVM/llvm/Bitcode/BitCodes.h
+include/libLLVM/llvm/Bitcode/BitcodeReader.h
+include/libLLVM/llvm/Bitcode/BitcodeWriter.h
+include/libLLVM/llvm/Bitcode/BitcodeWriterPass.h
+include/libLLVM/llvm/Bitcode/BitstreamReader.h
+include/libLLVM/llvm/Bitcode/BitstreamWriter.h
+include/libLLVM/llvm/Bitcode/LLVMBitCodes.h
+include/libLLVM/llvm/CodeGen/Analysis.h
+include/libLLVM/llvm/CodeGen/AsmPrinter.h
+include/libLLVM/llvm/CodeGen/AtomicExpandUtils.h
+include/libLLVM/llvm/CodeGen/BasicTTIImpl.h
+include/libLLVM/llvm/CodeGen/CalcSpillWeights.h
+include/libLLVM/llvm/CodeGen/CallingConvLower.h
+include/libLLVM/llvm/CodeGen/CommandFlags.h
+include/libLLVM/llvm/CodeGen/DAGCombine.h
+include/libLLVM/llvm/CodeGen/DFAPacketizer.h
+include/libLLVM/llvm/CodeGen/DIE.h
+include/libLLVM/llvm/CodeGen/DIEValue.def
+include/libLLVM/llvm/CodeGen/DwarfStringPoolEntry.h
+include/libLLVM/llvm/CodeGen/EdgeBundles.h
+include/libLLVM/llvm/CodeGen/ExecutionDepsFix.h
+include/libLLVM/llvm/CodeGen/ExpandReductions.h
+include/libLLVM/llvm/CodeGen/FastISel.h
+include/libLLVM/llvm/CodeGen/FaultMaps.h
+include/libLLVM/llvm/CodeGen/FunctionLoweringInfo.h
+include/libLLVM/llvm/CodeGen/GCMetadata.h
+include/libLLVM/llvm/CodeGen/GCMetadataPrinter.h
+include/libLLVM/llvm/CodeGen/GCStrategy.h
+include/libLLVM/llvm/CodeGen/GCs.h
+include/libLLVM/llvm/CodeGen/GlobalISel/CallLowering.h
+include/libLLVM/llvm/CodeGen/GlobalISel/GISelAccessor.h
+include/libLLVM/llvm/CodeGen/GlobalISel/IRTranslator.h
+include/libLLVM/llvm/CodeGen/GlobalISel/InstructionSelect.h
+include/libLLVM/llvm/CodeGen/GlobalISel/InstructionSelector.h
+include/libLLVM/llvm/CodeGen/GlobalISel/InstructionSelectorImpl.h
+include/libLLVM/llvm/CodeGen/GlobalISel/Legalizer.h
+include/libLLVM/llvm/CodeGen/GlobalISel/LegalizerHelper.h
+include/libLLVM/llvm/CodeGen/GlobalISel/LegalizerInfo.h
+include/libLLVM/llvm/CodeGen/GlobalISel/Localizer.h
+include/libLLVM/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
+include/libLLVM/llvm/CodeGen/GlobalISel/RegBankSelect.h
+include/libLLVM/llvm/CodeGen/GlobalISel/RegisterBank.h
+include/libLLVM/llvm/CodeGen/GlobalISel/RegisterBankInfo.h
+include/libLLVM/llvm/CodeGen/GlobalISel/Types.h
+include/libLLVM/llvm/CodeGen/GlobalISel/Utils.h
+include/libLLVM/llvm/CodeGen/ISDOpcodes.h
+include/libLLVM/llvm/CodeGen/IntrinsicLowering.h
+include/libLLVM/llvm/CodeGen/LatencyPriorityQueue.h
+include/libLLVM/llvm/CodeGen/LazyMachineBlockFrequencyInfo.h
+include/libLLVM/llvm/CodeGen/LexicalScopes.h
+include/libLLVM/llvm/CodeGen/LinkAllAsmWriterComponents.h
+include/libLLVM/llvm/CodeGen/LinkAllCodegenComponents.h
+include/libLLVM/llvm/CodeGen/LiveInterval.h
+include/libLLVM/llvm/CodeGen/LiveIntervalAnalysis.h
+include/libLLVM/llvm/CodeGen/LiveIntervalUnion.h
+include/libLLVM/llvm/CodeGen/LivePhysRegs.h
+include/libLLVM/llvm/CodeGen/LiveRangeEdit.h
+include/libLLVM/llvm/CodeGen/LiveRegMatrix.h
+include/libLLVM/llvm/CodeGen/LiveRegUnits.h
+include/libLLVM/llvm/CodeGen/LiveStackAnalysis.h
+include/libLLVM/llvm/CodeGen/LiveVariables.h
+include/libLLVM/llvm/CodeGen/LowLevelType.h
+include/libLLVM/llvm/CodeGen/MIRParser/MIRParser.h
+include/libLLVM/llvm/CodeGen/MIRPrinter.h
+include/libLLVM/llvm/CodeGen/MIRYamlMapping.h
+include/libLLVM/llvm/CodeGen/MachORelocation.h
+include/libLLVM/llvm/CodeGen/MachineBasicBlock.h
+include/libLLVM/llvm/CodeGen/MachineBlockFrequencyInfo.h
+include/libLLVM/llvm/CodeGen/MachineBranchProbabilityInfo.h
+include/libLLVM/llvm/CodeGen/MachineCombinerPattern.h
+include/libLLVM/llvm/CodeGen/MachineConstantPool.h
+include/libLLVM/llvm/CodeGen/MachineDominanceFrontier.h
+include/libLLVM/llvm/CodeGen/MachineDominators.h
+include/libLLVM/llvm/CodeGen/MachineFrameInfo.h
+include/libLLVM/llvm/CodeGen/MachineFunction.h
+include/libLLVM/llvm/CodeGen/MachineFunctionPass.h
+include/libLLVM/llvm/CodeGen/MachineInstr.h
+include/libLLVM/llvm/CodeGen/MachineInstrBuilder.h
+include/libLLVM/llvm/CodeGen/MachineInstrBundle.h
+include/libLLVM/llvm/CodeGen/MachineInstrBundleIterator.h
+include/libLLVM/llvm/CodeGen/MachineJumpTableInfo.h
+include/libLLVM/llvm/CodeGen/MachineLoopInfo.h
+include/libLLVM/llvm/CodeGen/MachineMemOperand.h
+include/libLLVM/llvm/CodeGen/MachineModuleInfo.h
+include/libLLVM/llvm/CodeGen/MachineModuleInfoImpls.h
+include/libLLVM/llvm/CodeGen/MachineOperand.h
+include/libLLVM/llvm/CodeGen/MachineOptimizationRemarkEmitter.h
+include/libLLVM/llvm/CodeGen/MachinePassRegistry.h
+include/libLLVM/llvm/CodeGen/MachinePostDominators.h
+include/libLLVM/llvm/CodeGen/MachineRegionInfo.h
+include/libLLVM/llvm/CodeGen/MachineRegisterInfo.h
+include/libLLVM/llvm/CodeGen/MachineSSAUpdater.h
+include/libLLVM/llvm/CodeGen/MachineScheduler.h
+include/libLLVM/llvm/CodeGen/MachineTraceMetrics.h
+include/libLLVM/llvm/CodeGen/MachineValueType.h
+include/libLLVM/llvm/CodeGen/MacroFusion.h
+include/libLLVM/llvm/CodeGen/PBQP/CostAllocator.h
+include/libLLVM/llvm/CodeGen/PBQP/Graph.h
+include/libLLVM/llvm/CodeGen/PBQP/Math.h
+include/libLLVM/llvm/CodeGen/PBQP/ReductionRules.h
+include/libLLVM/llvm/CodeGen/PBQP/Solution.h
+include/libLLVM/llvm/CodeGen/PBQPRAConstraint.h
+include/libLLVM/llvm/CodeGen/ParallelCG.h
+include/libLLVM/llvm/CodeGen/Passes.h
+include/libLLVM/llvm/CodeGen/PreISelIntrinsicLowering.h
+include/libLLVM/llvm/CodeGen/PseudoSourceValue.h
+include/libLLVM/llvm/CodeGen/RegAllocPBQP.h
+include/libLLVM/llvm/CodeGen/RegAllocRegistry.h
+include/libLLVM/llvm/CodeGen/RegisterClassInfo.h
+include/libLLVM/llvm/CodeGen/RegisterPressure.h
+include/libLLVM/llvm/CodeGen/RegisterScavenging.h
+include/libLLVM/llvm/CodeGen/RegisterUsageInfo.h
+include/libLLVM/llvm/CodeGen/ResourcePriorityQueue.h
+include/libLLVM/llvm/CodeGen/RuntimeLibcalls.h
+include/libLLVM/llvm/CodeGen/ScheduleDAG.h
+include/libLLVM/llvm/CodeGen/ScheduleDAGInstrs.h
+include/libLLVM/llvm/CodeGen/ScheduleDAGMutation.h
+include/libLLVM/llvm/CodeGen/ScheduleDFS.h
+include/libLLVM/llvm/CodeGen/ScheduleHazardRecognizer.h
+include/libLLVM/llvm/CodeGen/SchedulerRegistry.h
+include/libLLVM/llvm/CodeGen/ScoreboardHazardRecognizer.h
+include/libLLVM/llvm/CodeGen/SelectionDAG.h
+include/libLLVM/llvm/CodeGen/SelectionDAGAddressAnalysis.h
+include/libLLVM/llvm/CodeGen/SelectionDAGISel.h
+include/libLLVM/llvm/CodeGen/SelectionDAGNodes.h
+include/libLLVM/llvm/CodeGen/SelectionDAGTargetInfo.h
+include/libLLVM/llvm/CodeGen/SlotIndexes.h
+include/libLLVM/llvm/CodeGen/StackMaps.h
+include/libLLVM/llvm/CodeGen/StackProtector.h
+include/libLLVM/llvm/CodeGen/TailDuplicator.h
+include/libLLVM/llvm/CodeGen/TargetLoweringObjectFileImpl.h
+include/libLLVM/llvm/CodeGen/TargetPassConfig.h
+include/libLLVM/llvm/CodeGen/TargetSchedule.h
+include/libLLVM/llvm/CodeGen/UnreachableBlockElim.h
+include/libLLVM/llvm/CodeGen/ValueTypes.h
+include/libLLVM/llvm/CodeGen/ValueTypes.td
+include/libLLVM/llvm/CodeGen/VirtRegMap.h
+include/libLLVM/llvm/CodeGen/WinEHFuncInfo.h
+include/libLLVM/llvm/Config/AsmParsers.def
+include/libLLVM/llvm/Config/AsmPrinters.def
+include/libLLVM/llvm/Config/Disassemblers.def
+include/libLLVM/llvm/Config/Targets.def
+include/libLLVM/llvm/Config/abi-breaking.h
+include/libLLVM/llvm/Config/llvm-config.h
+include/libLLVM/llvm/DebugInfo/CodeView/CVDebugRecord.h
+include/libLLVM/llvm/DebugInfo/CodeView/CVRecord.h
+include/libLLVM/llvm/DebugInfo/CodeView/CVSymbolVisitor.h
+include/libLLVM/llvm/DebugInfo/CodeView/CVTypeVisitor.h
+include/libLLVM/llvm/DebugInfo/CodeView/CodeView.h
+include/libLLVM/llvm/DebugInfo/CodeView/CodeViewError.h
+include/libLLVM/llvm/DebugInfo/CodeView/CodeViewRecordIO.h
+include/libLLVM/llvm/DebugInfo/CodeView/CodeViewSymbols.def
+include/libLLVM/llvm/DebugInfo/CodeView/CodeViewTypes.def
+include/libLLVM/llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugCrossExSubsection.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugCrossImpSubsection.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugInlineeLinesSubsection.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugLinesSubsection.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugStringTableSubsection.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugSubsection.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugSubsectionRecord.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugSubsectionVisitor.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugSymbolRVASubsection.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugSymbolsSubsection.h
+include/libLLVM/llvm/DebugInfo/CodeView/DebugUnknownSubsection.h
+include/libLLVM/llvm/DebugInfo/CodeView/EnumTables.h
+include/libLLVM/llvm/DebugInfo/CodeView/Formatters.h
+include/libLLVM/llvm/DebugInfo/CodeView/FunctionId.h
+include/libLLVM/llvm/DebugInfo/CodeView/GUID.h
+include/libLLVM/llvm/DebugInfo/CodeView/LazyRandomTypeCollection.h
+include/libLLVM/llvm/DebugInfo/CodeView/Line.h
+include/libLLVM/llvm/DebugInfo/CodeView/RecordSerialization.h
+include/libLLVM/llvm/DebugInfo/CodeView/StringsAndChecksums.h
+include/libLLVM/llvm/DebugInfo/CodeView/SymbolDeserializer.h
+include/libLLVM/llvm/DebugInfo/CodeView/SymbolDumpDelegate.h
+include/libLLVM/llvm/DebugInfo/CodeView/SymbolDumper.h
+include/libLLVM/llvm/DebugInfo/CodeView/SymbolRecord.h
+include/libLLVM/llvm/DebugInfo/CodeView/SymbolRecordMapping.h
+include/libLLVM/llvm/DebugInfo/CodeView/SymbolSerializer.h
+include/libLLVM/llvm/DebugInfo/CodeView/SymbolVisitorCallbackPipeline.h
+include/libLLVM/llvm/DebugInfo/CodeView/SymbolVisitorCallbacks.h
+include/libLLVM/llvm/DebugInfo/CodeView/SymbolVisitorDelegate.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeCollection.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeDeserializer.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeDumpVisitor.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeIndex.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeIndexDiscovery.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeName.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeRecord.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeRecordBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeRecordMapping.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeSerializer.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeStreamMerger.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeSymbolEmitter.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeTableBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeTableCollection.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeVisitorCallbackPipeline.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h
+include/libLLVM/llvm/DebugInfo/DIContext.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFAttribute.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFCompileUnit.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFContext.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDataExtractor.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugAranges.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugFrame.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugLine.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugLoc.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugMacro.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugPubTable.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDebugRangeList.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFDie.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFFormValue.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFGdbIndex.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFRelocMap.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFSection.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFTypeUnit.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFUnit.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFUnitIndex.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFVerifier.h
+include/libLLVM/llvm/DebugInfo/MSF/IMSFFile.h
+include/libLLVM/llvm/DebugInfo/MSF/MSFBuilder.h
+include/libLLVM/llvm/DebugInfo/MSF/MSFCommon.h
+include/libLLVM/llvm/DebugInfo/MSF/MSFError.h
+include/libLLVM/llvm/DebugInfo/MSF/MSFStreamLayout.h
+include/libLLVM/llvm/DebugInfo/MSF/MappedBlockStream.h
+include/libLLVM/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIADataStream.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIAEnumDebugStreams.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIAEnumLineNumbers.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIAEnumSourceFiles.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIAEnumSymbols.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIAError.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIALineNumber.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIARawSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIASession.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIASourceFile.h
+include/libLLVM/llvm/DebugInfo/PDB/DIA/DIASupport.h
+include/libLLVM/llvm/DebugInfo/PDB/GenericError.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBDataStream.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBEnumChildren.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBLineNumber.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBRawSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBSession.h
+include/libLLVM/llvm/DebugInfo/PDB/IPDBSourceFile.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/DbiModuleDescriptor.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/DbiModuleList.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/DbiStream.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/DbiStreamBuilder.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/EnumTables.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/Formatters.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/GlobalsStream.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/Hash.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/HashTable.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/ISectionContribVisitor.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/InfoStream.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/InfoStreamBuilder.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/ModuleDebugStream.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/NamedStreamMap.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/NativeBuiltinSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/NativeCompilandSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/NativeEnumModules.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/NativeExeSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/NativeRawSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/NativeSession.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/PDBFile.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/PDBFileBuilder.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/PDBStringTable.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/PDBStringTableBuilder.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/PublicsStream.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/PublicsStreamBuilder.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/RawConstants.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/RawError.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/RawTypes.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/SymbolStream.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/TpiHashing.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/TpiStream.h
+include/libLLVM/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h
+include/libLLVM/llvm/DebugInfo/PDB/PDB.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBContext.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBExtras.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymDumper.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolBlock.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolCompiland.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolCustom.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolData.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolExe.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolFunc.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolLabel.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolThunk.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolUnknown.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h
+include/libLLVM/llvm/DebugInfo/PDB/PDBTypes.h
+include/libLLVM/llvm/DebugInfo/PDB/UDTLayout.h
+include/libLLVM/llvm/DebugInfo/Symbolize/DIPrinter.h
+include/libLLVM/llvm/DebugInfo/Symbolize/SymbolizableModule.h
+include/libLLVM/llvm/DebugInfo/Symbolize/Symbolize.h
+include/libLLVM/llvm/Demangle/Demangle.h
+include/libLLVM/llvm/ExecutionEngine/ExecutionEngine.h
+include/libLLVM/llvm/ExecutionEngine/GenericValue.h
+include/libLLVM/llvm/ExecutionEngine/Interpreter.h
+include/libLLVM/llvm/ExecutionEngine/JITEventListener.h
+include/libLLVM/llvm/ExecutionEngine/JITSymbol.h
+include/libLLVM/llvm/ExecutionEngine/MCJIT.h
+include/libLLVM/llvm/ExecutionEngine/OProfileWrapper.h
+include/libLLVM/llvm/ExecutionEngine/ObjectCache.h
+include/libLLVM/llvm/ExecutionEngine/ObjectMemoryBuffer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/CompileUtils.h
+include/libLLVM/llvm/ExecutionEngine/Orc/ExecutionUtils.h
+include/libLLVM/llvm/ExecutionEngine/Orc/GlobalMappingLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/IRCompileLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/IRTransformLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/IndirectionUtils.h
+include/libLLVM/llvm/ExecutionEngine/Orc/LambdaResolver.h
+include/libLLVM/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/NullResolver.h
+include/libLLVM/llvm/ExecutionEngine/Orc/ObjectTransformLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/OrcABISupport.h
+include/libLLVM/llvm/ExecutionEngine/Orc/OrcError.h
+include/libLLVM/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h
+include/libLLVM/llvm/ExecutionEngine/Orc/OrcRemoteTargetRPCAPI.h
+include/libLLVM/llvm/ExecutionEngine/Orc/OrcRemoteTargetServer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/RPCSerialization.h
+include/libLLVM/llvm/ExecutionEngine/Orc/RPCUtils.h
+include/libLLVM/llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/RawByteChannel.h
+include/libLLVM/llvm/ExecutionEngine/OrcMCJITReplacement.h
+include/libLLVM/llvm/ExecutionEngine/RTDyldMemoryManager.h
+include/libLLVM/llvm/ExecutionEngine/RuntimeDyld.h
+include/libLLVM/llvm/ExecutionEngine/RuntimeDyldChecker.h
+include/libLLVM/llvm/ExecutionEngine/SectionMemoryManager.h
+include/libLLVM/llvm/IR/Argument.h
+include/libLLVM/llvm/IR/AssemblyAnnotationWriter.h
+include/libLLVM/llvm/IR/Attributes.gen
+include/libLLVM/llvm/IR/Attributes.h
+include/libLLVM/llvm/IR/Attributes.td
+include/libLLVM/llvm/IR/AutoUpgrade.h
+include/libLLVM/llvm/IR/BasicBlock.h
+include/libLLVM/llvm/IR/CFG.h
+include/libLLVM/llvm/IR/CallSite.h
+include/libLLVM/llvm/IR/CallingConv.h
+include/libLLVM/llvm/IR/Comdat.h
+include/libLLVM/llvm/IR/Constant.h
+include/libLLVM/llvm/IR/ConstantFolder.h
+include/libLLVM/llvm/IR/ConstantRange.h
+include/libLLVM/llvm/IR/Constants.h
+include/libLLVM/llvm/IR/DIBuilder.h
+include/libLLVM/llvm/IR/DataLayout.h
+include/libLLVM/llvm/IR/DebugInfo.h
+include/libLLVM/llvm/IR/DebugInfoFlags.def
+include/libLLVM/llvm/IR/DebugInfoMetadata.h
+include/libLLVM/llvm/IR/DebugLoc.h
+include/libLLVM/llvm/IR/DerivedTypes.h
+include/libLLVM/llvm/IR/DerivedUser.h
+include/libLLVM/llvm/IR/DiagnosticInfo.h
+include/libLLVM/llvm/IR/DiagnosticPrinter.h
+include/libLLVM/llvm/IR/Dominators.h
+include/libLLVM/llvm/IR/Function.h
+include/libLLVM/llvm/IR/GVMaterializer.h
+include/libLLVM/llvm/IR/GetElementPtrTypeIterator.h
+include/libLLVM/llvm/IR/GlobalAlias.h
+include/libLLVM/llvm/IR/GlobalIFunc.h
+include/libLLVM/llvm/IR/GlobalIndirectSymbol.h
+include/libLLVM/llvm/IR/GlobalObject.h
+include/libLLVM/llvm/IR/GlobalValue.h
+include/libLLVM/llvm/IR/GlobalVariable.h
+include/libLLVM/llvm/IR/IRBuilder.h
+include/libLLVM/llvm/IR/IRPrintingPasses.h
+include/libLLVM/llvm/IR/InlineAsm.h
+include/libLLVM/llvm/IR/InstIterator.h
+include/libLLVM/llvm/IR/InstVisitor.h
+include/libLLVM/llvm/IR/InstrTypes.h
+include/libLLVM/llvm/IR/Instruction.def
+include/libLLVM/llvm/IR/Instruction.h
+include/libLLVM/llvm/IR/Instructions.h
+include/libLLVM/llvm/IR/IntrinsicInst.h
+include/libLLVM/llvm/IR/Intrinsics.gen
+include/libLLVM/llvm/IR/Intrinsics.h
+include/libLLVM/llvm/IR/Intrinsics.td
+include/libLLVM/llvm/IR/IntrinsicsAArch64.td
+include/libLLVM/llvm/IR/IntrinsicsAMDGPU.td
+include/libLLVM/llvm/IR/IntrinsicsARM.td
+include/libLLVM/llvm/IR/IntrinsicsBPF.td
+include/libLLVM/llvm/IR/IntrinsicsHexagon.td
+include/libLLVM/llvm/IR/IntrinsicsMips.td
+include/libLLVM/llvm/IR/IntrinsicsNVVM.td
+include/libLLVM/llvm/IR/IntrinsicsPowerPC.td
+include/libLLVM/llvm/IR/IntrinsicsSystemZ.td
+include/libLLVM/llvm/IR/IntrinsicsWebAssembly.td
+include/libLLVM/llvm/IR/IntrinsicsX86.td
+include/libLLVM/llvm/IR/IntrinsicsXCore.td
+include/libLLVM/llvm/IR/LLVMContext.h
+include/libLLVM/llvm/IR/LegacyPassManager.h
+include/libLLVM/llvm/IR/LegacyPassManagers.h
+include/libLLVM/llvm/IR/LegacyPassNameParser.h
+include/libLLVM/llvm/IR/MDBuilder.h
+include/libLLVM/llvm/IR/Mangler.h
+include/libLLVM/llvm/IR/Metadata.def
+include/libLLVM/llvm/IR/Metadata.h
+include/libLLVM/llvm/IR/Module.h
+include/libLLVM/llvm/IR/ModuleSlotTracker.h
+include/libLLVM/llvm/IR/ModuleSummaryIndex.h
+include/libLLVM/llvm/IR/ModuleSummaryIndexYAML.h
+include/libLLVM/llvm/IR/NoFolder.h
+include/libLLVM/llvm/IR/OperandTraits.h
+include/libLLVM/llvm/IR/Operator.h
+include/libLLVM/llvm/IR/OptBisect.h
+include/libLLVM/llvm/IR/PassManager.h
+include/libLLVM/llvm/IR/PassManagerInternal.h
+include/libLLVM/llvm/IR/PatternMatch.h
+include/libLLVM/llvm/IR/PredIteratorCache.h
+include/libLLVM/llvm/IR/ProfileSummary.h
+include/libLLVM/llvm/IR/SafepointIRVerifier.h
+include/libLLVM/llvm/IR/Statepoint.h
+include/libLLVM/llvm/IR/SymbolTableListTraits.h
+include/libLLVM/llvm/IR/TrackingMDRef.h
+include/libLLVM/llvm/IR/Type.h
+include/libLLVM/llvm/IR/TypeBuilder.h
+include/libLLVM/llvm/IR/TypeFinder.h
+include/libLLVM/llvm/IR/Use.h
+include/libLLVM/llvm/IR/UseListOrder.h
+include/libLLVM/llvm/IR/User.h
+include/libLLVM/llvm/IR/Value.def
+include/libLLVM/llvm/IR/Value.h
+include/libLLVM/llvm/IR/ValueHandle.h
+include/libLLVM/llvm/IR/ValueMap.h
+include/libLLVM/llvm/IR/ValueSymbolTable.h
+include/libLLVM/llvm/IR/Verifier.h
+include/libLLVM/llvm/IRReader/IRReader.h
+include/libLLVM/llvm/InitializePasses.h
+include/libLLVM/llvm/LTO/Caching.h
+include/libLLVM/llvm/LTO/Config.h
+include/libLLVM/llvm/LTO/LTO.h
+include/libLLVM/llvm/LTO/LTOBackend.h
+include/libLLVM/llvm/LTO/legacy/LTOCodeGenerator.h
+include/libLLVM/llvm/LTO/legacy/LTOModule.h
+include/libLLVM/llvm/LTO/legacy/ThinLTOCodeGenerator.h
+include/libLLVM/llvm/LTO/legacy/UpdateCompilerUsed.h
+include/libLLVM/llvm/LineEditor/LineEditor.h
+include/libLLVM/llvm/LinkAllIR.h
+include/libLLVM/llvm/LinkAllPasses.h
+include/libLLVM/llvm/Linker/IRMover.h
+include/libLLVM/llvm/Linker/Linker.h
+include/libLLVM/llvm/MC/ConstantPools.h
+include/libLLVM/llvm/MC/LaneBitmask.h
+include/libLLVM/llvm/MC/MCAsmBackend.h
+include/libLLVM/llvm/MC/MCAsmInfo.h
+include/libLLVM/llvm/MC/MCAsmInfoCOFF.h
+include/libLLVM/llvm/MC/MCAsmInfoDarwin.h
+include/libLLVM/llvm/MC/MCAsmInfoELF.h
+include/libLLVM/llvm/MC/MCAsmInfoWasm.h
+include/libLLVM/llvm/MC/MCAsmLayout.h
+include/libLLVM/llvm/MC/MCAssembler.h
+include/libLLVM/llvm/MC/MCCodeEmitter.h
+include/libLLVM/llvm/MC/MCCodeView.h
+include/libLLVM/llvm/MC/MCContext.h
+include/libLLVM/llvm/MC/MCDirectives.h
+include/libLLVM/llvm/MC/MCDisassembler/MCDisassembler.h
+include/libLLVM/llvm/MC/MCDisassembler/MCExternalSymbolizer.h
+include/libLLVM/llvm/MC/MCDisassembler/MCRelocationInfo.h
+include/libLLVM/llvm/MC/MCDisassembler/MCSymbolizer.h
+include/libLLVM/llvm/MC/MCDwarf.h
+include/libLLVM/llvm/MC/MCELFObjectWriter.h
+include/libLLVM/llvm/MC/MCELFStreamer.h
+include/libLLVM/llvm/MC/MCExpr.h
+include/libLLVM/llvm/MC/MCFixedLenDisassembler.h
+include/libLLVM/llvm/MC/MCFixup.h
+include/libLLVM/llvm/MC/MCFixupKindInfo.h
+include/libLLVM/llvm/MC/MCFragment.h
+include/libLLVM/llvm/MC/MCInst.h
+include/libLLVM/llvm/MC/MCInstBuilder.h
+include/libLLVM/llvm/MC/MCInstPrinter.h
+include/libLLVM/llvm/MC/MCInstrAnalysis.h
+include/libLLVM/llvm/MC/MCInstrDesc.h
+include/libLLVM/llvm/MC/MCInstrInfo.h
+include/libLLVM/llvm/MC/MCInstrItineraries.h
+include/libLLVM/llvm/MC/MCLabel.h
+include/libLLVM/llvm/MC/MCLinkerOptimizationHint.h
+include/libLLVM/llvm/MC/MCMachObjectWriter.h
+include/libLLVM/llvm/MC/MCObjectFileInfo.h
+include/libLLVM/llvm/MC/MCObjectStreamer.h
+include/libLLVM/llvm/MC/MCObjectWriter.h
+include/libLLVM/llvm/MC/MCParser/AsmCond.h
+include/libLLVM/llvm/MC/MCParser/AsmLexer.h
+include/libLLVM/llvm/MC/MCParser/MCAsmLexer.h
+include/libLLVM/llvm/MC/MCParser/MCAsmParser.h
+include/libLLVM/llvm/MC/MCParser/MCAsmParserExtension.h
+include/libLLVM/llvm/MC/MCParser/MCAsmParserUtils.h
+include/libLLVM/llvm/MC/MCParser/MCParsedAsmOperand.h
+include/libLLVM/llvm/MC/MCParser/MCTargetAsmParser.h
+include/libLLVM/llvm/MC/MCRegisterInfo.h
+include/libLLVM/llvm/MC/MCSchedule.h
+include/libLLVM/llvm/MC/MCSection.h
+include/libLLVM/llvm/MC/MCSectionCOFF.h
+include/libLLVM/llvm/MC/MCSectionELF.h
+include/libLLVM/llvm/MC/MCSectionMachO.h
+include/libLLVM/llvm/MC/MCSectionWasm.h
+include/libLLVM/llvm/MC/MCStreamer.h
+include/libLLVM/llvm/MC/MCSubtargetInfo.h
+include/libLLVM/llvm/MC/MCSymbol.h
+include/libLLVM/llvm/MC/MCSymbolCOFF.h
+include/libLLVM/llvm/MC/MCSymbolELF.h
+include/libLLVM/llvm/MC/MCSymbolMachO.h
+include/libLLVM/llvm/MC/MCSymbolWasm.h
+include/libLLVM/llvm/MC/MCTargetOptions.h
+include/libLLVM/llvm/MC/MCTargetOptionsCommandFlags.h
+include/libLLVM/llvm/MC/MCValue.h
+include/libLLVM/llvm/MC/MCWasmObjectWriter.h
+include/libLLVM/llvm/MC/MCWasmStreamer.h
+include/libLLVM/llvm/MC/MCWin64EH.h
+include/libLLVM/llvm/MC/MCWinCOFFObjectWriter.h
+include/libLLVM/llvm/MC/MCWinCOFFStreamer.h
+include/libLLVM/llvm/MC/MCWinEH.h
+include/libLLVM/llvm/MC/MachineLocation.h
+include/libLLVM/llvm/MC/SectionKind.h
+include/libLLVM/llvm/MC/StringTableBuilder.h
+include/libLLVM/llvm/MC/SubtargetFeature.h
+include/libLLVM/llvm/Object/Archive.h
+include/libLLVM/llvm/Object/ArchiveWriter.h
+include/libLLVM/llvm/Object/Binary.h
+include/libLLVM/llvm/Object/COFF.h
+include/libLLVM/llvm/Object/COFFImportFile.h
+include/libLLVM/llvm/Object/COFFModuleDefinition.h
+include/libLLVM/llvm/Object/Decompressor.h
+include/libLLVM/llvm/Object/ELF.h
+include/libLLVM/llvm/Object/ELFObjectFile.h
+include/libLLVM/llvm/Object/ELFTypes.h
+include/libLLVM/llvm/Object/Error.h
+include/libLLVM/llvm/Object/IRObjectFile.h
+include/libLLVM/llvm/Object/IRSymtab.h
+include/libLLVM/llvm/Object/MachO.h
+include/libLLVM/llvm/Object/MachOUniversal.h
+include/libLLVM/llvm/Object/ModuleSymbolTable.h
+include/libLLVM/llvm/Object/ObjectFile.h
+include/libLLVM/llvm/Object/RelocVisitor.h
+include/libLLVM/llvm/Object/StackMapParser.h
+include/libLLVM/llvm/Object/SymbolSize.h
+include/libLLVM/llvm/Object/SymbolicFile.h
+include/libLLVM/llvm/Object/Wasm.h
+include/libLLVM/llvm/Object/WindowsResource.h
+include/libLLVM/llvm/ObjectYAML/COFFYAML.h
+include/libLLVM/llvm/ObjectYAML/CodeViewYAMLDebugSections.h
+include/libLLVM/llvm/ObjectYAML/CodeViewYAMLSymbols.h
+include/libLLVM/llvm/ObjectYAML/CodeViewYAMLTypes.h
+include/libLLVM/llvm/ObjectYAML/DWARFEmitter.h
+include/libLLVM/llvm/ObjectYAML/DWARFYAML.h
+include/libLLVM/llvm/ObjectYAML/ELFYAML.h
+include/libLLVM/llvm/ObjectYAML/MachOYAML.h
+include/libLLVM/llvm/ObjectYAML/ObjectYAML.h
+include/libLLVM/llvm/ObjectYAML/WasmYAML.h
+include/libLLVM/llvm/ObjectYAML/YAML.h
+include/libLLVM/llvm/Option/Arg.h
+include/libLLVM/llvm/Option/ArgList.h
+include/libLLVM/llvm/Option/OptParser.td
+include/libLLVM/llvm/Option/OptSpecifier.h
+include/libLLVM/llvm/Option/OptTable.h
+include/libLLVM/llvm/Option/Option.h
+include/libLLVM/llvm/Pass.h
+include/libLLVM/llvm/PassAnalysisSupport.h
+include/libLLVM/llvm/PassInfo.h
+include/libLLVM/llvm/PassRegistry.h
+include/libLLVM/llvm/PassSupport.h
+include/libLLVM/llvm/Passes/PassBuilder.h
+include/libLLVM/llvm/ProfileData/Coverage/CoverageMapping.h
+include/libLLVM/llvm/ProfileData/Coverage/CoverageMappingReader.h
+include/libLLVM/llvm/ProfileData/Coverage/CoverageMappingWriter.h
+include/libLLVM/llvm/ProfileData/InstrProf.h
+include/libLLVM/llvm/ProfileData/InstrProfData.inc
+include/libLLVM/llvm/ProfileData/InstrProfReader.h
+include/libLLVM/llvm/ProfileData/InstrProfWriter.h
+include/libLLVM/llvm/ProfileData/ProfileCommon.h
+include/libLLVM/llvm/ProfileData/SampleProf.h
+include/libLLVM/llvm/ProfileData/SampleProfReader.h
+include/libLLVM/llvm/ProfileData/SampleProfWriter.h
+include/libLLVM/llvm/Support/AArch64TargetParser.def
+include/libLLVM/llvm/Support/AMDGPUCodeObjectMetadata.h
+include/libLLVM/llvm/Support/ARMAttributeParser.h
+include/libLLVM/llvm/Support/ARMBuildAttributes.h
+include/libLLVM/llvm/Support/ARMEHABI.h
+include/libLLVM/llvm/Support/ARMTargetParser.def
+include/libLLVM/llvm/Support/ARMWinEH.h
+include/libLLVM/llvm/Support/AlignOf.h
+include/libLLVM/llvm/Support/Allocator.h
+include/libLLVM/llvm/Support/ArrayRecycler.h
+include/libLLVM/llvm/Support/Atomic.h
+include/libLLVM/llvm/Support/AtomicOrdering.h
+include/libLLVM/llvm/Support/BinaryByteStream.h
+include/libLLVM/llvm/Support/BinaryItemStream.h
+include/libLLVM/llvm/Support/BinaryStream.h
+include/libLLVM/llvm/Support/BinaryStreamArray.h
+include/libLLVM/llvm/Support/BinaryStreamError.h
+include/libLLVM/llvm/Support/BinaryStreamReader.h
+include/libLLVM/llvm/Support/BinaryStreamRef.h
+include/libLLVM/llvm/Support/BinaryStreamWriter.h
+include/libLLVM/llvm/Support/BlockFrequency.h
+include/libLLVM/llvm/Support/BranchProbability.h
+include/libLLVM/llvm/Support/CBindingWrapping.h
+include/libLLVM/llvm/Support/COM.h
+include/libLLVM/llvm/Support/CachePruning.h
+include/libLLVM/llvm/Support/Capacity.h
+include/libLLVM/llvm/Support/Casting.h
+include/libLLVM/llvm/Support/Chrono.h
+include/libLLVM/llvm/Support/CodeGen.h
+include/libLLVM/llvm/Support/CodeGenCWrappers.h
+include/libLLVM/llvm/Support/CommandLine.h
+include/libLLVM/llvm/Support/Compiler.h
+include/libLLVM/llvm/Support/Compression.h
+include/libLLVM/llvm/Support/ConvertUTF.h
+include/libLLVM/llvm/Support/CrashRecoveryContext.h
+include/libLLVM/llvm/Support/DOTGraphTraits.h
+include/libLLVM/llvm/Support/DataExtractor.h
+include/libLLVM/llvm/Support/DataTypes.h
+include/libLLVM/llvm/Support/Debug.h
+include/libLLVM/llvm/Support/DebugCounter.h
+include/libLLVM/llvm/Support/DynamicLibrary.h
+include/libLLVM/llvm/Support/Endian.h
+include/libLLVM/llvm/Support/EndianStream.h
+include/libLLVM/llvm/Support/Errc.h
+include/libLLVM/llvm/Support/Errno.h
+include/libLLVM/llvm/Support/Error.h
+include/libLLVM/llvm/Support/ErrorHandling.h
+include/libLLVM/llvm/Support/ErrorOr.h
+include/libLLVM/llvm/Support/FileOutputBuffer.h
+include/libLLVM/llvm/Support/FileSystem.h
+include/libLLVM/llvm/Support/FileUtilities.h
+include/libLLVM/llvm/Support/Format.h
+include/libLLVM/llvm/Support/FormatAdapters.h
+include/libLLVM/llvm/Support/FormatCommon.h
+include/libLLVM/llvm/Support/FormatProviders.h
+include/libLLVM/llvm/Support/FormatVariadic.h
+include/libLLVM/llvm/Support/FormatVariadicDetails.h
+include/libLLVM/llvm/Support/FormattedStream.h
+include/libLLVM/llvm/Support/GCOV.h
+include/libLLVM/llvm/Support/GenericDomTree.h
+include/libLLVM/llvm/Support/GenericDomTreeConstruction.h
+include/libLLVM/llvm/Support/GlobPattern.h
+include/libLLVM/llvm/Support/GraphWriter.h
+include/libLLVM/llvm/Support/Host.h
+include/libLLVM/llvm/Support/JamCRC.h
+include/libLLVM/llvm/Support/KnownBits.h
+include/libLLVM/llvm/Support/LEB128.h
+include/libLLVM/llvm/Support/LICENSE.TXT
+include/libLLVM/llvm/Support/LineIterator.h
+include/libLLVM/llvm/Support/Locale.h
+include/libLLVM/llvm/Support/LockFileManager.h
+include/libLLVM/llvm/Support/LowLevelTypeImpl.h
+include/libLLVM/llvm/Support/MD5.h
+include/libLLVM/llvm/Support/ManagedStatic.h
+include/libLLVM/llvm/Support/MathExtras.h
+include/libLLVM/llvm/Support/Memory.h
+include/libLLVM/llvm/Support/MemoryBuffer.h
+include/libLLVM/llvm/Support/MipsABIFlags.h
+include/libLLVM/llvm/Support/Mutex.h
+include/libLLVM/llvm/Support/MutexGuard.h
+include/libLLVM/llvm/Support/NativeFormatting.h
+include/libLLVM/llvm/Support/OnDiskHashTable.h
+include/libLLVM/llvm/Support/Options.h
+include/libLLVM/llvm/Support/Parallel.h
+include/libLLVM/llvm/Support/Path.h
+include/libLLVM/llvm/Support/PluginLoader.h
+include/libLLVM/llvm/Support/PointerLikeTypeTraits.h
+include/libLLVM/llvm/Support/PrettyStackTrace.h
+include/libLLVM/llvm/Support/Printable.h
+include/libLLVM/llvm/Support/Process.h
+include/libLLVM/llvm/Support/Program.h
+include/libLLVM/llvm/Support/RWMutex.h
+include/libLLVM/llvm/Support/RandomNumberGenerator.h
+include/libLLVM/llvm/Support/Recycler.h
+include/libLLVM/llvm/Support/RecyclingAllocator.h
+include/libLLVM/llvm/Support/Regex.h
+include/libLLVM/llvm/Support/Registry.h
+include/libLLVM/llvm/Support/ReverseIteration.h
+include/libLLVM/llvm/Support/SHA1.h
+include/libLLVM/llvm/Support/SMLoc.h
+include/libLLVM/llvm/Support/SaveAndRestore.h
+include/libLLVM/llvm/Support/ScaledNumber.h
+include/libLLVM/llvm/Support/ScopedPrinter.h
+include/libLLVM/llvm/Support/Signals.h
+include/libLLVM/llvm/Support/Solaris/sys/regset.h
+include/libLLVM/llvm/Support/SourceMgr.h
+include/libLLVM/llvm/Support/SpecialCaseList.h
+include/libLLVM/llvm/Support/StringPool.h
+include/libLLVM/llvm/Support/StringSaver.h
+include/libLLVM/llvm/Support/SwapByteOrder.h
+include/libLLVM/llvm/Support/SystemUtils.h
+include/libLLVM/llvm/Support/TarWriter.h
+include/libLLVM/llvm/Support/TargetParser.h
+include/libLLVM/llvm/Support/TargetRegistry.h
+include/libLLVM/llvm/Support/TargetSelect.h
+include/libLLVM/llvm/Support/ThreadLocal.h
+include/libLLVM/llvm/Support/ThreadPool.h
+include/libLLVM/llvm/Support/Threading.h
+include/libLLVM/llvm/Support/Timer.h
+include/libLLVM/llvm/Support/ToolOutputFile.h
+include/libLLVM/llvm/Support/TrailingObjects.h
+include/libLLVM/llvm/Support/TrigramIndex.h
+include/libLLVM/llvm/Support/TypeName.h
+include/libLLVM/llvm/Support/Unicode.h
+include/libLLVM/llvm/Support/UnicodeCharRanges.h
+include/libLLVM/llvm/Support/UniqueLock.h
+include/libLLVM/llvm/Support/VCSRevision.h
+include/libLLVM/llvm/Support/Valgrind.h
+include/libLLVM/llvm/Support/Watchdog.h
+include/libLLVM/llvm/Support/Win64EH.h
+include/libLLVM/llvm/Support/WindowsError.h
+include/libLLVM/llvm/Support/YAMLParser.h
+include/libLLVM/llvm/Support/YAMLTraits.h
+include/libLLVM/llvm/Support/circular_raw_ostream.h
+include/libLLVM/llvm/Support/raw_os_ostream.h
+include/libLLVM/llvm/Support/raw_ostream.h
+include/libLLVM/llvm/Support/raw_sha1_ostream.h
+include/libLLVM/llvm/Support/thread.h
+include/libLLVM/llvm/Support/type_traits.h
+include/libLLVM/llvm/Support/xxhash.h
+include/libLLVM/llvm/TableGen/Error.h
+include/libLLVM/llvm/TableGen/Main.h
+include/libLLVM/llvm/TableGen/Record.h
+include/libLLVM/llvm/TableGen/SearchableTable.td
+include/libLLVM/llvm/TableGen/SetTheory.h
+include/libLLVM/llvm/TableGen/StringMatcher.h
+include/libLLVM/llvm/TableGen/StringToOffsetTable.h
+include/libLLVM/llvm/TableGen/TableGenBackend.h
+include/libLLVM/llvm/Target/CostTable.h
+include/libLLVM/llvm/Target/GenericOpcodes.td
+include/libLLVM/llvm/Target/GlobalISel/RegisterBank.td
+include/libLLVM/llvm/Target/GlobalISel/SelectionDAGCompat.td
+include/libLLVM/llvm/Target/GlobalISel/Target.td
+include/libLLVM/llvm/Target/Target.td
+include/libLLVM/llvm/Target/TargetCallingConv.h
+include/libLLVM/llvm/Target/TargetCallingConv.td
+include/libLLVM/llvm/Target/TargetFrameLowering.h
+include/libLLVM/llvm/Target/TargetInstrInfo.h
+include/libLLVM/llvm/Target/TargetIntrinsicInfo.h
+include/libLLVM/llvm/Target/TargetItinerary.td
+include/libLLVM/llvm/Target/TargetLowering.h
+include/libLLVM/llvm/Target/TargetLoweringObjectFile.h
+include/libLLVM/llvm/Target/TargetMachine.h
+include/libLLVM/llvm/Target/TargetOpcodes.def
+include/libLLVM/llvm/Target/TargetOpcodes.h
+include/libLLVM/llvm/Target/TargetOptions.h
+include/libLLVM/llvm/Target/TargetRegisterInfo.h
+include/libLLVM/llvm/Target/TargetSchedule.td
+include/libLLVM/llvm/Target/TargetSelectionDAG.td
+include/libLLVM/llvm/Target/TargetSubtargetInfo.h
+include/libLLVM/llvm/Testing/Support/Error.h
+include/libLLVM/llvm/Testing/Support/SupportHelpers.h
+include/libLLVM/llvm/ToolDrivers/llvm-dlltool/DlltoolDriver.h
+include/libLLVM/llvm/ToolDrivers/llvm-lib/LibDriver.h
+include/libLLVM/llvm/Transforms/Coroutines.h
+include/libLLVM/llvm/Transforms/GCOVProfiler.h
+include/libLLVM/llvm/Transforms/IPO.h
+include/libLLVM/llvm/Transforms/IPO/AlwaysInliner.h
+include/libLLVM/llvm/Transforms/IPO/ArgumentPromotion.h
+include/libLLVM/llvm/Transforms/IPO/ConstantMerge.h
+include/libLLVM/llvm/Transforms/IPO/CrossDSOCFI.h
+include/libLLVM/llvm/Transforms/IPO/DeadArgumentElimination.h
+include/libLLVM/llvm/Transforms/IPO/ElimAvailExtern.h
+include/libLLVM/llvm/Transforms/IPO/ForceFunctionAttrs.h
+include/libLLVM/llvm/Transforms/IPO/FunctionAttrs.h
+include/libLLVM/llvm/Transforms/IPO/FunctionImport.h
+include/libLLVM/llvm/Transforms/IPO/GlobalDCE.h
+include/libLLVM/llvm/Transforms/IPO/GlobalOpt.h
+include/libLLVM/llvm/Transforms/IPO/GlobalSplit.h
+include/libLLVM/llvm/Transforms/IPO/InferFunctionAttrs.h
+include/libLLVM/llvm/Transforms/IPO/Inliner.h
+include/libLLVM/llvm/Transforms/IPO/Internalize.h
+include/libLLVM/llvm/Transforms/IPO/LowerTypeTests.h
+include/libLLVM/llvm/Transforms/IPO/PartialInlining.h
+include/libLLVM/llvm/Transforms/IPO/PassManagerBuilder.h
+include/libLLVM/llvm/Transforms/IPO/SCCP.h
+include/libLLVM/llvm/Transforms/IPO/StripDeadPrototypes.h
+include/libLLVM/llvm/Transforms/IPO/ThinLTOBitcodeWriter.h
+include/libLLVM/llvm/Transforms/IPO/WholeProgramDevirt.h
+include/libLLVM/llvm/Transforms/InstCombine/InstCombine.h
+include/libLLVM/llvm/Transforms/InstCombine/InstCombineWorklist.h
+include/libLLVM/llvm/Transforms/InstrProfiling.h
+include/libLLVM/llvm/Transforms/Instrumentation.h
+include/libLLVM/llvm/Transforms/ObjCARC.h
+include/libLLVM/llvm/Transforms/PGOInstrumentation.h
+include/libLLVM/llvm/Transforms/SampleProfile.h
+include/libLLVM/llvm/Transforms/Scalar.h
+include/libLLVM/llvm/Transforms/Scalar/ADCE.h
+include/libLLVM/llvm/Transforms/Scalar/AlignmentFromAssumptions.h
+include/libLLVM/llvm/Transforms/Scalar/BDCE.h
+include/libLLVM/llvm/Transforms/Scalar/ConstantHoisting.h
+include/libLLVM/llvm/Transforms/Scalar/CorrelatedValuePropagation.h
+include/libLLVM/llvm/Transforms/Scalar/DCE.h
+include/libLLVM/llvm/Transforms/Scalar/DeadStoreElimination.h
+include/libLLVM/llvm/Transforms/Scalar/EarlyCSE.h
+include/libLLVM/llvm/Transforms/Scalar/Float2Int.h
+include/libLLVM/llvm/Transforms/Scalar/GVN.h
+include/libLLVM/llvm/Transforms/Scalar/GVNExpression.h
+include/libLLVM/llvm/Transforms/Scalar/GuardWidening.h
+include/libLLVM/llvm/Transforms/Scalar/IVUsersPrinter.h
+include/libLLVM/llvm/Transforms/Scalar/IndVarSimplify.h
+include/libLLVM/llvm/Transforms/Scalar/JumpThreading.h
+include/libLLVM/llvm/Transforms/Scalar/LICM.h
+include/libLLVM/llvm/Transforms/Scalar/LoopAccessAnalysisPrinter.h
+include/libLLVM/llvm/Transforms/Scalar/LoopDataPrefetch.h
+include/libLLVM/llvm/Transforms/Scalar/LoopDeletion.h
+include/libLLVM/llvm/Transforms/Scalar/LoopDistribute.h
+include/libLLVM/llvm/Transforms/Scalar/LoopIdiomRecognize.h
+include/libLLVM/llvm/Transforms/Scalar/LoopInstSimplify.h
+include/libLLVM/llvm/Transforms/Scalar/LoopLoadElimination.h
+include/libLLVM/llvm/Transforms/Scalar/LoopPassManager.h
+include/libLLVM/llvm/Transforms/Scalar/LoopPredication.h
+include/libLLVM/llvm/Transforms/Scalar/LoopRotation.h
+include/libLLVM/llvm/Transforms/Scalar/LoopSimplifyCFG.h
+include/libLLVM/llvm/Transforms/Scalar/LoopSink.h
+include/libLLVM/llvm/Transforms/Scalar/LoopStrengthReduce.h
+include/libLLVM/llvm/Transforms/Scalar/LoopUnrollPass.h
+include/libLLVM/llvm/Transforms/Scalar/LowerAtomic.h
+include/libLLVM/llvm/Transforms/Scalar/LowerExpectIntrinsic.h
+include/libLLVM/llvm/Transforms/Scalar/LowerGuardIntrinsic.h
+include/libLLVM/llvm/Transforms/Scalar/MemCpyOptimizer.h
+include/libLLVM/llvm/Transforms/Scalar/MergedLoadStoreMotion.h
+include/libLLVM/llvm/Transforms/Scalar/NaryReassociate.h
+include/libLLVM/llvm/Transforms/Scalar/NewGVN.h
+include/libLLVM/llvm/Transforms/Scalar/PartiallyInlineLibCalls.h
+include/libLLVM/llvm/Transforms/Scalar/Reassociate.h
+include/libLLVM/llvm/Transforms/Scalar/SCCP.h
+include/libLLVM/llvm/Transforms/Scalar/SROA.h
+include/libLLVM/llvm/Transforms/Scalar/SimpleLoopUnswitch.h
+include/libLLVM/llvm/Transforms/Scalar/SimplifyCFG.h
+include/libLLVM/llvm/Transforms/Scalar/Sink.h
+include/libLLVM/llvm/Transforms/Scalar/SpeculativeExecution.h
+include/libLLVM/llvm/Transforms/Scalar/TailRecursionElimination.h
+include/libLLVM/llvm/Transforms/Utils/ASanStackFrameLayout.h
+include/libLLVM/llvm/Transforms/Utils/AddDiscriminators.h
+include/libLLVM/llvm/Transforms/Utils/BasicBlockUtils.h
+include/libLLVM/llvm/Transforms/Utils/BreakCriticalEdges.h
+include/libLLVM/llvm/Transforms/Utils/BuildLibCalls.h
+include/libLLVM/llvm/Transforms/Utils/BypassSlowDivision.h
+include/libLLVM/llvm/Transforms/Utils/Cloning.h
+include/libLLVM/llvm/Transforms/Utils/CmpInstAnalysis.h
+include/libLLVM/llvm/Transforms/Utils/CodeExtractor.h
+include/libLLVM/llvm/Transforms/Utils/CtorUtils.h
+include/libLLVM/llvm/Transforms/Utils/EscapeEnumerator.h
+include/libLLVM/llvm/Transforms/Utils/Evaluator.h
+include/libLLVM/llvm/Transforms/Utils/FunctionComparator.h
+include/libLLVM/llvm/Transforms/Utils/FunctionImportUtils.h
+include/libLLVM/llvm/Transforms/Utils/GlobalStatus.h
+include/libLLVM/llvm/Transforms/Utils/ImportedFunctionsInliningStatistics.h
+include/libLLVM/llvm/Transforms/Utils/IntegerDivision.h
+include/libLLVM/llvm/Transforms/Utils/LCSSA.h
+include/libLLVM/llvm/Transforms/Utils/LibCallsShrinkWrap.h
+include/libLLVM/llvm/Transforms/Utils/Local.h
+include/libLLVM/llvm/Transforms/Utils/LoopSimplify.h
+include/libLLVM/llvm/Transforms/Utils/LoopUtils.h
+include/libLLVM/llvm/Transforms/Utils/LoopVersioning.h
+include/libLLVM/llvm/Transforms/Utils/LowerInvoke.h
+include/libLLVM/llvm/Transforms/Utils/LowerMemIntrinsics.h
+include/libLLVM/llvm/Transforms/Utils/Mem2Reg.h
+include/libLLVM/llvm/Transforms/Utils/ModuleUtils.h
+include/libLLVM/llvm/Transforms/Utils/NameAnonGlobals.h
+include/libLLVM/llvm/Transforms/Utils/OrderedInstructions.h
+include/libLLVM/llvm/Transforms/Utils/PredicateInfo.h
+include/libLLVM/llvm/Transforms/Utils/PromoteMemToReg.h
+include/libLLVM/llvm/Transforms/Utils/SSAUpdater.h
+include/libLLVM/llvm/Transforms/Utils/SSAUpdaterImpl.h
+include/libLLVM/llvm/Transforms/Utils/SanitizerStats.h
+include/libLLVM/llvm/Transforms/Utils/SimplifyIndVar.h
+include/libLLVM/llvm/Transforms/Utils/SimplifyInstructions.h
+include/libLLVM/llvm/Transforms/Utils/SimplifyLibCalls.h
+include/libLLVM/llvm/Transforms/Utils/SplitModule.h
+include/libLLVM/llvm/Transforms/Utils/SymbolRewriter.h
+include/libLLVM/llvm/Transforms/Utils/UnifyFunctionExitNodes.h
+include/libLLVM/llvm/Transforms/Utils/UnrollLoop.h
+include/libLLVM/llvm/Transforms/Utils/VNCoercion.h
+include/libLLVM/llvm/Transforms/Utils/ValueMapper.h
+include/libLLVM/llvm/Transforms/Vectorize.h
+include/libLLVM/llvm/Transforms/Vectorize/LoopVectorize.h
+include/libLLVM/llvm/Transforms/Vectorize/SLPVectorizer.h
+include/libLLVM/llvm/XRay/Graph.h
+include/libLLVM/llvm/XRay/InstrumentationMap.h
+include/libLLVM/llvm/XRay/Trace.h
+include/libLLVM/llvm/XRay/XRayRecord.h
+include/libLLVM/llvm/XRay/YAMLXRayRecord.h
+${PLIST.notdylib}lib/libLLVM/libLLVM-${LLVM_MAJOR_MINOR}.${SOEXT}
+${PLIST.notdylib}lib/libLLVM/libLLVM-${PKGVERSION}.${SOEXT}
+lib/libLLVM/libLLVM.${SOEXT}
+libexec/libLLVM/llvm-cat
+libexec/libLLVM/llvm-config
+libexec/libLLVM/llvm-cvtres
+libexec/libLLVM/llvm-cxxfilt
+libexec/libLLVM/llvm-lto2
+libexec/libLLVM/llvm-modextract
+libexec/libLLVM/llvm-mt
+libexec/libLLVM/llvm-opt-report
+libexec/libLLVM/llvm-pdbutil
+libexec/libLLVM/llvm-strings
+libexec/libLLVM/llvm-xray
+share/libLLVM/cmake/AddLLVM.cmake
+share/libLLVM/cmake/AddLLVMDefinitions.cmake
+share/libLLVM/cmake/AddOCaml.cmake
+share/libLLVM/cmake/AddSphinxTarget.cmake
+share/libLLVM/cmake/CheckAtomic.cmake
+share/libLLVM/cmake/CheckCompilerVersion.cmake
+share/libLLVM/cmake/CheckLinkerFlag.cmake
+share/libLLVM/cmake/ChooseMSVCCRT.cmake
+share/libLLVM/cmake/CrossCompile.cmake
+share/libLLVM/cmake/DetermineGCCCompatible.cmake
+share/libLLVM/cmake/FindOCaml.cmake
+share/libLLVM/cmake/FindSphinx.cmake
+share/libLLVM/cmake/GenerateVersionFromCVS.cmake
+share/libLLVM/cmake/GetSVN.cmake
+share/libLLVM/cmake/HandleLLVMOptions.cmake
+share/libLLVM/cmake/HandleLLVMStdlib.cmake
+share/libLLVM/cmake/LLVM-Config.cmake
+share/libLLVM/cmake/LLVMConfig.cmake
+share/libLLVM/cmake/LLVMConfigVersion.cmake
+share/libLLVM/cmake/LLVMExports-release.cmake
+share/libLLVM/cmake/LLVMExports.cmake
+share/libLLVM/cmake/LLVMExternalProjectUtils.cmake
+share/libLLVM/cmake/LLVMInstallSymlink.cmake
+share/libLLVM/cmake/LLVMProcessSources.cmake
+share/libLLVM/cmake/TableGen.cmake
+share/libLLVM/cmake/VersionFromVCS.cmake
diff --git a/libLLVM-dfbsd/TODO b/libLLVM-dfbsd/TODO
new file mode 100644
index 0000000000..9fbcffbc10
--- /dev/null
+++ b/libLLVM-dfbsd/TODO
@@ -0,0 +1 @@
+Port llvm 6
diff --git a/libLLVM-dfbsd/buildlink3.mk b/libLLVM-dfbsd/buildlink3.mk
new file mode 100644
index 0000000000..58b50c7e23
--- /dev/null
+++ b/libLLVM-dfbsd/buildlink3.mk
@@ -0,0 +1,18 @@
+# $NetBSD: buildlink3.mk,v 1.5 2017/05/05 23:13:05 kamil Exp $
+
+BUILDLINK_TREE+=	libLLVM
+
+.if !defined(LIBLLVM_BUILDLINK3_MK)
+LIBLLVM_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.libLLVM+=	libLLVM>=4.0.0
+BUILDLINK_PKGSRCDIR.libLLVM?=	../../lang/libLLVM
+BUILDLINK_INCDIRS.libLLVM?=	include/libLLVM
+BUILDLINK_LIBDIRS.libLLVM?=	lib/libLLVM
+
+LLVM_CONFIG_PATH?=		${BUILDLINK_PREFIX.libLLVM}/libexec/libLLVM/llvm-config
+
+.include "../../devel/zlib/buildlink3.mk"
+.endif	# LIBLLVM_BUILDLINK3_MK
+
+BUILDLINK_TREE+=	-libLLVM
diff --git a/libLLVM-dfbsd/distinfo b/libLLVM-dfbsd/distinfo
new file mode 100644
index 0000000000..e720305b26
--- /dev/null
+++ b/libLLVM-dfbsd/distinfo
@@ -0,0 +1,14 @@
+$NetBSD: distinfo,v 1.11 2017/12/01 19:22:13 adam Exp $
+
+SHA1 (llvm-5.0.1.src.tar.xz) = 43d3659f8a3cef43e7435a3a874b0711f5888052
+RMD160 (llvm-5.0.1.src.tar.xz) = 3d17de87813313b6eac5b5dc8592f676c5cee561
+SHA512 (llvm-5.0.1.src.tar.xz) = bee1d45fca15ce725b1f2b1339b13eb6f750a3a321cfd099075477ec25835a8ca55b5366172c4aad46592dfd8afe372349ecf264f581463d017f9cee2d63c1cb
+Size (llvm-5.0.1.src.tar.xz) = 23428720 bytes
+SHA1 (patch-CMakeLists.txt) = 770e0bc00a987430b6c6be7e4141f33e5be54a8f
+SHA1 (patch-cmake_modules_AddLLVM.cmake) = 065b032ba377aca36c2d2131676c3b9a51c54b9d
+SHA1 (patch-cmake_modules_CMakeLists.txt) = 69514dafb36794eb6923a39ef219bdc7b09c37ee
+SHA1 (patch-cmake_modules_HandleLLVMOptions.cmake) = 271e6f5a8cebf8162c4e3b758e96f451b434269b
+SHA1 (patch-cmake_modules_TableGen.cmake) = 105aece4014c473a21ec6b427893239bbe881f89
+SHA1 (patch-lib_Support_Unix_Path.inc) = 9b579e3e949f86c7ac5f8df5718bb4e1be2443e0
+SHA1 (patch-tools_llvm-config_llvm-config.cpp) = 64d644c13c02d1f156ea4ab7227465edfb179951
+SHA1 (patch-tools_llvm-shlib_CMakeLists.txt) = 70d8f320f217d99e6f991709a080450bc05631cd
diff --git a/libLLVM-dfbsd/options.mk b/libLLVM-dfbsd/options.mk
new file mode 100644
index 0000000000..71e8611141
--- /dev/null
+++ b/libLLVM-dfbsd/options.mk
@@ -0,0 +1,56 @@
+# $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
+PKG_SUGGESTED_OPTIONS+=		llvm-target-amdgpu	# for mesa/radeon
+
+.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/libLLVM-dfbsd/patches/patch-CMakeLists.txt b/libLLVM-dfbsd/patches/patch-CMakeLists.txt
new file mode 100644
index 0000000000..c645d68601
--- /dev/null
+++ b/libLLVM-dfbsd/patches/patch-CMakeLists.txt
@@ -0,0 +1,24 @@
+$NetBSD: patch-CMakeLists.txt,v 1.1 2016/03/08 21:06:50 tnn Exp $
+
+Put headers in subdirectory to avoid conflict with clang.
+
+--- CMakeLists.txt.orig	2016-01-13 19:03:44.000000000 +0000
++++ CMakeLists.txt
+@@ -728,7 +728,7 @@ add_subdirectory(cmake/modules)
+ 
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+   install(DIRECTORY include/llvm include/llvm-c
+-    DESTINATION include
++    DESTINATION include/libLLVM
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
+@@ -740,7 +740,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+     )
+ 
+   install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm
+-    DESTINATION include
++    DESTINATION include/libLLVM
+     COMPONENT llvm-headers
+     FILES_MATCHING
+     PATTERN "*.def"
diff --git a/libLLVM-dfbsd/patches/patch-cmake_modules_AddLLVM.cmake b/libLLVM-dfbsd/patches/patch-cmake_modules_AddLLVM.cmake
new file mode 100644
index 0000000000..2f1bdb2327
--- /dev/null
+++ b/libLLVM-dfbsd/patches/patch-cmake_modules_AddLLVM.cmake
@@ -0,0 +1,49 @@
+$NetBSD: patch-cmake_modules_AddLLVM.cmake,v 1.5 2017/12/01 19:22:13 adam Exp $
+
+Disable library install rules. Handled manually.
+Make sure llvm-config goes in libexec/libLLVM to avoid conflict.
+Don't use non-portable -z discard-unused on SunOS.
+
+--- cmake/modules/AddLLVM.cmake.orig	2017-07-12 21:43:14.000000000 +0000
++++ cmake/modules/AddLLVM.cmake
+@@ -198,9 +198,6 @@ function(add_link_opts target_name)
+         # ld64's implementation of -dead_strip breaks tools that use plugins.
+         set_property(TARGET ${target_name} APPEND_STRING PROPERTY
+                      LINK_FLAGS " -Wl,-dead_strip")
+-      elseif(${CMAKE_SYSTEM_NAME} MATCHES "SunOS")
+-        set_property(TARGET ${target_name} APPEND_STRING PROPERTY
+-                     LINK_FLAGS " -Wl,-z -Wl,discard-unused=sections")
+       elseif(NOT WIN32 AND NOT LLVM_LINKER_IS_GOLD)
+         # Object files are compiled with -ffunction-data-sections.
+         # Versions of bfd ld < 2.23.1 have a bug in --gc-sections that breaks
+@@ -607,10 +604,6 @@ macro(add_llvm_library name)
+         set_property(GLOBAL PROPERTY LLVM_HAS_EXPORTS True)
+       endif()
+ 
+-      install(TARGETS ${name}
+-              ${export_to_llvmexports}
+-              ${install_type} DESTINATION ${install_dir}
+-              COMPONENT ${name})
+ 
+       if (NOT CMAKE_CONFIGURATION_TYPES)
+         add_custom_target(install-${name}
+@@ -648,10 +641,6 @@ macro(add_llvm_loadable_module name)
+           set_property(GLOBAL PROPERTY LLVM_HAS_EXPORTS True)
+         endif()
+ 
+-        install(TARGETS ${name}
+-                ${export_to_llvmexports}
+-                LIBRARY DESTINATION ${dlldir}
+-                ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
+       endif()
+       set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+     endif()
+@@ -839,7 +828,7 @@ macro(add_llvm_tool name)
+ 
+       install(TARGETS ${name}
+               ${export_to_llvmexports}
+-              RUNTIME DESTINATION ${LLVM_TOOLS_INSTALL_DIR}
++              RUNTIME DESTINATION libexec/libLLVM
+               COMPONENT ${name})
+ 
+       if (NOT CMAKE_CONFIGURATION_TYPES)
diff --git a/libLLVM-dfbsd/patches/patch-cmake_modules_CMakeLists.txt b/libLLVM-dfbsd/patches/patch-cmake_modules_CMakeLists.txt
new file mode 100644
index 0000000000..e3dc3d02ca
--- /dev/null
+++ b/libLLVM-dfbsd/patches/patch-cmake_modules_CMakeLists.txt
@@ -0,0 +1,12 @@
+$NetBSD: patch-cmake_modules_CMakeLists.txt,v 1.3 2017/03/17 22:38:18 adam Exp $
+
+Make sure cmake rules go in own directory to avoid conflicts.
+
+--- cmake/modules/CMakeLists.txt.orig	2016-11-08 05:02:18.000000000 +0000
++++ cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
++set(LLVM_INSTALL_PACKAGE_DIR share/libLLVM/cmake)
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+ 
+ # First for users who use an installed LLVM, create the LLVMExports.cmake file.
diff --git a/libLLVM-dfbsd/patches/patch-cmake_modules_HandleLLVMOptions.cmake b/libLLVM-dfbsd/patches/patch-cmake_modules_HandleLLVMOptions.cmake
new file mode 100644
index 0000000000..a04fdd2e71
--- /dev/null
+++ b/libLLVM-dfbsd/patches/patch-cmake_modules_HandleLLVMOptions.cmake
@@ -0,0 +1,14 @@
+$NetBSD: patch-cmake_modules_HandleLLVMOptions.cmake,v 1.1 2016/12/10 22:30:27 maya Exp $
+
+DragonflyBSD support
+
+--- cmake/modules/HandleLLVMOptions.cmake.orig 2016-01-06 19:05:19.000000000 +0000
++++ cmake/modules/HandleLLVMOptions.cmake
+@@ -132,6 +132,7 @@ endif()
+ # Pass -Wl,-z,defs. This makes sure all symbols are defined. Otherwise a DSO
+ # build might work on ELF but fail on MachO/COFF.
+ if(NOT (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" OR WIN32 OR CYGWIN OR
++        ${CMAKE_SYSTEM_NAME} MATCHES "DragonFly" OR
+         ${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD" OR
+         ${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD") AND
+    NOT LLVM_USE_SANITIZER)
diff --git a/libLLVM-dfbsd/patches/patch-cmake_modules_TableGen.cmake b/libLLVM-dfbsd/patches/patch-cmake_modules_TableGen.cmake
new file mode 100644
index 0000000000..91542a9c39
--- /dev/null
+++ b/libLLVM-dfbsd/patches/patch-cmake_modules_TableGen.cmake
@@ -0,0 +1,15 @@
+$NetBSD: patch-cmake_modules_TableGen.cmake,v 1.3 2017/03/17 22:38:18 adam Exp $
+
+Disable install of llvm-tblgen, provided by lang/llvm.
+
+--- cmake/modules/TableGen.cmake.orig	2016-12-06 17:09:29.000000000 +0000
++++ cmake/modules/TableGen.cmake
+@@ -134,7 +134,7 @@ macro(add_tablegen target project)
+     endif()
+   endif()
+ 
+-  if (${project} STREQUAL LLVM AND NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
++  if (${project} STREQUAL LLVM AND NOT LLVM_INSTALL_TOOLCHAIN_ONLY AND false)
+     if(${target} IN_LIST LLVM_DISTRIBUTION_COMPONENTS OR
+         NOT LLVM_DISTRIBUTION_COMPONENTS)
+       set(export_to_llvmexports EXPORT LLVMExports)
diff --git a/libLLVM-dfbsd/patches/patch-lib_Support_Unix_Path.inc b/libLLVM-dfbsd/patches/patch-lib_Support_Unix_Path.inc
new file mode 100644
index 0000000000..29cb7e9b31
--- /dev/null
+++ b/libLLVM-dfbsd/patches/patch-lib_Support_Unix_Path.inc
@@ -0,0 +1,39 @@
+$NetBSD$
+
+From DragonFly dports devel/llvm50.
+
+D31831: posix_fallocate isn't support on all filesystems
+
+https://reviews.llvm.org/D31831
+
+Check the return from posix_fallocate and if the filesystem doesn't support it fall back to ftruncate.
+
+Apparently for FreeBSD some recent version posix_fallocate does not work on zfs.
+
+--- lib/Support/Unix/Path.inc.orig	2017-06-29 13:15:31.000000000 +0000
++++ lib/Support/Unix/Path.inc
+@@ -68,13 +68,13 @@
+ 
+ #include <sys/types.h>
+ #if !defined(__APPLE__) && !defined(__OpenBSD__) && !defined(__FreeBSD__) &&   \
+-    !defined(__linux__)
++    !defined(__linux__) && !defined(__DragonFly__)
+ #include <sys/statvfs.h>
+ #define STATVFS statvfs
+ #define FSTATVFS fstatvfs
+ #define STATVFS_F_FRSIZE(vfs) vfs.f_frsize
+ #else
+-#if defined(__OpenBSD__) || defined(__FreeBSD__)
++#if defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__DragonFly__)
+ #include <sys/mount.h>
+ #include <sys/param.h>
+ #elif defined(__linux__)
+@@ -427,7 +427,7 @@ std::error_code resize_file(int FD, uint
+   // If we have posix_fallocate use it. Unlike ftruncate it always allocates
+   // space, so we get an error if the disk is full.
+   if (int Err = ::posix_fallocate(FD, 0, Size)) {
+-    if (Err != EOPNOTSUPP)
++    if (Err != EINVAL && Err != EOPNOTSUPP)
+       return std::error_code(Err, std::generic_category());
+   }
+ #endif
diff --git a/libLLVM-dfbsd/patches/patch-tools_llvm-config_llvm-config.cpp b/libLLVM-dfbsd/patches/patch-tools_llvm-config_llvm-config.cpp
new file mode 100644
index 0000000000..95fbadc5dc
--- /dev/null
+++ b/libLLVM-dfbsd/patches/patch-tools_llvm-config_llvm-config.cpp
@@ -0,0 +1,57 @@
+$NetBSD: patch-tools_llvm-config_llvm-config.cpp,v 1.4 2017/12/01 19:22:13 adam Exp $
+
+Avoid conflict with lang/clang.
+Use -lLLVM-3.8 instead of -lLLVM-3.8.0 so we don't break unnecessarily
+on patch updates.
+
+--- tools/llvm-config/llvm-config.cpp.orig	2017-06-01 20:51:55.000000000 +0000
++++ tools/llvm-config/llvm-config.cpp
+@@ -332,11 +332,11 @@ int main(int argc, char **argv) {
+         ("-I" + ActiveIncludeDir + " " + "-I" + ActiveObjRoot + "/include");
+   } else {
+     ActivePrefix = CurrentExecPrefix;
+-    ActiveIncludeDir = ActivePrefix + "/include";
++    ActiveIncludeDir = "@PREFIX@/include/libLLVM";
+     SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+     sys::fs::make_absolute(ActivePrefix, path);
+     ActiveBinDir = path.str();
+-    ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
++    ActiveLibDir = "@PREFIX@/lib/libLLVM";
+     ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
+@@ -372,14 +372,14 @@ int main(int argc, char **argv) {
+     StaticDir = ActiveLibDir;
+   } else if (HostTriple.isOSDarwin()) {
+     SharedExt = "dylib";
+-    SharedVersionedExt = LLVM_DYLIB_VERSION ".dylib";
++    SharedVersionedExt = ".dylib";
+     StaticExt = "a";
+     StaticDir = SharedDir = ActiveLibDir;
+     StaticPrefix = SharedPrefix = "lib";
+   } else {
+     // default to the unix values:
+     SharedExt = "so";
+-    SharedVersionedExt = LLVM_DYLIB_VERSION ".so";
++    SharedVersionedExt = "-@LLVM_MAJOR_MINOR@.so";
+     StaticExt = "a";
+     StaticDir = SharedDir = ActiveLibDir;
+     StaticPrefix = SharedPrefix = "lib";
+@@ -392,7 +392,7 @@ int main(int argc, char **argv) {
+ 
+   bool DyLibExists = false;
+   const std::string DyLibName =
+-      (SharedPrefix + "LLVM-" + SharedVersionedExt).str();
++      (SharedPrefix + "LLVM" + SharedVersionedExt).str();
+ 
+   // If LLVM_LINK_DYLIB is ON, the single shared library will be returned
+   // for "--libs", etc, if they exist. This behaviour can be overridden with
+@@ -493,7 +493,7 @@ int main(int argc, char **argv) {
+         OS << ActiveIncludeOption << ' ' << LLVM_CXXFLAGS << '\n';
+       } else if (Arg == "--ldflags") {
+         OS << ((HostTriple.isWindowsMSVCEnvironment()) ? "-LIBPATH:" : "-L")
+-           << ActiveLibDir << ' ' << LLVM_LDFLAGS << '\n';
++           << ActiveLibDir << " @COMPILER_RPATH_FLAG@" << ActiveLibDir << ' ' << LLVM_LDFLAGS << '\n';
+       } else if (Arg == "--system-libs") {
+         PrintSystemLibs = true;
+       } else if (Arg == "--libs") {
diff --git a/libLLVM-dfbsd/patches/patch-tools_llvm-shlib_CMakeLists.txt b/libLLVM-dfbsd/patches/patch-tools_llvm-shlib_CMakeLists.txt
new file mode 100644
index 0000000000..20dd2f6c35
--- /dev/null
+++ b/libLLVM-dfbsd/patches/patch-tools_llvm-shlib_CMakeLists.txt
@@ -0,0 +1,27 @@
+$NetBSD: patch-tools_llvm-shlib_CMakeLists.txt,v 1.4 2017/12/01 19:22:13 adam Exp $
+
+Use the Linux style linking everywhere except Darwin and SunOS.
+
+--- tools/llvm-shlib/CMakeLists.txt.orig	2017-07-11 01:17:44.000000000 +0000
++++ tools/llvm-shlib/CMakeLists.txt
+@@ -37,15 +37,15 @@ endif()
+ add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${SOURCES})
+ 
+ list(REMOVE_DUPLICATES LIB_NAMES)
+-if(("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") OR (MINGW) OR (HAIKU) OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD") OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "DragonFly")) # FIXME: It should be "GNU ld for elf"
++if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
++  set(LIB_NAMES -Wl,-all_load ${LIB_NAMES})
++elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "SunOS")
++  set(LIB_NAMES -Wl,-Bsymbolic -Wl,-z -Wl,allextract ${LIB_NAMES} -Wl,-z -Wl,defaultextract)
++else()
+   configure_file(
+   ${CMAKE_CURRENT_SOURCE_DIR}/simple_version_script.map.in
+   ${LLVM_LIBRARY_DIR}/tools/llvm-shlib/simple_version_script.map)
+-
+-  # GNU ld doesn't resolve symbols in the version script.
+   set(LIB_NAMES -Wl,--version-script,${LLVM_LIBRARY_DIR}/tools/llvm-shlib/simple_version_script.map -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
+-elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
+-  set(LIB_NAMES -Wl,-all_load ${LIB_NAMES})
+ endif()
+ 
+ target_link_libraries(LLVM PRIVATE ${LIB_NAMES})


Home | Main Index | Thread Index | Old Index