pkgsrc-WIP-changes archive

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

libLLVM: add package containing LLVM shared library only



Module Name:	pkgsrc-wip
Committed By:	Tobias Nygren <tnn%NetBSD.org@localhost>
Pushed By:	tnn
Date:		Mon Feb 22 00:53:27 2016 +0100
Changeset:	014093e5f492573e8a1196ca434d3822fe78ce3c

Modified Files:
	Makefile
Added Files:
	libLLVM/DESCR
	libLLVM/Makefile
	libLLVM/PLIST
	libLLVM/buildlink3.mk
	libLLVM/distinfo
	libLLVM/options.mk
	libLLVM/patches/patch-CMakeLists.txt
	libLLVM/patches/patch-cmake_modules_AddLLVM.cmake
	libLLVM/patches/patch-cmake_modules_CMakeLists.txt
	libLLVM/patches/patch-cmake_modules_TableGen.cmake
	libLLVM/patches/patch-include_llvm_Support_Host.h
	libLLVM/patches/patch-lib_Transforms_CMakeLists.txt
	libLLVM/patches/patch-tools_llvm-shlib_CMakeLists.txt

Log Message:
libLLVM: add package containing LLVM shared library only

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

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

diffstat:
 Makefile                                           |   1 +
 libLLVM/DESCR                                      |   7 +
 libLLVM/Makefile                                   | 105 +++
 libLLVM/PLIST                                      | 829 +++++++++++++++++++++
 libLLVM/buildlink3.mk                              |  18 +
 libLLVM/distinfo                                   |  13 +
 libLLVM/options.mk                                 |  38 +
 libLLVM/patches/patch-CMakeLists.txt               |  24 +
 libLLVM/patches/patch-cmake_modules_AddLLVM.cmake  |  29 +
 libLLVM/patches/patch-cmake_modules_CMakeLists.txt |  12 +
 libLLVM/patches/patch-cmake_modules_TableGen.cmake |  15 +
 libLLVM/patches/patch-include_llvm_Support_Host.h  |  28 +
 .../patches/patch-lib_Transforms_CMakeLists.txt    |  12 +
 .../patches/patch-tools_llvm-shlib_CMakeLists.txt  |  21 +
 14 files changed, 1152 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index 9e4b6a2..2a53361 100644
--- a/Makefile
+++ b/Makefile
@@ -1488,6 +1488,7 @@ SUBDIR+=	leveldb
 SUBDIR+=	lgogdownloader-git
 SUBDIR+=	lhapdf
 SUBDIR+=	lhs2tex
+SUBDIR+=	libLLVM
 SUBDIR+=	libGenome
 SUBDIR+=	libalkimia
 SUBDIR+=	libanimal
diff --git a/libLLVM/DESCR b/libLLVM/DESCR
new file mode 100644
index 0000000..c785317
--- /dev/null
+++ b/libLLVM/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/Makefile b/libLLVM/Makefile
new file mode 100644
index 0000000..a9af861
--- /dev/null
+++ b/libLLVM/Makefile
@@ -0,0 +1,105 @@
+# $NetBSD$
+
+DISTNAME=	llvm-3.8.0rc1.src
+PKGNAME=	${DISTNAME:S/llvm/libLLVM/:S/.src//}
+CATEGORIES=	lang devel
+MASTER_SITES=	http://llvm.org/pre-releases/3.8.0/rc1/
+#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++
+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+=	-DLLVM_BUILD_LLVM_DYLIB=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
+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_SED.fix-cnf=	-e 's|ActivePrefix + "/include"|"${PREFIX}/include/libLLVM"|g'
+SUBST_SED.fix-cnf+=	-e 's|ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX|"${PREFIX}/lib/libLLVM"|g'
+SUBST_SED.fix-cnf+=	-e 's|"-L" << ActiveLibDir|"${COMPILER_RPATH_FLAG}" << ActiveLibDir << " " << &|g'
+
+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"
+.include "options.mk"
+
+post-extract:
+	${RUN} mkdir -p ${WRKDIR}/build
+
+post-install:
+	${INSTALL_LIB_DIR} ${DESTDIR}${PREFIX}/lib/libLLVM
+	${INSTALL_LIB} ${WRKDIR}/build/lib/libLLVM-3.8.so ${DESTDIR}${PREFIX}/lib/libLLVM/libLLVM-3.8.so
+	${LN} -s libLLVM-3.8.so ${DESTDIR}${PREFIX}/lib/libLLVM/libLLVM.so
+	${LN} -s libLLVM-3.8.so ${DESTDIR}${PREFIX}/lib/libLLVM/libLLVM-3.8.0.so
+
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../lang/python/tool.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/libLLVM/PLIST b/libLLVM/PLIST
new file mode 100644
index 0000000..97b7249
--- /dev/null
+++ b/libLLVM/PLIST
@@ -0,0 +1,829 @@
+@comment $NetBSD$
+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/ArrayRef.h
+include/libLLVM/llvm/ADT/BitVector.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/SCCIterator.h
+include/libLLVM/llvm/ADT/STLExtras.h
+include/libLLVM/llvm/ADT/ScopedHashTable.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_node.h
+include/libLLVM/llvm/ADT/iterator.h
+include/libLLVM/llvm/ADT/iterator_range.h
+include/libLLVM/llvm/Analysis/AliasAnalysis.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/CFLAliasAnalysis.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/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/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/LoopInfo.h
+include/libLLVM/llvm/Analysis/LoopInfoImpl.h
+include/libLLVM/llvm/Analysis/LoopIterator.h
+include/libLLVM/llvm/Analysis/LoopPass.h
+include/libLLVM/llvm/Analysis/MemoryBuiltins.h
+include/libLLVM/llvm/Analysis/MemoryDependenceAnalysis.h
+include/libLLVM/llvm/Analysis/MemoryLocation.h
+include/libLLVM/llvm/Analysis/ObjCARCAliasAnalysis.h
+include/libLLVM/llvm/Analysis/ObjCARCAnalysisUtils.h
+include/libLLVM/llvm/Analysis/ObjCARCInstKind.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/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/ValueTracking.h
+include/libLLVM/llvm/Analysis/VectorUtils.h
+include/libLLVM/llvm/AsmParser/Parser.h
+include/libLLVM/llvm/AsmParser/SlotMapping.h
+include/libLLVM/llvm/Bitcode/BitCodes.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/Bitcode/ReaderWriter.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/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/ISDOpcodes.h
+include/libLLVM/llvm/CodeGen/IntrinsicLowering.h
+include/libLLVM/llvm/CodeGen/LatencyPriorityQueue.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/LiveStackAnalysis.h
+include/libLLVM/llvm/CodeGen/LiveVariables.h
+include/libLLVM/llvm/CodeGen/MIRParser/MIRParser.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/MachineFunctionAnalysis.h
+include/libLLVM/llvm/CodeGen/MachineFunctionInitializer.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/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/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/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/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/ResourcePriorityQueue.h
+include/libLLVM/llvm/CodeGen/RuntimeLibcalls.h
+include/libLLVM/llvm/CodeGen/ScheduleDAG.h
+include/libLLVM/llvm/CodeGen/ScheduleDAGInstrs.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/SelectionDAGISel.h
+include/libLLVM/llvm/CodeGen/SelectionDAGNodes.h
+include/libLLVM/llvm/CodeGen/SlotIndexes.h
+include/libLLVM/llvm/CodeGen/StackMaps.h
+include/libLLVM/llvm/CodeGen/StackProtector.h
+include/libLLVM/llvm/CodeGen/TargetLoweringObjectFileImpl.h
+include/libLLVM/llvm/CodeGen/TargetSchedule.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/llvm-config.h
+include/libLLVM/llvm/DebugInfo/CodeView/CodeView.h
+include/libLLVM/llvm/DebugInfo/CodeView/CodeViewOStream.h
+include/libLLVM/llvm/DebugInfo/CodeView/FieldListRecordBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/FunctionId.h
+include/libLLVM/llvm/DebugInfo/CodeView/Line.h
+include/libLLVM/llvm/DebugInfo/CodeView/ListRecordBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/MemoryTypeTableBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/MethodListRecordBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeIndex.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeRecord.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeRecordBuilder.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeSymbolEmitter.h
+include/libLLVM/llvm/DebugInfo/CodeView/TypeTableBuilder.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/DWARFCompileUnit.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFContext.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/DWARFDebugRangeList.h
+include/libLLVM/llvm/DebugInfo/DWARF/DWARFFormValue.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/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/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/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/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/Symbolize/DIPrinter.h
+include/libLLVM/llvm/DebugInfo/Symbolize/SymbolizableModule.h
+include/libLLVM/llvm/DebugInfo/Symbolize/Symbolize.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/JITSymbolFlags.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/JITSymbol.h
+include/libLLVM/llvm/ExecutionEngine/Orc/LambdaResolver.h
+include/libLLVM/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/LogicalDylib.h
+include/libLLVM/llvm/ExecutionEngine/Orc/NullResolver.h
+include/libLLVM/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/ObjectTransformLayer.h
+include/libLLVM/llvm/ExecutionEngine/Orc/OrcArchitectureSupport.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/RPCChannel.h
+include/libLLVM/llvm/ExecutionEngine/Orc/RPCUtils.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.h
+include/libLLVM/llvm/IR/Attributes.inc
+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/DiagnosticInfo.h
+include/libLLVM/llvm/IR/DiagnosticPrinter.h
+include/libLLVM/llvm/IR/Dominators.h
+include/libLLVM/llvm/IR/Function.h
+include/libLLVM/llvm/IR/FunctionInfo.h
+include/libLLVM/llvm/IR/GVMaterializer.h
+include/libLLVM/llvm/IR/GetElementPtrTypeIterator.h
+include/libLLVM/llvm/IR/GlobalAlias.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/NoFolder.h
+include/libLLVM/llvm/IR/OperandTraits.h
+include/libLLVM/llvm/IR/Operator.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/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/LTOCodeGenerator.h
+include/libLLVM/llvm/LTO/LTOModule.h
+include/libLLVM/llvm/LibDriver/LibDriver.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/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/MCAsmLayout.h
+include/libLLVM/llvm/MC/MCAssembler.h
+include/libLLVM/llvm/MC/MCCodeEmitter.h
+include/libLLVM/llvm/MC/MCCodeGenInfo.h
+include/libLLVM/llvm/MC/MCContext.h
+include/libLLVM/llvm/MC/MCDirectives.h
+include/libLLVM/llvm/MC/MCDisassembler.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/MCExternalSymbolizer.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/MCRegisterInfo.h
+include/libLLVM/llvm/MC/MCRelocationInfo.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/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/MCSymbolizer.h
+include/libLLVM/llvm/MC/MCTargetAsmParser.h
+include/libLLVM/llvm/MC/MCTargetOptions.h
+include/libLLVM/llvm/MC/MCTargetOptionsCommandFlags.h
+include/libLLVM/llvm/MC/MCValue.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/MC/YAML.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/COFFYAML.h
+include/libLLVM/llvm/Object/ELF.h
+include/libLLVM/llvm/Object/ELFObjectFile.h
+include/libLLVM/llvm/Object/ELFTypes.h
+include/libLLVM/llvm/Object/ELFYAML.h
+include/libLLVM/llvm/Object/Error.h
+include/libLLVM/llvm/Object/FunctionIndexObjectFile.h
+include/libLLVM/llvm/Object/IRObjectFile.h
+include/libLLVM/llvm/Object/MachO.h
+include/libLLVM/llvm/Object/MachOUniversal.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/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/CoverageMapping.h
+include/libLLVM/llvm/ProfileData/CoverageMappingReader.h
+include/libLLVM/llvm/ProfileData/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/SampleProf.h
+include/libLLVM/llvm/ProfileData/SampleProfReader.h
+include/libLLVM/llvm/ProfileData/SampleProfWriter.h
+include/libLLVM/llvm/Support/AIXDataTypesFix.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/BlockFrequency.h
+include/libLLVM/llvm/Support/BranchProbability.h
+include/libLLVM/llvm/Support/CBindingWrapping.h
+include/libLLVM/llvm/Support/COFF.h
+include/libLLVM/llvm/Support/COM.h
+include/libLLVM/llvm/Support/Capacity.h
+include/libLLVM/llvm/Support/Casting.h
+include/libLLVM/llvm/Support/CodeGen.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/DataStream.h
+include/libLLVM/llvm/Support/DataTypes.h
+include/libLLVM/llvm/Support/Debug.h
+include/libLLVM/llvm/Support/Dwarf.def
+include/libLLVM/llvm/Support/Dwarf.h
+include/libLLVM/llvm/Support/DynamicLibrary.h
+include/libLLVM/llvm/Support/ELF.h
+include/libLLVM/llvm/Support/ELFRelocs/AArch64.def
+include/libLLVM/llvm/Support/ELFRelocs/ARM.def
+include/libLLVM/llvm/Support/ELFRelocs/AVR.def
+include/libLLVM/llvm/Support/ELFRelocs/Hexagon.def
+include/libLLVM/llvm/Support/ELFRelocs/Mips.def
+include/libLLVM/llvm/Support/ELFRelocs/PowerPC.def
+include/libLLVM/llvm/Support/ELFRelocs/PowerPC64.def
+include/libLLVM/llvm/Support/ELFRelocs/Sparc.def
+include/libLLVM/llvm/Support/ELFRelocs/SystemZ.def
+include/libLLVM/llvm/Support/ELFRelocs/WebAssembly.def
+include/libLLVM/llvm/Support/ELFRelocs/i386.def
+include/libLLVM/llvm/Support/ELFRelocs/x86_64.def
+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/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/FormattedStream.h
+include/libLLVM/llvm/Support/GCOV.h
+include/libLLVM/llvm/Support/GenericDomTree.h
+include/libLLVM/llvm/Support/GenericDomTreeConstruction.h
+include/libLLVM/llvm/Support/GraphWriter.h
+include/libLLVM/llvm/Support/Host.h
+include/libLLVM/llvm/Support/JamCRC.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/MD5.h
+include/libLLVM/llvm/Support/MachO.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/MemoryObject.h
+include/libLLVM/llvm/Support/MipsABIFlags.h
+include/libLLVM/llvm/Support/Mutex.h
+include/libLLVM/llvm/Support/MutexGuard.h
+include/libLLVM/llvm/Support/OnDiskHashTable.h
+include/libLLVM/llvm/Support/Options.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/RegistryParser.h
+include/libLLVM/llvm/Support/SMLoc.h
+include/libLLVM/llvm/Support/SaveAndRestore.h
+include/libLLVM/llvm/Support/ScaledNumber.h
+include/libLLVM/llvm/Support/Signals.h
+include/libLLVM/llvm/Support/Solaris.h
+include/libLLVM/llvm/Support/SourceMgr.h
+include/libLLVM/llvm/Support/SpecialCaseList.h
+include/libLLVM/llvm/Support/StreamingMemoryObject.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/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/TimeValue.h
+include/libLLVM/llvm/Support/Timer.h
+include/libLLVM/llvm/Support/ToolOutputFile.h
+include/libLLVM/llvm/Support/TrailingObjects.h
+include/libLLVM/llvm/Support/Unicode.h
+include/libLLVM/llvm/Support/UnicodeCharRanges.h
+include/libLLVM/llvm/Support/UniqueLock.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/thread.h
+include/libLLVM/llvm/Support/type_traits.h
+include/libLLVM/llvm/TableGen/Error.h
+include/libLLVM/llvm/TableGen/Main.h
+include/libLLVM/llvm/TableGen/Record.h
+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/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.h
+include/libLLVM/llvm/Target/TargetOptions.h
+include/libLLVM/llvm/Target/TargetRecip.h
+include/libLLVM/llvm/Target/TargetRegisterInfo.h
+include/libLLVM/llvm/Target/TargetSchedule.td
+include/libLLVM/llvm/Target/TargetSelectionDAG.td
+include/libLLVM/llvm/Target/TargetSelectionDAGInfo.h
+include/libLLVM/llvm/Target/TargetSubtargetInfo.h
+include/libLLVM/llvm/Transforms/IPO.h
+include/libLLVM/llvm/Transforms/IPO/ForceFunctionAttrs.h
+include/libLLVM/llvm/Transforms/IPO/FunctionImport.h
+include/libLLVM/llvm/Transforms/IPO/InferFunctionAttrs.h
+include/libLLVM/llvm/Transforms/IPO/InlinerPass.h
+include/libLLVM/llvm/Transforms/IPO/LowerBitSets.h
+include/libLLVM/llvm/Transforms/IPO/PassManagerBuilder.h
+include/libLLVM/llvm/Transforms/IPO/StripDeadPrototypes.h
+include/libLLVM/llvm/Transforms/InstCombine/InstCombine.h
+include/libLLVM/llvm/Transforms/InstCombine/InstCombineWorklist.h
+include/libLLVM/llvm/Transforms/Instrumentation.h
+include/libLLVM/llvm/Transforms/ObjCARC.h
+include/libLLVM/llvm/Transforms/Scalar.h
+include/libLLVM/llvm/Transforms/Scalar/ADCE.h
+include/libLLVM/llvm/Transforms/Scalar/EarlyCSE.h
+include/libLLVM/llvm/Transforms/Scalar/LowerExpectIntrinsic.h
+include/libLLVM/llvm/Transforms/Scalar/SROA.h
+include/libLLVM/llvm/Transforms/Scalar/SimplifyCFG.h
+include/libLLVM/llvm/Transforms/Utils/ASanStackFrameLayout.h
+include/libLLVM/llvm/Transforms/Utils/BasicBlockUtils.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/GlobalStatus.h
+include/libLLVM/llvm/Transforms/Utils/IntegerDivision.h
+include/libLLVM/llvm/Transforms/Utils/Local.h
+include/libLLVM/llvm/Transforms/Utils/LoopUtils.h
+include/libLLVM/llvm/Transforms/Utils/LoopVersioning.h
+include/libLLVM/llvm/Transforms/Utils/ModuleUtils.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/SimplifyIndVar.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/ValueMapper.h
+include/libLLVM/llvm/Transforms/Vectorize.h
+lib/libLLVM/libLLVM-3.8.so
+lib/libLLVM/libLLVM-3.8.0.so
+lib/libLLVM/libLLVM.so
+libexec/libLLVM/llvm-config
+share/libLLVM/cmake/AddLLVM.cmake
+share/libLLVM/cmake/AddLLVMDefinitions.cmake
+share/libLLVM/cmake/AddOCaml.cmake
+share/libLLVM/cmake/AddSphinxTarget.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/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
diff --git a/libLLVM/buildlink3.mk b/libLLVM/buildlink3.mk
new file mode 100644
index 0000000..2491bd0
--- /dev/null
+++ b/libLLVM/buildlink3.mk
@@ -0,0 +1,18 @@
+# $NetBSD: buildlink3.mk,v 1.3 2015/09/26 08:42:19 tnn Exp $
+
+BUILDLINK_TREE+=	libLLVM
+
+.if !defined(LIBLLVM_BUILDLINK3_MK)
+LIBLLVM_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.libLLVM+=	libLLVM>=3.8.0rc1
+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/distinfo b/libLLVM/distinfo
new file mode 100644
index 0000000..92cce90
--- /dev/null
+++ b/libLLVM/distinfo
@@ -0,0 +1,13 @@
+$NetBSD: distinfo,v 1.35 2015/09/11 01:21:57 tnn Exp $
+
+SHA1 (llvm-3.8.0rc1.src.tar.xz) = ba4574a9a6c6c68fe21c32dd4f74e037614c8259
+RMD160 (llvm-3.8.0rc1.src.tar.xz) = 89a530ba0b4c14422e87e7b556408bff2077aced
+SHA512 (llvm-3.8.0rc1.src.tar.xz) = 0fbb2a5c16aad989a00b0068ab094882eb6f945237f1b82e102835321dc74cdbdaaa2d16dbc73df93ad466b3221ad440c18bd79e70e1f3de92e0a11de717d20e
+Size (llvm-3.8.0rc1.src.tar.xz) = 16559376 bytes
+SHA1 (patch-CMakeLists.txt) = 770e0bc00a987430b6c6be7e4141f33e5be54a8f
+SHA1 (patch-cmake_modules_AddLLVM.cmake) = 66e1bddb986b23a87fa413e26119d676e396e658
+SHA1 (patch-cmake_modules_CMakeLists.txt) = 8297c4b9ddd3ac05a06d8a4a8040be46b5b8b39f
+SHA1 (patch-cmake_modules_TableGen.cmake) = 53be811936dd5157e6eb08db8cd51a7265bc8c7f
+SHA1 (patch-include_llvm_Support_Host.h) = 55a9fab6ee49ec09a2fd644747a6dddd6b39f942
+SHA1 (patch-lib_Transforms_CMakeLists.txt) = cafdd73a39574aa3a83db35997ff918f87191d18
+SHA1 (patch-tools_llvm-shlib_CMakeLists.txt) = 8f538db138219c2a3ce394b7a3c21f277d5544dd
diff --git a/libLLVM/options.mk b/libLLVM/options.mk
new file mode 100644
index 0000000..5dc7a4f
--- /dev/null
+++ b/libLLVM/options.mk
@@ -0,0 +1,38 @@
+# $NetBSD$
+
+PKG_OPTIONS_VAR=	PKG_OPTIONS.llvm
+
+LLVM_TARGETS=	AArch64 AMDGPU ARM BPF CppBackend 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
+
+# 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
+
+CMAKE_ARGS+=	-DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS_TO_BUILD:ts;}"
diff --git a/libLLVM/patches/patch-CMakeLists.txt b/libLLVM/patches/patch-CMakeLists.txt
new file mode 100644
index 0000000..189b14a
--- /dev/null
+++ b/libLLVM/patches/patch-CMakeLists.txt
@@ -0,0 +1,24 @@
+$NetBSD$
+
+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/patches/patch-cmake_modules_AddLLVM.cmake b/libLLVM/patches/patch-cmake_modules_AddLLVM.cmake
new file mode 100644
index 0000000..d3fd164
--- /dev/null
+++ b/libLLVM/patches/patch-cmake_modules_AddLLVM.cmake
@@ -0,0 +1,29 @@
+$NetBSD$
+
+Disable library install rules. Handled manually.
+Make sure llvm-config goes in libexec/libLLVM to avoid conflict.
+
+--- cmake/modules/AddLLVM.cmake.orig	2016-01-12 07:44:58.000000000 +0000
++++ cmake/modules/AddLLVM.cmake
+@@ -555,10 +555,12 @@ macro(add_llvm_library name)
+         set(install_type ARCHIVE)
+       endif()
+ 
++      if (false)
+       install(TARGETS ${name}
+             EXPORT LLVMExports
+             ${install_type} DESTINATION ${install_dir}
+             COMPONENT ${name})
++      endif()
+ 
+       if (NOT CMAKE_CONFIGURATION_TYPES)
+         add_custom_target(install-${name}
+@@ -699,7 +701,7 @@ macro(add_llvm_tool name)
+     if( LLVM_BUILD_TOOLS )
+       install(TARGETS ${name}
+               EXPORT LLVMExports
+-              RUNTIME DESTINATION bin
++              RUNTIME DESTINATION libexec/libLLVM
+               COMPONENT ${name})
+ 
+       if (NOT CMAKE_CONFIGURATION_TYPES)
diff --git a/libLLVM/patches/patch-cmake_modules_CMakeLists.txt b/libLLVM/patches/patch-cmake_modules_CMakeLists.txt
new file mode 100644
index 0000000..319a24c
--- /dev/null
+++ b/libLLVM/patches/patch-cmake_modules_CMakeLists.txt
@@ -0,0 +1,12 @@
+$NetBSD$
+
+Make sure cmake rules go in own directory to avoid conflicts.
+
+--- cmake/modules/CMakeLists.txt.orig	2014-12-29 11:16:19.000000000 +0000
++++ cmake/modules/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(LLVM_INSTALL_PACKAGE_DIR share/llvm/cmake)
++set(LLVM_INSTALL_PACKAGE_DIR share/libLLVM/cmake)
+ set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
+ 
+ get_property(LLVM_EXPORTS GLOBAL PROPERTY LLVM_EXPORTS)
diff --git a/libLLVM/patches/patch-cmake_modules_TableGen.cmake b/libLLVM/patches/patch-cmake_modules_TableGen.cmake
new file mode 100644
index 0000000..90f5f93
--- /dev/null
+++ b/libLLVM/patches/patch-cmake_modules_TableGen.cmake
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Disable install of llvm-tblgen, provided by lang/llvm.
+
+--- cmake/modules/TableGen.cmake.orig	2015-10-23 19:48:17.000000000 +0000
++++ cmake/modules/TableGen.cmake
+@@ -138,7 +138,7 @@ macro(add_tablegen target project)
+       set_target_properties(${target} PROPERTIES LINK_FLAGS -Wl,--stack,16777216)
+     endif(CMAKE_SIZEOF_VOID_P MATCHES "8")
+   endif( MINGW )
+-  if (${project} STREQUAL LLVM AND NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
++  if (${project} STREQUAL LLVM AND NOT LLVM_INSTALL_TOOLCHAIN_ONLY AND false)
+     install(TARGETS ${target}
+             EXPORT LLVMExports
+             RUNTIME DESTINATION bin)
diff --git a/libLLVM/patches/patch-include_llvm_Support_Host.h b/libLLVM/patches/patch-include_llvm_Support_Host.h
new file mode 100644
index 0000000..a533511
--- /dev/null
+++ b/libLLVM/patches/patch-include_llvm_Support_Host.h
@@ -0,0 +1,28 @@
+$NetBSD$
+
+Fix lack of machine/endian.h on solaris
+http://permalink.gmane.org/gmane.comp.compilers.llvm.devel/63225
+
+--- include/llvm/Support/Host.h.orig	2015-06-23 09:49:53.000000000 +0000
++++ include/llvm/Support/Host.h
+@@ -18,6 +18,20 @@
+ 
+ #if defined(__linux__) || defined(__GNU__)
+ #include <endian.h>
++#elif defined(__sun) & defined(__SVR4)
++# ifndef BYTE_ORDER
++# define LITTLE_ENDIAN 1234
++# define BIG_ENDIAN 4321
++# if defined(__sun) & defined(__SVR4)
++# include <sys/isa_defs.h>
++# ifdef _LITTLE_ENDIAN
++# define BYTE_ORDER LITTLE_ENDIAN
++# endif
++# ifdef _BIG_ENDIAN
++# define BYTE_ORDER BIG_ENDIAN
++# endif
++# endif /* sun */
++# endif /* BYTE_ORDER */
+ #else
+ #if !defined(BYTE_ORDER) && !defined(LLVM_ON_WIN32)
+ #include <machine/endian.h>
diff --git a/libLLVM/patches/patch-lib_Transforms_CMakeLists.txt b/libLLVM/patches/patch-lib_Transforms_CMakeLists.txt
new file mode 100644
index 0000000..6db96c3
--- /dev/null
+++ b/libLLVM/patches/patch-lib_Transforms_CMakeLists.txt
@@ -0,0 +1,12 @@
+$NetBSD$
+
+Disable "hello" module.
+
+--- lib/Transforms/CMakeLists.txt.orig	2013-01-28 01:35:51.000000000 +0000
++++ lib/Transforms/CMakeLists.txt
+@@ -4,5 +4,4 @@ add_subdirectory(InstCombine)
+ add_subdirectory(Scalar)
+ add_subdirectory(IPO)
+ add_subdirectory(Vectorize)
+-add_subdirectory(Hello)
+ add_subdirectory(ObjCARC)
diff --git a/libLLVM/patches/patch-tools_llvm-shlib_CMakeLists.txt b/libLLVM/patches/patch-tools_llvm-shlib_CMakeLists.txt
new file mode 100644
index 0000000..2b7d7b4
--- /dev/null
+++ b/libLLVM/patches/patch-tools_llvm-shlib_CMakeLists.txt
@@ -0,0 +1,21 @@
+$NetBSD$
+
+Use the Linux style linking everywhere except Darwin.
+
+--- ./tools/llvm-shlib/CMakeLists.txt.orig	2015-11-04 23:11:12.000000000 +0000
++++ ./tools/llvm-shlib/CMakeLists.txt
+@@ -41,11 +41,10 @@ endif()
+ add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${SOURCES})
+ 
+ list(REMOVE_DUPLICATES LIB_NAMES)
+-if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") # FIXME: It should be "GNU ld for elf"
+-  # GNU ld doesn't resolve symbols in the version script.
+-  set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
+-elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
++if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
+   set(LIB_NAMES -Wl,-all_load ${LIB_NAMES})
++else()
++  set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
+ endif()
+ 
+ target_link_libraries(LLVM PRIVATE ${LIB_NAMES})


Home | Main Index | Thread Index | Old Index