summaryrefslogtreecommitdiffstats
path: root/lib/clang
diff options
context:
space:
mode:
Diffstat (limited to 'lib/clang')
-rw-r--r--lib/clang/Makefile51
-rw-r--r--lib/clang/clang.build.mk96
-rw-r--r--lib/clang/clang.lib.mk9
-rw-r--r--lib/clang/include/ARMGenAsmWriter.inc2
-rw-r--r--lib/clang/include/ARMGenCallingConv.inc2
-rw-r--r--lib/clang/include/ARMGenCodeEmitter.inc2
-rw-r--r--lib/clang/include/ARMGenDAGISel.inc2
-rw-r--r--lib/clang/include/ARMGenInstrInfo.inc2
-rw-r--r--lib/clang/include/ARMGenInstrNames.inc2
-rw-r--r--lib/clang/include/ARMGenRegisterInfo.h.inc2
-rw-r--r--lib/clang/include/ARMGenRegisterInfo.inc2
-rw-r--r--lib/clang/include/ARMGenRegisterNames.inc2
-rw-r--r--lib/clang/include/ARMGenSubtarget.inc2
-rw-r--r--lib/clang/include/IA64GenAsmWriter.inc2
-rw-r--r--lib/clang/include/IA64GenDAGISel.inc2
-rw-r--r--lib/clang/include/IA64GenInstrInfo.inc2
-rw-r--r--lib/clang/include/IA64GenInstrNames.inc2
-rw-r--r--lib/clang/include/IA64GenRegisterInfo.h.inc2
-rw-r--r--lib/clang/include/IA64GenRegisterInfo.inc2
-rw-r--r--lib/clang/include/IA64GenRegisterNames.inc2
-rw-r--r--lib/clang/include/Makefile16
-rw-r--r--lib/clang/include/MipsGenAsmWriter.inc2
-rw-r--r--lib/clang/include/MipsGenCallingConv.inc2
-rw-r--r--lib/clang/include/MipsGenDAGISel.inc2
-rw-r--r--lib/clang/include/MipsGenInstrInfo.inc2
-rw-r--r--lib/clang/include/MipsGenInstrNames.inc2
-rw-r--r--lib/clang/include/MipsGenRegisterInfo.h.inc2
-rw-r--r--lib/clang/include/MipsGenRegisterInfo.inc2
-rw-r--r--lib/clang/include/MipsGenRegisterNames.inc2
-rw-r--r--lib/clang/include/MipsGenSubtarget.inc2
-rw-r--r--lib/clang/include/PPCGenAsmWriter.inc2
-rw-r--r--lib/clang/include/PPCGenCallingConv.inc2
-rw-r--r--lib/clang/include/PPCGenCodeEmitter.inc2
-rw-r--r--lib/clang/include/PPCGenDAGISel.inc2
-rw-r--r--lib/clang/include/PPCGenInstrInfo.inc2
-rw-r--r--lib/clang/include/PPCGenInstrNames.inc2
-rw-r--r--lib/clang/include/PPCGenRegisterInfo.h.inc2
-rw-r--r--lib/clang/include/PPCGenRegisterInfo.inc2
-rw-r--r--lib/clang/include/PPCGenRegisterNames.inc2
-rw-r--r--lib/clang/include/PPCGenSubtarget.inc2
-rw-r--r--lib/clang/include/X86GenAsmMatcher.inc2
-rw-r--r--lib/clang/include/X86GenAsmWriter.inc2
-rw-r--r--lib/clang/include/X86GenAsmWriter1.inc2
-rw-r--r--lib/clang/include/X86GenCallingConv.inc2
-rw-r--r--lib/clang/include/X86GenDAGISel.inc2
-rw-r--r--lib/clang/include/X86GenFastISel.inc2
-rw-r--r--lib/clang/include/X86GenInstrInfo.inc2
-rw-r--r--lib/clang/include/X86GenInstrNames.inc2
-rw-r--r--lib/clang/include/X86GenRegisterInfo.h.inc2
-rw-r--r--lib/clang/include/X86GenRegisterInfo.inc2
-rw-r--r--lib/clang/include/X86GenRegisterNames.inc2
-rw-r--r--lib/clang/include/X86GenSubtarget.inc2
-rw-r--r--lib/clang/include/clang/AST/Attrs.inc2
-rw-r--r--lib/clang/include/clang/AST/DeclNodes.inc2
-rw-r--r--lib/clang/include/clang/AST/StmtNodes.inc2
-rw-r--r--lib/clang/include/clang/Basic/AttrList.inc2
-rw-r--r--lib/clang/include/clang/Basic/DiagnosticASTKinds.inc2
-rw-r--r--lib/clang/include/clang/Basic/DiagnosticAnalysisKinds.inc2
-rw-r--r--lib/clang/include/clang/Basic/DiagnosticCommonKinds.inc2
-rw-r--r--lib/clang/include/clang/Basic/DiagnosticDriverKinds.inc2
-rw-r--r--lib/clang/include/clang/Basic/DiagnosticFrontendKinds.inc2
-rw-r--r--lib/clang/include/clang/Basic/DiagnosticGroups.inc2
-rw-r--r--lib/clang/include/clang/Basic/DiagnosticLexKinds.inc2
-rw-r--r--lib/clang/include/clang/Basic/DiagnosticParseKinds.inc2
-rw-r--r--lib/clang/include/clang/Basic/DiagnosticSemaKinds.inc2
-rw-r--r--lib/clang/include/clang/Basic/Version.inc10
-rw-r--r--lib/clang/include/clang/Basic/arm_neon.inc2
-rw-r--r--lib/clang/include/clang/Driver/CC1AsOptions.inc2
-rw-r--r--lib/clang/include/clang/Driver/CC1Options.inc2
-rw-r--r--lib/clang/include/clang/Driver/Options.inc2
-rw-r--r--lib/clang/include/llvm/ADT/iterator.h78
-rw-r--r--lib/clang/include/llvm/Config/AsmParsers.def6
-rw-r--r--lib/clang/include/llvm/Config/AsmPrinters.def8
-rw-r--r--lib/clang/include/llvm/Config/Disassemblers.def5
-rw-r--r--lib/clang/include/llvm/Config/Targets.def8
-rw-r--r--lib/clang/include/llvm/Config/config.h569
-rw-r--r--lib/clang/include/llvm/Intrinsics.gen2
-rw-r--r--lib/clang/include/llvm/System/DataTypes.h113
-rw-r--r--lib/clang/libclanganalysis/Makefile20
-rw-r--r--lib/clang/libclangast/Makefile51
-rw-r--r--lib/clang/libclangbasic/Makefile31
-rw-r--r--lib/clang/libclangchecker/Makefile89
-rw-r--r--lib/clang/libclangcodegen/Makefile50
-rw-r--r--lib/clang/libclangdriver/Makefile31
-rw-r--r--lib/clang/libclangfrontend/Makefile51
-rw-r--r--lib/clang/libclanglex/Makefile29
-rw-r--r--lib/clang/libclangparse/Makefile25
-rw-r--r--lib/clang/libclangrewrite/Makefile25
-rw-r--r--lib/clang/libclangsema/Makefile50
-rw-r--r--lib/clang/libllvmanalysis/Makefile54
-rw-r--r--lib/clang/libllvmarmasmparser/Makefile14
-rw-r--r--lib/clang/libllvmarmasmprinter/Makefile16
-rw-r--r--lib/clang/libllvmarmcodegen/Makefile45
-rw-r--r--lib/clang/libllvmarminfo/Makefile12
-rw-r--r--lib/clang/libllvmasmparser/Makefile10
-rw-r--r--lib/clang/libllvmasmprinter/Makefile14
-rw-r--r--lib/clang/libllvmbitreader/Makefile11
-rw-r--r--lib/clang/libllvmbitwriter/Makefile11
-rw-r--r--lib/clang/libllvmcodegen/Makefile87
-rw-r--r--lib/clang/libllvmcore/Makefile41
-rw-r--r--lib/clang/libllvminstcombine/Makefile22
-rw-r--r--lib/clang/libllvmipa/Makefile13
-rw-r--r--lib/clang/libllvmipo/Makefile31
-rw-r--r--lib/clang/libllvmmc/Makefile35
-rw-r--r--lib/clang/libllvmmcparser/Makefile15
-rw-r--r--lib/clang/libllvmmipsasmprinter/Makefile14
-rw-r--r--lib/clang/libllvmmipscodegen/Makefile28
-rw-r--r--lib/clang/libllvmmipsinfo/Makefile12
-rw-r--r--lib/clang/libllvmpowerpcasmprinter/Makefile14
-rw-r--r--lib/clang/libllvmpowerpccodegen/Makefile31
-rw-r--r--lib/clang/libllvmpowerpcinfo/Makefile12
-rw-r--r--lib/clang/libllvmscalaropts/Makefile38
-rw-r--r--lib/clang/libllvmselectiondag/Makefile30
-rw-r--r--lib/clang/libllvmsupport/Makefile52
-rw-r--r--lib/clang/libllvmsystem/Makefile26
-rw-r--r--lib/clang/libllvmtarget/Makefile20
-rw-r--r--lib/clang/libllvmtransformutils/Makefile34
-rw-r--r--lib/clang/libllvmx86asmparser/Makefile14
-rw-r--r--lib/clang/libllvmx86asmprinter/Makefile19
-rw-r--r--lib/clang/libllvmx86codegen/Makefile37
-rw-r--r--lib/clang/libllvmx86info/Makefile12
121 files changed, 2377 insertions, 0 deletions
diff --git a/lib/clang/Makefile b/lib/clang/Makefile
new file mode 100644
index 0000000..cced6c1
--- /dev/null
+++ b/lib/clang/Makefile
@@ -0,0 +1,51 @@
+# $FreeBSD$
+
+SUBDIR= libclanganalysis \
+ libclangast \
+ libclangbasic \
+ libclangchecker \
+ libclangcodegen \
+ libclangdriver \
+ libclangfrontend \
+ libclanglex \
+ libclangparse \
+ libclangrewrite \
+ libclangsema \
+ \
+ libllvmanalysis \
+ libllvmasmparser \
+ libllvmasmprinter \
+ libllvmbitreader \
+ libllvmbitwriter \
+ libllvmcodegen \
+ libllvminstcombine \
+ libllvmcore \
+ libllvmipa \
+ libllvmipo \
+ libllvmmc \
+ libllvmmcparser \
+ libllvmscalaropts \
+ libllvmselectiondag \
+ libllvmsupport \
+ libllvmsystem \
+ libllvmtarget \
+ libllvmtransformutils \
+ \
+ libllvmarmasmparser \
+ libllvmarmasmprinter \
+ libllvmarmcodegen \
+ libllvmarminfo \
+ libllvmmipsasmprinter \
+ libllvmmipscodegen \
+ libllvmmipsinfo \
+ libllvmpowerpcasmprinter \
+ libllvmpowerpccodegen \
+ libllvmpowerpcinfo \
+ libllvmx86asmparser \
+ libllvmx86asmprinter \
+ libllvmx86codegen \
+ libllvmx86info \
+ \
+ include
+
+.include <bsd.subdir.mk>
diff --git a/lib/clang/clang.build.mk b/lib/clang/clang.build.mk
new file mode 100644
index 0000000..fad4317
--- /dev/null
+++ b/lib/clang/clang.build.mk
@@ -0,0 +1,96 @@
+# $FreeBSD$
+
+CLANG_SRCS=${LLVM_SRCS}/tools/clang
+
+CFLAGS+=-I${LLVM_SRCS}/include -I${CLANG_SRCS}/include \
+ -I${LLVM_SRCS}/${SRCDIR} ${INCDIR:C/^/-I${LLVM_SRCS}\//} -I. \
+ -I${LLVM_SRCS}/../../lib/clang/include \
+ -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD \
+ -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS #-DNDEBUG
+
+# Correct for gcc miscompilation when compiling on PPC with -O2
+.if ${MACHINE_ARCH} == "powerpc"
+CFLAGS+= -O1
+.endif
+
+TARGET_ARCH?= ${MACHINE_ARCH}
+# XXX: 8.0, to keep __FreeBSD_cc_version happy
+CFLAGS+=-DLLVM_HOSTTRIPLE=\"${TARGET_ARCH}-undermydesk-freebsd9.0\"
+
+.PATH: ${LLVM_SRCS}/${SRCDIR}
+
+TBLGEN=tblgen ${CFLAGS:M-I*}
+
+Intrinsics.inc.h: ${LLVM_SRCS}/include/llvm/Intrinsics.td
+ ${TBLGEN} -gen-intrinsic \
+ ${LLVM_SRCS}/include/llvm/Intrinsics.td > ${.TARGET}
+.for arch in \
+ ARM/ARM Mips/Mips PowerPC/PPC X86/X86
+. for hdr in \
+ AsmMatcher/-gen-asm-matcher \
+ AsmWriter1/-gen-asm-writer,-asmwriternum=1 \
+ AsmWriter/-gen-asm-writer \
+ CallingConv/-gen-callingconv \
+ CodeEmitter/-gen-emitter \
+ DAGISel/-gen-dag-isel \
+ FastISel/-gen-fast-isel \
+ InstrInfo/-gen-instr-desc \
+ InstrNames/-gen-instr-enums \
+ RegisterInfo.h/-gen-register-desc-header \
+ RegisterInfo/-gen-register-desc \
+ RegisterNames/-gen-register-enums \
+ Subtarget/-gen-subtarget
+${arch:T}Gen${hdr:H:C/$/.inc.h/}: ${LLVM_SRCS}/lib/Target/${arch:H}/${arch:T}.td
+ ${TBLGEN} ${hdr:T:C/,/ /g} \
+ ${LLVM_SRCS}/lib/Target/${arch:H}/${arch:T}.td > ${.TARGET}
+. endfor
+.endfor
+
+Attrs.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td
+ ${TBLGEN} -I${CLANG_SRCS}/include/clang/Basic \
+ -gen-clang-attr-classes ${.ALLSRC} > ${.TARGET}
+
+AttrList.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td
+ ${TBLGEN} -I${CLANG_SRCS}/include/clang/Basic \
+ -gen-clang-attr-list ${.ALLSRC} > ${.TARGET}
+
+DeclNodes.inc.h: ${CLANG_SRCS}/include/clang/Basic/DeclNodes.td
+ ${TBLGEN} -I${CLANG_SRCS}/include/clang/Basic \
+ -gen-clang-decl-nodes ${.ALLSRC} > ${.TARGET}
+
+StmtNodes.inc.h: ${CLANG_SRCS}/include/clang/Basic/StmtNodes.td
+ ${TBLGEN} -I${CLANG_SRCS}/include/clang/AST \
+ -gen-clang-stmt-nodes ${.ALLSRC} > ${.TARGET}
+
+arm_neon.inc.h: ${CLANG_SRCS}/include/clang/Basic/arm_neon.td
+ ${TBLGEN} -I${CLANG_SRCS}/include/clang/Basic \
+ -gen-arm-neon-sema ${.ALLSRC} > ${.TARGET}
+
+DiagnosticGroups.inc.h: ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td
+ ${TBLGEN} -I${CLANG_SRCS}/include/clang/Basic \
+ -gen-clang-diag-groups \
+ ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td > ${.TARGET}
+.for hdr in AST Analysis Common Driver Frontend Lex Parse Sema
+Diagnostic${hdr}Kinds.inc.h: ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td
+ ${TBLGEN} -I${CLANG_SRCS}/include/clang/Basic \
+ -gen-clang-diags-defs -clang-component=${hdr} \
+ ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td > ${.TARGET}
+.endfor
+Options.inc.h: ${CLANG_SRCS}/include/clang/Driver/Options.td
+ ${TBLGEN} -I${CLANG_SRCS}/include/clang/Driver \
+ -gen-opt-parser-defs \
+ ${CLANG_SRCS}/include/clang/Driver/Options.td > ${.TARGET}
+
+CC1Options.inc.h: ${CLANG_SRCS}/include/clang/Driver/CC1Options.td
+ ${TBLGEN} -I${CLANG_SRCS}/include/clang/Driver \
+ -gen-opt-parser-defs \
+ ${CLANG_SRCS}/include/clang/Driver/CC1Options.td > ${.TARGET}
+
+CC1AsOptions.inc.h: ${CLANG_SRCS}/include/clang/Driver/CC1AsOptions.td
+ ${TBLGEN} -I${CLANG_SRCS}/include/clang/Driver \
+ -gen-opt-parser-defs \
+ ${CLANG_SRCS}/include/clang/Driver/CC1AsOptions.td > ${.TARGET}
+
+SRCS+= ${TGHDRS:C/$/.inc.h/}
+DPADD+= ${TGHDRS:C/$/.inc.h/}
+CLEANFILES+= ${TGHDRS:C/$/.inc.h/}
diff --git a/lib/clang/clang.lib.mk b/lib/clang/clang.lib.mk
new file mode 100644
index 0000000..f7bd281
--- /dev/null
+++ b/lib/clang/clang.lib.mk
@@ -0,0 +1,9 @@
+# $FreeBSD$
+
+LLVM_SRCS=${.CURDIR}/../../../contrib/llvm
+
+.include "clang.build.mk"
+
+INTERNALLIB=
+
+.include <bsd.lib.mk>
diff --git a/lib/clang/include/ARMGenAsmWriter.inc b/lib/clang/include/ARMGenAsmWriter.inc
new file mode 100644
index 0000000..896bedd
--- /dev/null
+++ b/lib/clang/include/ARMGenAsmWriter.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "ARMGenAsmWriter.inc.h"
diff --git a/lib/clang/include/ARMGenCallingConv.inc b/lib/clang/include/ARMGenCallingConv.inc
new file mode 100644
index 0000000..f7d850a
--- /dev/null
+++ b/lib/clang/include/ARMGenCallingConv.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "ARMGenCallingConv.inc.h"
diff --git a/lib/clang/include/ARMGenCodeEmitter.inc b/lib/clang/include/ARMGenCodeEmitter.inc
new file mode 100644
index 0000000..083a6c3
--- /dev/null
+++ b/lib/clang/include/ARMGenCodeEmitter.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "ARMGenCodeEmitter.inc.h"
diff --git a/lib/clang/include/ARMGenDAGISel.inc b/lib/clang/include/ARMGenDAGISel.inc
new file mode 100644
index 0000000..6ad15b1
--- /dev/null
+++ b/lib/clang/include/ARMGenDAGISel.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "ARMGenDAGISel.inc.h"
diff --git a/lib/clang/include/ARMGenInstrInfo.inc b/lib/clang/include/ARMGenInstrInfo.inc
new file mode 100644
index 0000000..29c26ed
--- /dev/null
+++ b/lib/clang/include/ARMGenInstrInfo.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "ARMGenInstrInfo.inc.h"
diff --git a/lib/clang/include/ARMGenInstrNames.inc b/lib/clang/include/ARMGenInstrNames.inc
new file mode 100644
index 0000000..9ecc271
--- /dev/null
+++ b/lib/clang/include/ARMGenInstrNames.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "ARMGenInstrNames.inc.h"
diff --git a/lib/clang/include/ARMGenRegisterInfo.h.inc b/lib/clang/include/ARMGenRegisterInfo.h.inc
new file mode 100644
index 0000000..03bd3a2
--- /dev/null
+++ b/lib/clang/include/ARMGenRegisterInfo.h.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "ARMGenRegisterInfo.h.inc.h"
diff --git a/lib/clang/include/ARMGenRegisterInfo.inc b/lib/clang/include/ARMGenRegisterInfo.inc
new file mode 100644
index 0000000..aa40e18
--- /dev/null
+++ b/lib/clang/include/ARMGenRegisterInfo.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "ARMGenRegisterInfo.inc.h"
diff --git a/lib/clang/include/ARMGenRegisterNames.inc b/lib/clang/include/ARMGenRegisterNames.inc
new file mode 100644
index 0000000..7eb6a0d
--- /dev/null
+++ b/lib/clang/include/ARMGenRegisterNames.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "ARMGenRegisterNames.inc.h"
diff --git a/lib/clang/include/ARMGenSubtarget.inc b/lib/clang/include/ARMGenSubtarget.inc
new file mode 100644
index 0000000..55d5e8e
--- /dev/null
+++ b/lib/clang/include/ARMGenSubtarget.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "ARMGenSubtarget.inc.h"
diff --git a/lib/clang/include/IA64GenAsmWriter.inc b/lib/clang/include/IA64GenAsmWriter.inc
new file mode 100644
index 0000000..dddc793
--- /dev/null
+++ b/lib/clang/include/IA64GenAsmWriter.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "IA64GenAsmWriter.inc.h"
diff --git a/lib/clang/include/IA64GenDAGISel.inc b/lib/clang/include/IA64GenDAGISel.inc
new file mode 100644
index 0000000..c6ae3dc
--- /dev/null
+++ b/lib/clang/include/IA64GenDAGISel.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "IA64GenDAGISel.inc.h"
diff --git a/lib/clang/include/IA64GenInstrInfo.inc b/lib/clang/include/IA64GenInstrInfo.inc
new file mode 100644
index 0000000..7fe83f6
--- /dev/null
+++ b/lib/clang/include/IA64GenInstrInfo.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "IA64GenInstrInfo.inc.h"
diff --git a/lib/clang/include/IA64GenInstrNames.inc b/lib/clang/include/IA64GenInstrNames.inc
new file mode 100644
index 0000000..6b2c58e
--- /dev/null
+++ b/lib/clang/include/IA64GenInstrNames.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "IA64GenInstrNames.inc.h"
diff --git a/lib/clang/include/IA64GenRegisterInfo.h.inc b/lib/clang/include/IA64GenRegisterInfo.h.inc
new file mode 100644
index 0000000..38086d4
--- /dev/null
+++ b/lib/clang/include/IA64GenRegisterInfo.h.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "IA64GenRegisterInfo.h.inc.h"
diff --git a/lib/clang/include/IA64GenRegisterInfo.inc b/lib/clang/include/IA64GenRegisterInfo.inc
new file mode 100644
index 0000000..89405ed
--- /dev/null
+++ b/lib/clang/include/IA64GenRegisterInfo.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "IA64GenRegisterInfo.inc.h"
diff --git a/lib/clang/include/IA64GenRegisterNames.inc b/lib/clang/include/IA64GenRegisterNames.inc
new file mode 100644
index 0000000..d1f0970
--- /dev/null
+++ b/lib/clang/include/IA64GenRegisterNames.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "IA64GenRegisterNames.inc.h"
diff --git a/lib/clang/include/Makefile b/lib/clang/include/Makefile
new file mode 100644
index 0000000..e8319f8
--- /dev/null
+++ b/lib/clang/include/Makefile
@@ -0,0 +1,16 @@
+# $FreeBSD$
+
+.PATH: ${.CURDIR}/../../../contrib/llvm/tools/clang/lib/Headers
+
+INCSDIR=${INCLUDEDIR}/clang/2.8
+
+INCS= emmintrin.h \
+ mm_malloc.h \
+ mmintrin.h \
+ pmmintrin.h \
+ tmmintrin.h \
+ xmmintrin.h
+
+.include <bsd.init.mk>
+.include <bsd.incs.mk>
+.include <bsd.obj.mk>
diff --git a/lib/clang/include/MipsGenAsmWriter.inc b/lib/clang/include/MipsGenAsmWriter.inc
new file mode 100644
index 0000000..1f512f1
--- /dev/null
+++ b/lib/clang/include/MipsGenAsmWriter.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "MipsGenAsmWriter.inc.h"
diff --git a/lib/clang/include/MipsGenCallingConv.inc b/lib/clang/include/MipsGenCallingConv.inc
new file mode 100644
index 0000000..6f6fee6
--- /dev/null
+++ b/lib/clang/include/MipsGenCallingConv.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "MipsGenCallingConv.inc.h"
diff --git a/lib/clang/include/MipsGenDAGISel.inc b/lib/clang/include/MipsGenDAGISel.inc
new file mode 100644
index 0000000..cb63943
--- /dev/null
+++ b/lib/clang/include/MipsGenDAGISel.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "MipsGenDAGISel.inc.h"
diff --git a/lib/clang/include/MipsGenInstrInfo.inc b/lib/clang/include/MipsGenInstrInfo.inc
new file mode 100644
index 0000000..ec57075
--- /dev/null
+++ b/lib/clang/include/MipsGenInstrInfo.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "MipsGenInstrInfo.inc.h"
diff --git a/lib/clang/include/MipsGenInstrNames.inc b/lib/clang/include/MipsGenInstrNames.inc
new file mode 100644
index 0000000..78759ee
--- /dev/null
+++ b/lib/clang/include/MipsGenInstrNames.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "MipsGenInstrNames.inc.h"
diff --git a/lib/clang/include/MipsGenRegisterInfo.h.inc b/lib/clang/include/MipsGenRegisterInfo.h.inc
new file mode 100644
index 0000000..af66c5f
--- /dev/null
+++ b/lib/clang/include/MipsGenRegisterInfo.h.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "MipsGenRegisterInfo.h.inc.h"
diff --git a/lib/clang/include/MipsGenRegisterInfo.inc b/lib/clang/include/MipsGenRegisterInfo.inc
new file mode 100644
index 0000000..95a7b70
--- /dev/null
+++ b/lib/clang/include/MipsGenRegisterInfo.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "MipsGenRegisterInfo.inc.h"
diff --git a/lib/clang/include/MipsGenRegisterNames.inc b/lib/clang/include/MipsGenRegisterNames.inc
new file mode 100644
index 0000000..3b00971
--- /dev/null
+++ b/lib/clang/include/MipsGenRegisterNames.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "MipsGenRegisterNames.inc.h"
diff --git a/lib/clang/include/MipsGenSubtarget.inc b/lib/clang/include/MipsGenSubtarget.inc
new file mode 100644
index 0000000..9fb4a70
--- /dev/null
+++ b/lib/clang/include/MipsGenSubtarget.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "MipsGenSubtarget.inc.h"
diff --git a/lib/clang/include/PPCGenAsmWriter.inc b/lib/clang/include/PPCGenAsmWriter.inc
new file mode 100644
index 0000000..e31e777
--- /dev/null
+++ b/lib/clang/include/PPCGenAsmWriter.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "PPCGenAsmWriter.inc.h"
diff --git a/lib/clang/include/PPCGenCallingConv.inc b/lib/clang/include/PPCGenCallingConv.inc
new file mode 100644
index 0000000..6f28640
--- /dev/null
+++ b/lib/clang/include/PPCGenCallingConv.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "PPCGenCallingConv.inc.h"
diff --git a/lib/clang/include/PPCGenCodeEmitter.inc b/lib/clang/include/PPCGenCodeEmitter.inc
new file mode 100644
index 0000000..525c853
--- /dev/null
+++ b/lib/clang/include/PPCGenCodeEmitter.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "PPCGenCodeEmitter.inc.h"
diff --git a/lib/clang/include/PPCGenDAGISel.inc b/lib/clang/include/PPCGenDAGISel.inc
new file mode 100644
index 0000000..b783e11
--- /dev/null
+++ b/lib/clang/include/PPCGenDAGISel.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "PPCGenDAGISel.inc.h"
diff --git a/lib/clang/include/PPCGenInstrInfo.inc b/lib/clang/include/PPCGenInstrInfo.inc
new file mode 100644
index 0000000..80a11d5
--- /dev/null
+++ b/lib/clang/include/PPCGenInstrInfo.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "PPCGenInstrInfo.inc.h"
diff --git a/lib/clang/include/PPCGenInstrNames.inc b/lib/clang/include/PPCGenInstrNames.inc
new file mode 100644
index 0000000..67ae90d
--- /dev/null
+++ b/lib/clang/include/PPCGenInstrNames.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "PPCGenInstrNames.inc.h"
diff --git a/lib/clang/include/PPCGenRegisterInfo.h.inc b/lib/clang/include/PPCGenRegisterInfo.h.inc
new file mode 100644
index 0000000..bce5f45
--- /dev/null
+++ b/lib/clang/include/PPCGenRegisterInfo.h.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "PPCGenRegisterInfo.h.inc.h"
diff --git a/lib/clang/include/PPCGenRegisterInfo.inc b/lib/clang/include/PPCGenRegisterInfo.inc
new file mode 100644
index 0000000..9e26cb1
--- /dev/null
+++ b/lib/clang/include/PPCGenRegisterInfo.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "PPCGenRegisterInfo.inc.h"
diff --git a/lib/clang/include/PPCGenRegisterNames.inc b/lib/clang/include/PPCGenRegisterNames.inc
new file mode 100644
index 0000000..09e7a2d
--- /dev/null
+++ b/lib/clang/include/PPCGenRegisterNames.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "PPCGenRegisterNames.inc.h"
diff --git a/lib/clang/include/PPCGenSubtarget.inc b/lib/clang/include/PPCGenSubtarget.inc
new file mode 100644
index 0000000..7032e52
--- /dev/null
+++ b/lib/clang/include/PPCGenSubtarget.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "PPCGenSubtarget.inc.h"
diff --git a/lib/clang/include/X86GenAsmMatcher.inc b/lib/clang/include/X86GenAsmMatcher.inc
new file mode 100644
index 0000000..6ed8afd
--- /dev/null
+++ b/lib/clang/include/X86GenAsmMatcher.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenAsmMatcher.inc.h"
diff --git a/lib/clang/include/X86GenAsmWriter.inc b/lib/clang/include/X86GenAsmWriter.inc
new file mode 100644
index 0000000..4879a0c
--- /dev/null
+++ b/lib/clang/include/X86GenAsmWriter.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenAsmWriter.inc.h"
diff --git a/lib/clang/include/X86GenAsmWriter1.inc b/lib/clang/include/X86GenAsmWriter1.inc
new file mode 100644
index 0000000..03f88b8
--- /dev/null
+++ b/lib/clang/include/X86GenAsmWriter1.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenAsmWriter1.inc.h"
diff --git a/lib/clang/include/X86GenCallingConv.inc b/lib/clang/include/X86GenCallingConv.inc
new file mode 100644
index 0000000..dce5266
--- /dev/null
+++ b/lib/clang/include/X86GenCallingConv.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenCallingConv.inc.h"
diff --git a/lib/clang/include/X86GenDAGISel.inc b/lib/clang/include/X86GenDAGISel.inc
new file mode 100644
index 0000000..5a5ab94
--- /dev/null
+++ b/lib/clang/include/X86GenDAGISel.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenDAGISel.inc.h"
diff --git a/lib/clang/include/X86GenFastISel.inc b/lib/clang/include/X86GenFastISel.inc
new file mode 100644
index 0000000..4074cf6
--- /dev/null
+++ b/lib/clang/include/X86GenFastISel.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenFastISel.inc.h"
diff --git a/lib/clang/include/X86GenInstrInfo.inc b/lib/clang/include/X86GenInstrInfo.inc
new file mode 100644
index 0000000..6222825
--- /dev/null
+++ b/lib/clang/include/X86GenInstrInfo.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenInstrInfo.inc.h"
diff --git a/lib/clang/include/X86GenInstrNames.inc b/lib/clang/include/X86GenInstrNames.inc
new file mode 100644
index 0000000..9c856f4
--- /dev/null
+++ b/lib/clang/include/X86GenInstrNames.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenInstrNames.inc.h"
diff --git a/lib/clang/include/X86GenRegisterInfo.h.inc b/lib/clang/include/X86GenRegisterInfo.h.inc
new file mode 100644
index 0000000..4a76e0d
--- /dev/null
+++ b/lib/clang/include/X86GenRegisterInfo.h.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenRegisterInfo.h.inc.h"
diff --git a/lib/clang/include/X86GenRegisterInfo.inc b/lib/clang/include/X86GenRegisterInfo.inc
new file mode 100644
index 0000000..6d78e41
--- /dev/null
+++ b/lib/clang/include/X86GenRegisterInfo.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenRegisterInfo.inc.h"
diff --git a/lib/clang/include/X86GenRegisterNames.inc b/lib/clang/include/X86GenRegisterNames.inc
new file mode 100644
index 0000000..ad3d722
--- /dev/null
+++ b/lib/clang/include/X86GenRegisterNames.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenRegisterNames.inc.h"
diff --git a/lib/clang/include/X86GenSubtarget.inc b/lib/clang/include/X86GenSubtarget.inc
new file mode 100644
index 0000000..1e8907d
--- /dev/null
+++ b/lib/clang/include/X86GenSubtarget.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "X86GenSubtarget.inc.h"
diff --git a/lib/clang/include/clang/AST/Attrs.inc b/lib/clang/include/clang/AST/Attrs.inc
new file mode 100644
index 0000000..0eee102
--- /dev/null
+++ b/lib/clang/include/clang/AST/Attrs.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "Attrs.inc.h"
diff --git a/lib/clang/include/clang/AST/DeclNodes.inc b/lib/clang/include/clang/AST/DeclNodes.inc
new file mode 100644
index 0000000..d5b9a90
--- /dev/null
+++ b/lib/clang/include/clang/AST/DeclNodes.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "DeclNodes.inc.h"
diff --git a/lib/clang/include/clang/AST/StmtNodes.inc b/lib/clang/include/clang/AST/StmtNodes.inc
new file mode 100644
index 0000000..cd35d7a
--- /dev/null
+++ b/lib/clang/include/clang/AST/StmtNodes.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "StmtNodes.inc.h"
diff --git a/lib/clang/include/clang/Basic/AttrList.inc b/lib/clang/include/clang/Basic/AttrList.inc
new file mode 100644
index 0000000..319eb5a
--- /dev/null
+++ b/lib/clang/include/clang/Basic/AttrList.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "AttrList.inc.h"
diff --git a/lib/clang/include/clang/Basic/DiagnosticASTKinds.inc b/lib/clang/include/clang/Basic/DiagnosticASTKinds.inc
new file mode 100644
index 0000000..bc558c5
--- /dev/null
+++ b/lib/clang/include/clang/Basic/DiagnosticASTKinds.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "DiagnosticASTKinds.inc.h"
diff --git a/lib/clang/include/clang/Basic/DiagnosticAnalysisKinds.inc b/lib/clang/include/clang/Basic/DiagnosticAnalysisKinds.inc
new file mode 100644
index 0000000..5472209
--- /dev/null
+++ b/lib/clang/include/clang/Basic/DiagnosticAnalysisKinds.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "DiagnosticAnalysisKinds.inc.h"
diff --git a/lib/clang/include/clang/Basic/DiagnosticCommonKinds.inc b/lib/clang/include/clang/Basic/DiagnosticCommonKinds.inc
new file mode 100644
index 0000000..b2ac7a3
--- /dev/null
+++ b/lib/clang/include/clang/Basic/DiagnosticCommonKinds.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "DiagnosticCommonKinds.inc.h"
diff --git a/lib/clang/include/clang/Basic/DiagnosticDriverKinds.inc b/lib/clang/include/clang/Basic/DiagnosticDriverKinds.inc
new file mode 100644
index 0000000..b719c10
--- /dev/null
+++ b/lib/clang/include/clang/Basic/DiagnosticDriverKinds.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "DiagnosticDriverKinds.inc.h"
diff --git a/lib/clang/include/clang/Basic/DiagnosticFrontendKinds.inc b/lib/clang/include/clang/Basic/DiagnosticFrontendKinds.inc
new file mode 100644
index 0000000..85dde99
--- /dev/null
+++ b/lib/clang/include/clang/Basic/DiagnosticFrontendKinds.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "DiagnosticFrontendKinds.inc.h"
diff --git a/lib/clang/include/clang/Basic/DiagnosticGroups.inc b/lib/clang/include/clang/Basic/DiagnosticGroups.inc
new file mode 100644
index 0000000..1c5fa1a
--- /dev/null
+++ b/lib/clang/include/clang/Basic/DiagnosticGroups.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "DiagnosticGroups.inc.h"
diff --git a/lib/clang/include/clang/Basic/DiagnosticLexKinds.inc b/lib/clang/include/clang/Basic/DiagnosticLexKinds.inc
new file mode 100644
index 0000000..8a0e527
--- /dev/null
+++ b/lib/clang/include/clang/Basic/DiagnosticLexKinds.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "DiagnosticLexKinds.inc.h"
diff --git a/lib/clang/include/clang/Basic/DiagnosticParseKinds.inc b/lib/clang/include/clang/Basic/DiagnosticParseKinds.inc
new file mode 100644
index 0000000..5a4948e
--- /dev/null
+++ b/lib/clang/include/clang/Basic/DiagnosticParseKinds.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "DiagnosticParseKinds.inc.h"
diff --git a/lib/clang/include/clang/Basic/DiagnosticSemaKinds.inc b/lib/clang/include/clang/Basic/DiagnosticSemaKinds.inc
new file mode 100644
index 0000000..d08c7f1
--- /dev/null
+++ b/lib/clang/include/clang/Basic/DiagnosticSemaKinds.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "DiagnosticSemaKinds.inc.h"
diff --git a/lib/clang/include/clang/Basic/Version.inc b/lib/clang/include/clang/Basic/Version.inc
new file mode 100644
index 0000000..f8515b7
--- /dev/null
+++ b/lib/clang/include/clang/Basic/Version.inc
@@ -0,0 +1,10 @@
+/* $FreeBSD$ */
+
+#define CLANG_VERSION 2.8
+#define CLANG_VERSION_MAJOR 2
+#define CLANG_VERSION_MINOR 8
+
+#define CLANG_VENDOR "FreeBSD "
+#define CLANG_VENDOR_SUFFIX " 20100720"
+
+#define SVN_REVISION "108428"
diff --git a/lib/clang/include/clang/Basic/arm_neon.inc b/lib/clang/include/clang/Basic/arm_neon.inc
new file mode 100644
index 0000000..7b4c875
--- /dev/null
+++ b/lib/clang/include/clang/Basic/arm_neon.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "arm_neon.inc.h"
diff --git a/lib/clang/include/clang/Driver/CC1AsOptions.inc b/lib/clang/include/clang/Driver/CC1AsOptions.inc
new file mode 100644
index 0000000..3d76958
--- /dev/null
+++ b/lib/clang/include/clang/Driver/CC1AsOptions.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "CC1AsOptions.inc.h"
diff --git a/lib/clang/include/clang/Driver/CC1Options.inc b/lib/clang/include/clang/Driver/CC1Options.inc
new file mode 100644
index 0000000..33029a0
--- /dev/null
+++ b/lib/clang/include/clang/Driver/CC1Options.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "CC1Options.inc.h"
diff --git a/lib/clang/include/clang/Driver/Options.inc b/lib/clang/include/clang/Driver/Options.inc
new file mode 100644
index 0000000..37422c1
--- /dev/null
+++ b/lib/clang/include/clang/Driver/Options.inc
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "Options.inc.h"
diff --git a/lib/clang/include/llvm/ADT/iterator.h b/lib/clang/include/llvm/ADT/iterator.h
new file mode 100644
index 0000000..b406266
--- /dev/null
+++ b/lib/clang/include/llvm/ADT/iterator.h
@@ -0,0 +1,78 @@
+/* include/llvm/ADT/iterator.h. Generated from iterator.h.in by configure. */
+//==-- llvm/ADT/iterator.h - Portable wrapper around <iterator> --*- C++ -*-==//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This file provides a wrapper around the mysterious <iterator> header file.
+// In GCC 2.95.3, the file defines a bidirectional_iterator class (and other
+// friends), instead of the standard iterator class. In GCC 3.1, the
+// bidirectional_iterator class got moved out and the new, standards compliant,
+// iterator<> class was added. Because there is nothing that we can do to get
+// correct behavior on both compilers, we have this header with #ifdef's. Gross
+// huh?
+//
+// By #includ'ing this file, you get the contents of <iterator> plus the
+// following classes in the global namespace:
+//
+// 1. bidirectional_iterator
+// 2. forward_iterator
+//
+// The #if directives' expressions are filled in by Autoconf.
+//
+// $FreeBSD$
+//===----------------------------------------------------------------------===//
+
+#ifndef LLVM_ADT_ITERATOR_H
+#define LLVM_ADT_ITERATOR_H
+
+#include <iterator>
+
+#define HAVE_BI_ITERATOR 0
+#define HAVE_STD_ITERATOR 1
+#define HAVE_FWD_ITERATOR 0
+
+#ifdef _MSC_VER
+# define HAVE_BI_ITERATOR 0
+# define HAVE_STD_ITERATOR 1
+# define HAVE_FWD_ITERATOR 0
+#endif
+
+#if !HAVE_BI_ITERATOR
+# if HAVE_STD_ITERATOR
+/// If the bidirectional iterator is not defined, we attempt to define it in
+/// terms of the C++ standard iterator. Otherwise, we import it with a "using"
+/// statement.
+///
+template<class Ty, class PtrDiffTy>
+struct bidirectional_iterator
+ : public std::iterator<std::bidirectional_iterator_tag, Ty, PtrDiffTy> {
+};
+# else
+# error "Need to have standard iterator to define bidirectional iterator!"
+# endif
+#else
+using std::bidirectional_iterator;
+#endif
+
+#if !HAVE_FWD_ITERATOR
+# if HAVE_STD_ITERATOR
+/// If the forward iterator is not defined, attempt to define it in terms of
+/// the C++ standard iterator. Otherwise, we import it with a "using" statement.
+///
+template<class Ty, class PtrDiffTy>
+struct forward_iterator
+ : public std::iterator<std::forward_iterator_tag, Ty, PtrDiffTy> {
+};
+# else
+# error "Need to have standard iterator to define forward iterator!"
+# endif
+#else
+using std::forward_iterator;
+#endif
+
+#endif // LLVM_ADT_ITERATOR_H
diff --git a/lib/clang/include/llvm/Config/AsmParsers.def b/lib/clang/include/llvm/Config/AsmParsers.def
new file mode 100644
index 0000000..0fdc4ff
--- /dev/null
+++ b/lib/clang/include/llvm/Config/AsmParsers.def
@@ -0,0 +1,6 @@
+/* $FreeBSD$ */
+
+LLVM_ASM_PARSER(ARM)
+LLVM_ASM_PARSER(X86)
+
+#undef LLVM_ASM_PARSER
diff --git a/lib/clang/include/llvm/Config/AsmPrinters.def b/lib/clang/include/llvm/Config/AsmPrinters.def
new file mode 100644
index 0000000..ab48b4a
--- /dev/null
+++ b/lib/clang/include/llvm/Config/AsmPrinters.def
@@ -0,0 +1,8 @@
+/* $FreeBSD$ */
+
+LLVM_ASM_PRINTER(Mips)
+LLVM_ASM_PRINTER(ARM)
+LLVM_ASM_PRINTER(PowerPC)
+LLVM_ASM_PRINTER(X86)
+
+#undef LLVM_ASM_PRINTER
diff --git a/lib/clang/include/llvm/Config/Disassemblers.def b/lib/clang/include/llvm/Config/Disassemblers.def
new file mode 100644
index 0000000..9d9093a
--- /dev/null
+++ b/lib/clang/include/llvm/Config/Disassemblers.def
@@ -0,0 +1,5 @@
+/* $FreeBSD$ */
+
+LLVM_DISASSEMBLER(X86)
+
+#undef LLVM_DISASSEMBLER
diff --git a/lib/clang/include/llvm/Config/Targets.def b/lib/clang/include/llvm/Config/Targets.def
new file mode 100644
index 0000000..e33b41e
--- /dev/null
+++ b/lib/clang/include/llvm/Config/Targets.def
@@ -0,0 +1,8 @@
+/* $FreeBSD$ */
+
+LLVM_TARGET(Mips)
+LLVM_TARGET(ARM)
+LLVM_TARGET(PowerPC)
+LLVM_TARGET(X86)
+
+#undef LLVM_TARGET
diff --git a/lib/clang/include/llvm/Config/config.h b/lib/clang/include/llvm/Config/config.h
new file mode 100644
index 0000000..6f222d5
--- /dev/null
+++ b/lib/clang/include/llvm/Config/config.h
@@ -0,0 +1,569 @@
+/* $FreeBSD$ */
+/* include/llvm/Config/config.h. Generated from config.h.in by configure. */
+/* include/llvm/Config/config.h.in. Generated from autoconf/configure.ac by autoheader. */
+
+/* 32 bit multilib directory. */
+#define CXX_INCLUDE_32BIT_DIR ""
+
+/* 64 bit multilib directory. */
+#define CXX_INCLUDE_64BIT_DIR ""
+
+/* Arch the libstdc++ headers. */
+#define CXX_INCLUDE_ARCH ""
+
+/* Directory with the libstdc++ headers. */
+#define CXX_INCLUDE_ROOT ""
+
+/* Directories clang will search for headers */
+#define C_INCLUDE_DIRS ""
+
+/* Define if CBE is enabled for printf %a output */
+#define ENABLE_CBE_PRINTF_A 1
+
+/* Define if position independent code is enabled */
+#define ENABLE_PIC 1
+
+/* Define if threads enabled */
+/* #undef ENABLE_THREADS */
+
+/* Define if timestamp information (e.g., __DATE___) is allowed */
+/* #undef ENABLE_TIMESTAMPS */
+
+/* Define to 1 if you have the `argz_append' function. */
+/* #undef HAVE_ARGZ_APPEND */
+
+/* Define to 1 if you have the `argz_create_sep' function. */
+/* #undef HAVE_ARGZ_CREATE_SEP */
+
+/* Define to 1 if you have the <argz.h> header file. */
+/* #undef HAVE_ARGZ_H */
+
+/* Define to 1 if you have the `argz_insert' function. */
+/* #undef HAVE_ARGZ_INSERT */
+
+/* Define to 1 if you have the `argz_next' function. */
+/* #undef HAVE_ARGZ_NEXT */
+
+/* Define to 1 if you have the `argz_stringify' function. */
+/* #undef HAVE_ARGZ_STRINGIFY */
+
+/* Define to 1 if you have the <assert.h> header file. */
+#define HAVE_ASSERT_H 1
+
+/* Define to 1 if you have the `backtrace' function. */
+/* #undef HAVE_BACKTRACE */
+
+/* Define to 1 if you have the `bcopy' function. */
+/* #undef HAVE_BCOPY */
+
+/* Define to 1 if you have the `ceilf' function. */
+#define HAVE_CEILF 1
+
+/* Define if the neat program is available */
+/* #undef HAVE_CIRCO */
+
+/* Define to 1 if you have the `closedir' function. */
+#define HAVE_CLOSEDIR 1
+
+/* Define to 1 if you have the <ctype.h> header file. */
+#define HAVE_CTYPE_H 1
+
+/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
+ */
+#define HAVE_DIRENT_H 1
+
+/* Define if you have the GNU dld library. */
+/* #undef HAVE_DLD */
+
+/* Define to 1 if you have the <dld.h> header file. */
+/* #undef HAVE_DLD_H */
+
+/* Define to 1 if you have the `dlerror' function. */
+#define HAVE_DLERROR 1
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#define HAVE_DLFCN_H 1
+
+/* Define if dlopen() is available on this platform. */
+#define HAVE_DLOPEN 1
+
+/* Define to 1 if you have the <dl.h> header file. */
+/* #undef HAVE_DL_H */
+
+/* Define if the dot program is available */
+/* #undef HAVE_DOT */
+
+/* Define if the dotty program is available */
+/* #undef HAVE_DOTTY */
+
+/* Define if you have the _dyld_func_lookup function. */
+/* #undef HAVE_DYLD */
+
+/* Define to 1 if you have the <errno.h> header file. */
+#define HAVE_ERRNO_H 1
+
+/* Define to 1 if the system has the type `error_t'. */
+/* #undef HAVE_ERROR_T */
+
+/* Define to 1 if you have the <execinfo.h> header file. */
+/* #undef HAVE_EXECINFO_H */
+
+/* Define to 1 if you have the <fcntl.h> header file. */
+#define HAVE_FCNTL_H 1
+
+/* Define if the neat program is available */
+/* #undef HAVE_FDP */
+
+/* Define if libffi is available on this platform. */
+/* #undef HAVE_FFI_CALL */
+
+/* Define to 1 if you have the <ffi/ffi.h> header file. */
+/* #undef HAVE_FFI_FFI_H */
+
+/* Define to 1 if you have the <ffi.h> header file. */
+/* #undef HAVE_FFI_H */
+
+/* Set to 1 if the finite function is found in <ieeefp.h> */
+/* #undef HAVE_FINITE_IN_IEEEFP_H */
+
+/* Define to 1 if you have the `floorf' function. */
+#define HAVE_FLOORF 1
+
+/* Define to 1 if you have the `fmodf' function. */
+#define HAVE_FMODF 1
+
+/* Define to 1 if you have the `getcwd' function. */
+#define HAVE_GETCWD 1
+
+/* Define to 1 if you have the `getpagesize' function. */
+#define HAVE_GETPAGESIZE 1
+
+/* Define to 1 if you have the `getrlimit' function. */
+#define HAVE_GETRLIMIT 1
+
+/* Define to 1 if you have the `getrusage' function. */
+#define HAVE_GETRUSAGE 1
+
+/* Define to 1 if you have the `gettimeofday' function. */
+#define HAVE_GETTIMEOFDAY 1
+
+/* Define if the Graphviz program is available */
+/* #undef HAVE_GRAPHVIZ */
+
+/* Define if the gv program is available */
+/* #undef HAVE_GV */
+
+/* Define to 1 if you have the `index' function. */
+/* #undef HAVE_INDEX */
+
+/* Define to 1 if the system has the type `int64_t'. */
+#define HAVE_INT64_T 1
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#define HAVE_INTTYPES_H 1
+
+/* Define to 1 if you have the `isatty' function. */
+#define HAVE_ISATTY 1
+
+/* Set to 1 if the isinf function is found in <cmath> */
+#define HAVE_ISINF_IN_CMATH 1
+
+/* Set to 1 if the isinf function is found in <math.h> */
+#define HAVE_ISINF_IN_MATH_H 1
+
+/* Set to 1 if the isnan function is found in <cmath> */
+#define HAVE_ISNAN_IN_CMATH 1
+
+/* Set to 1 if the isnan function is found in <math.h> */
+#define HAVE_ISNAN_IN_MATH_H 1
+
+/* Define if you have the libdl library or equivalent. */
+#define HAVE_LIBDL 1
+
+/* Define to 1 if you have the `imagehlp' library (-limagehlp). */
+/* #undef HAVE_LIBIMAGEHLP */
+
+/* Define to 1 if you have the `m' library (-lm). */
+#define HAVE_LIBM 1
+
+/* Define to 1 if you have the `psapi' library (-lpsapi). */
+/* #undef HAVE_LIBPSAPI */
+
+/* Define to 1 if you have the `pthread' library (-lpthread). */
+#define HAVE_LIBPTHREAD 1
+
+/* Define to 1 if you have the `udis86' library (-ludis86). */
+/* #undef HAVE_LIBUDIS86 */
+
+/* Define to 1 if you have the <limits.h> header file. */
+#define HAVE_LIMITS_H 1
+
+/* Define if you can use -Wl,-export-dynamic. */
+#define HAVE_LINK_EXPORT_DYNAMIC 1
+
+/* Define to 1 if you have the <link.h> header file. */
+#define HAVE_LINK_H 1
+
+/* Define if you can use -Wl,-R. to pass -R. to the linker, in order to add
+ the current directory to the dynamic linker search path. */
+#define HAVE_LINK_R 1
+
+/* Define to 1 if you have the `longjmp' function. */
+#define HAVE_LONGJMP 1
+
+/* Define to 1 if you have the <mach/mach.h> header file. */
+/* #undef HAVE_MACH_MACH_H */
+
+/* Define to 1 if you have the <mach-o/dyld.h> header file. */
+/* #undef HAVE_MACH_O_DYLD_H */
+
+/* Define if mallinfo() is available on this platform. */
+/* #undef HAVE_MALLINFO */
+
+/* Define to 1 if you have the <malloc.h> header file. */
+/* #undef HAVE_MALLOC_H */
+
+/* Define to 1 if you have the <malloc/malloc.h> header file. */
+/* #undef HAVE_MALLOC_MALLOC_H */
+
+/* Define to 1 if you have the `malloc_zone_statistics' function. */
+/* #undef HAVE_MALLOC_ZONE_STATISTICS */
+
+/* Define to 1 if you have the `memcpy' function. */
+#define HAVE_MEMCPY 1
+
+/* Define to 1 if you have the `memmove' function. */
+#define HAVE_MEMMOVE 1
+
+/* Define to 1 if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define to 1 if you have the `mkdtemp' function. */
+#define HAVE_MKDTEMP 1
+
+/* Define to 1 if you have the `mkstemp' function. */
+#define HAVE_MKSTEMP 1
+
+/* Define to 1 if you have the `mktemp' function. */
+#define HAVE_MKTEMP 1
+
+/* Define to 1 if you have a working `mmap' system call. */
+#define HAVE_MMAP 1
+
+/* Define if mmap() uses MAP_ANONYMOUS to map anonymous pages, or undefine if
+ it uses MAP_ANON */
+/* #undef HAVE_MMAP_ANONYMOUS */
+
+/* Define if mmap() can map files into memory */
+#define HAVE_MMAP_FILE
+
+/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
+/* #undef HAVE_NDIR_H */
+
+/* Define to 1 if you have the `nearbyintf' function. */
+#define HAVE_NEARBYINTF 1
+
+/* Define if the neat program is available */
+/* #undef HAVE_NEATO */
+
+/* Define to 1 if you have the `opendir' function. */
+#define HAVE_OPENDIR 1
+
+/* Define to 1 if you have the `posix_spawn' function. */
+/* #undef HAVE_POSIX_SPAWN */
+
+/* Define to 1 if you have the `powf' function. */
+#define HAVE_POWF 1
+
+/* Define if libtool can extract symbol lists from object files. */
+#define HAVE_PRELOADED_SYMBOLS 1
+
+/* Define to have the %a format string */
+#define HAVE_PRINTF_A 1
+
+/* Have pthread_getspecific */
+#define HAVE_PTHREAD_GETSPECIFIC 1
+
+/* Define to 1 if you have the <pthread.h> header file. */
+#define HAVE_PTHREAD_H 1
+
+/* Have pthread_mutex_lock */
+#define HAVE_PTHREAD_MUTEX_LOCK 1
+
+/* Have pthread_rwlock_init */
+#define HAVE_PTHREAD_RWLOCK_INIT 1
+
+/* Define to 1 if srand48/lrand48/drand48 exist in <stdlib.h> */
+#define HAVE_RAND48 1
+
+/* Define to 1 if you have the `readdir' function. */
+#define HAVE_READDIR 1
+
+/* Define to 1 if you have the `realpath' function. */
+#define HAVE_REALPATH 1
+
+/* Define to 1 if you have the `rindex' function. */
+/* #undef HAVE_RINDEX */
+
+/* Define to 1 if you have the `rintf' function. */
+#define HAVE_RINTF 1
+
+/* Define to 1 if you have the `round' function. */
+#define HAVE_ROUND 1
+
+/* Define to 1 if you have the `roundf' function. */
+#define HAVE_ROUNDF 1
+
+/* Define to 1 if you have the `sbrk' function. */
+#define HAVE_SBRK 1
+
+/* Define to 1 if you have the `setenv' function. */
+#define HAVE_SETENV 1
+
+/* Define to 1 if you have the `setjmp' function. */
+#define HAVE_SETJMP 1
+
+/* Define to 1 if you have the <setjmp.h> header file. */
+#define HAVE_SETJMP_H 1
+
+/* Define to 1 if you have the `setrlimit' function. */
+#define HAVE_SETRLIMIT 1
+
+/* Define if you have the shl_load function. */
+/* #undef HAVE_SHL_LOAD */
+
+/* Define to 1 if you have the `siglongjmp' function. */
+#define HAVE_SIGLONGJMP 1
+
+/* Define to 1 if you have the <signal.h> header file. */
+#define HAVE_SIGNAL_H 1
+
+/* Define to 1 if you have the `sigsetjmp' function. */
+#define HAVE_SIGSETJMP 1
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#define HAVE_STDINT_H 1
+
+/* Define to 1 if you have the <stdio.h> header file. */
+#define HAVE_STDIO_H 1
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Set to 1 if the std::isinf function is found in <cmath> */
+/* #undef HAVE_STD_ISINF_IN_CMATH */
+
+/* Set to 1 if the std::isnan function is found in <cmath> */
+#define HAVE_STD_ISNAN_IN_CMATH 1
+
+/* Define to 1 if you have the `strchr' function. */
+#define HAVE_STRCHR 1
+
+/* Define to 1 if you have the `strcmp' function. */
+#define HAVE_STRCMP 1
+
+/* Define to 1 if you have the `strdup' function. */
+#define HAVE_STRDUP 1
+
+/* Define to 1 if you have the `strerror' function. */
+#define HAVE_STRERROR 1
+
+/* Define to 1 if you have the `strerror_r' function. */
+#define HAVE_STRERROR_R 1
+
+/* Define to 1 if you have the `strerror_s' function. */
+/* #undef HAVE_STRERROR_S */
+
+/* Define to 1 if you have the <strings.h> header file. */
+#define HAVE_STRINGS_H 1
+
+/* Define to 1 if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define to 1 if you have the `strrchr' function. */
+#define HAVE_STRRCHR 1
+
+/* Define to 1 if you have the `strtof' function. */
+#define HAVE_STRTOF 1
+
+/* Define to 1 if you have the `strtoll' function. */
+#define HAVE_STRTOLL 1
+
+/* Define to 1 if you have the `strtoq' function. */
+#define HAVE_STRTOQ 1
+
+/* Define to 1 if you have the `sysconf' function. */
+#define HAVE_SYSCONF 1
+
+/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
+ */
+/* #undef HAVE_SYS_DIR_H */
+
+/* Define to 1 if you have the <sys/dl.h> header file. */
+/* #undef HAVE_SYS_DL_H */
+
+/* Define to 1 if you have the <sys/ioctl.h> header file. */
+#define HAVE_SYS_IOCTL_H 1
+
+/* Define to 1 if you have the <sys/mman.h> header file. */
+#define HAVE_SYS_MMAN_H 1
+
+/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
+ */
+/* #undef HAVE_SYS_NDIR_H */
+
+/* Define to 1 if you have the <sys/param.h> header file. */
+#define HAVE_SYS_PARAM_H 1
+
+/* Define to 1 if you have the <sys/resource.h> header file. */
+#define HAVE_SYS_RESOURCE_H 1
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the <sys/time.h> header file. */
+#define HAVE_SYS_TIME_H 1
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#define HAVE_SYS_TYPES_H 1
+
+/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
+#define HAVE_SYS_WAIT_H 1
+
+/* Define to 1 if you have the <termios.h> header file. */
+#define HAVE_TERMIOS_H 1
+
+/* Define if the neat program is available */
+/* #undef HAVE_TWOPI */
+
+/* Define to 1 if the system has the type `uint64_t'. */
+#define HAVE_UINT64_T 1
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H 1
+
+/* Define to 1 if you have the <utime.h> header file. */
+#define HAVE_UTIME_H 1
+
+/* Define to 1 if the system has the type `u_int64_t'. */
+/* #undef HAVE_U_INT64_T */
+
+/* Define to 1 if you have the <valgrind/valgrind.h> header file. */
+/* #undef HAVE_VALGRIND_VALGRIND_H */
+
+/* Define to 1 if you have the <windows.h> header file. */
+/* #undef HAVE_WINDOWS_H */
+
+/* Define to 1 if you have the `__dso_handle' function. */
+#define HAVE___DSO_HANDLE 1
+
+/* Build multithreading support into LLVM */
+/* #undef LLVM_MULTITHREADED */
+
+/* LLVM architecture name for the native architecture, if available */
+#define LLVM_NATIVE_ARCH X86Target
+
+/* Define if this is Unixish platform */
+#define LLVM_ON_UNIX 1
+
+/* Define if this is Win32ish platform */
+/* #undef LLVM_ON_WIN32 */
+
+/* Define to path to circo program if found or 'echo circo' otherwise */
+/* #undef LLVM_PATH_CIRCO */
+
+/* Define to path to dot program if found or 'echo dot' otherwise */
+/* #undef LLVM_PATH_DOT */
+
+/* Define to path to dotty program if found or 'echo dotty' otherwise */
+/* #undef LLVM_PATH_DOTTY */
+
+/* Define to path to fdp program if found or 'echo fdp' otherwise */
+/* #undef LLVM_PATH_FDP */
+
+/* Define to path to Graphviz program if found or 'echo Graphviz' otherwise */
+/* #undef LLVM_PATH_GRAPHVIZ */
+
+/* Define to path to gv program if found or 'echo gv' otherwise */
+/* #undef LLVM_PATH_GV */
+
+/* Define to path to neato program if found or 'echo neato' otherwise */
+/* #undef LLVM_PATH_NEATO */
+
+/* Define to path to twopi program if found or 'echo twopi' otherwise */
+/* #undef LLVM_PATH_TWOPI */
+
+/* Installation prefix directory */
+#define LLVM_PREFIX "/usr/local"
+
+/* Define if the OS needs help to load dependent libraries for dlopen(). */
+#define LTDL_DLOPEN_DEPLIBS 1
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+ */
+#define LTDL_OBJDIR ".libs/"
+
+/* Define to the name of the environment variable that determines the dynamic
+ library search path. */
+#define LTDL_SHLIBPATH_VAR "LD_LIBRARY_PATH"
+
+/* Define to the extension used for shared libraries, say, ".so". */
+#define LTDL_SHLIB_EXT ".so"
+
+/* Define to the system default library search path. */
+#define LTDL_SYSSEARCHPATH "/lib:/usr/lib"
+
+/* Define if /dev/zero should be used when mapping RWX memory, or undefine if
+ its not necessary */
+/* #undef NEED_DEV_ZERO_FOR_MMAP */
+
+/* Define if dlsym() requires a leading underscore in symbol names. */
+/* #undef NEED_USCORE */
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT "llvmbugs@cs.uiuc.edu"
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "llvm"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "llvm 2.8svn"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "-llvm-"
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "2.8svn"
+
+/* Define as the return type of signal handlers (`int' or `void'). */
+#define RETSIGTYPE void
+
+/* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
+/* #undef STAT_MACROS_BROKEN */
+
+/* Define to 1 if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
+#define TIME_WITH_SYS_TIME 1
+
+/* Define to 1 if your <sys/time.h> declares `struct tm'. */
+/* #undef TM_IN_SYS_TIME */
+
+/* Define if we have the oprofile JIT-support library */
+#define USE_OPROFILE 0
+
+/* Define if use udis86 library */
+#define USE_UDIS86 0
+
+/* Define to empty if `const' does not conform to ANSI C. */
+/* #undef const */
+
+/* Define to a type to use for `error_t' if it is not otherwise available. */
+#define error_t int
+
+/* Define to `int' if <sys/types.h> does not define. */
+/* #undef pid_t */
+
+/* Define to `unsigned int' if <sys/types.h> does not define. */
+/* #undef size_t */
diff --git a/lib/clang/include/llvm/Intrinsics.gen b/lib/clang/include/llvm/Intrinsics.gen
new file mode 100644
index 0000000..a3dbd63
--- /dev/null
+++ b/lib/clang/include/llvm/Intrinsics.gen
@@ -0,0 +1,2 @@
+/* $FreeBSD$ */
+#include "Intrinsics.inc.h"
diff --git a/lib/clang/include/llvm/System/DataTypes.h b/lib/clang/include/llvm/System/DataTypes.h
new file mode 100644
index 0000000..fcec26c
--- /dev/null
+++ b/lib/clang/include/llvm/System/DataTypes.h
@@ -0,0 +1,113 @@
+/* $FreeBSD$ */
+/* include/llvm/System/DataTypes.h. Generated from DataTypes.h.in by configure. */
+/*===-- include/System/DataTypes.h - Define fixed size types -----*- C -*-===*\
+|* *|
+|* The LLVM Compiler Infrastructure *|
+|* *|
+|* This file is distributed under the University of Illinois Open Source *|
+|* License. See LICENSE.TXT for details. *|
+|* *|
+|*===----------------------------------------------------------------------===*|
+|* *|
+|* This file contains definitions to figure out the size of _HOST_ data types.*|
+|* This file is important because different host OS's define different macros,*|
+|* which makes portability tough. This file exports the following *|
+|* definitions: *|
+|* *|
+|* [u]int(32|64)_t : typedefs for signed and unsigned 32/64 bit system types*|
+|* [U]INT(8|16|32|64)_(MIN|MAX) : Constants for the min and max values. *|
+|* *|
+|* No library is required when using these functinons. *|
+|* *|
+|*===----------------------------------------------------------------------===*/
+
+/* Please leave this file C-compatible. */
+
+#ifndef SUPPORT_DATATYPES_H
+#define SUPPORT_DATATYPES_H
+
+#define HAVE_SYS_TYPES_H 1
+#define HAVE_INTTYPES_H 1
+#define HAVE_STDINT_H 1
+#define HAVE_UINT64_T 1
+/* #undef HAVE_U_INT64_T */
+
+#ifdef __cplusplus
+#include <cmath>
+#else
+#include <math.h>
+#endif
+
+/* Note that this header's correct operation depends on __STDC_LIMIT_MACROS
+ being defined. We would define it here, but in order to prevent Bad Things
+ happening when system headers or C++ STL headers include stdint.h before we
+ define it here, we define it on the g++ command line (in Makefile.rules). */
+#if !defined(__STDC_LIMIT_MACROS)
+# error "Must #define __STDC_LIMIT_MACROS before #including System/DataTypes.h"
+#endif
+
+#if !defined(__STDC_CONSTANT_MACROS)
+# error "Must #define __STDC_CONSTANT_MACROS before " \
+ "#including System/DataTypes.h"
+#endif
+
+/* Note that <inttypes.h> includes <stdint.h>, if this is a C99 system. */
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+
+#ifdef HAVE_INTTYPES_H
+#include <inttypes.h>
+#endif
+
+#ifdef HAVE_STDINT_H
+#include <stdint.h>
+#endif
+
+#ifdef _AIX
+#include "llvm/System/AIXDataTypesFix.h"
+#endif
+
+/* Handle incorrect definition of uint64_t as u_int64_t */
+#ifndef HAVE_UINT64_T
+#ifdef HAVE_U_INT64_T
+typedef u_int64_t uint64_t;
+#else
+# error "Don't have a definition for uint64_t on this platform"
+#endif
+#endif
+
+#ifdef _OpenBSD_
+#define INT8_MAX 127
+#define INT8_MIN -128
+#define UINT8_MAX 255
+#define INT16_MAX 32767
+#define INT16_MIN -32768
+#define UINT16_MAX 65535
+#define INT32_MAX 2147483647
+#define INT32_MIN -2147483648
+#define UINT32_MAX 4294967295U
+#endif
+
+/* Set defaults for constants which we cannot find. */
+#if !defined(INT64_MAX)
+# define INT64_MAX 9223372036854775807LL
+#endif
+#if !defined(INT64_MIN)
+# define INT64_MIN ((-INT64_MAX)-1)
+#endif
+#if !defined(UINT64_MAX)
+# define UINT64_MAX 0xffffffffffffffffULL
+#endif
+
+#if __GNUC__ > 3
+#define END_WITH_NULL __attribute__((sentinel))
+#else
+#define END_WITH_NULL
+#endif
+
+#ifndef HUGE_VALF
+#define HUGE_VALF (float)HUGE_VAL
+#endif
+
+#endif /* SUPPORT_DATATYPES_H */
diff --git a/lib/clang/libclanganalysis/Makefile b/lib/clang/libclanganalysis/Makefile
new file mode 100644
index 0000000..ad64529
--- /dev/null
+++ b/lib/clang/libclanganalysis/Makefile
@@ -0,0 +1,20 @@
+# $FreeBSD$
+
+LIB= clanganalysis
+
+SRCDIR= tools/clang/lib/Analysis
+SRCS= AnalysisContext.cpp \
+ CFG.cpp \
+ LiveVariables.cpp \
+ PrintfFormatString.cpp \
+ ReachableCode.cpp \
+ UninitializedValues.cpp
+
+TGHDRS= AttrList \
+ Attrs \
+ DeclNodes \
+ DiagnosticAnalysisKinds \
+ DiagnosticCommonKinds \
+ StmtNodes
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libclangast/Makefile b/lib/clang/libclangast/Makefile
new file mode 100644
index 0000000..06cb000
--- /dev/null
+++ b/lib/clang/libclangast/Makefile
@@ -0,0 +1,51 @@
+# $FreeBSD$
+
+LIB= clangast
+
+SRCDIR= tools/clang/lib/AST
+SRCS= APValue.cpp \
+ ASTConsumer.cpp \
+ ASTContext.cpp \
+ ASTDiagnostic.cpp \
+ ASTImporter.cpp \
+ AttrImpl.cpp \
+ CXXInheritance.cpp \
+ Decl.cpp \
+ DeclBase.cpp \
+ DeclCXX.cpp \
+ DeclFriend.cpp \
+ DeclGroup.cpp \
+ DeclObjC.cpp \
+ DeclPrinter.cpp \
+ DeclTemplate.cpp \
+ DeclarationName.cpp \
+ Expr.cpp \
+ ExprCXX.cpp \
+ ExprClassification.cpp \
+ ExprConstant.cpp \
+ FullExpr.cpp \
+ InheritViz.cpp \
+ NestedNameSpecifier.cpp \
+ ParentMap.cpp \
+ RecordLayout.cpp \
+ RecordLayoutBuilder.cpp \
+ Stmt.cpp \
+ StmtDumper.cpp \
+ StmtIterator.cpp \
+ StmtPrinter.cpp \
+ StmtProfile.cpp \
+ StmtViz.cpp \
+ TemplateBase.cpp \
+ TemplateName.cpp \
+ Type.cpp \
+ TypeLoc.cpp \
+ TypePrinter.cpp
+
+TGHDRS= AttrList \
+ Attrs \
+ DeclNodes \
+ DiagnosticASTKinds \
+ DiagnosticCommonKinds \
+ StmtNodes
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libclangbasic/Makefile b/lib/clang/libclangbasic/Makefile
new file mode 100644
index 0000000..cd57855
--- /dev/null
+++ b/lib/clang/libclangbasic/Makefile
@@ -0,0 +1,31 @@
+# $FreeBSD$
+
+LIB= clangbasic
+
+SRCDIR= tools/clang/lib/Basic
+SRCS= Builtins.cpp \
+ ConvertUTF.c \
+ Diagnostic.cpp \
+ FileManager.cpp \
+ IdentifierTable.cpp \
+ SourceLocation.cpp \
+ SourceManager.cpp \
+ TargetInfo.cpp \
+ Targets.cpp \
+ TokenKinds.cpp \
+ Version.cpp
+
+TGHDRS= AttrList \
+ Attrs \
+ DiagnosticASTKinds \
+ DiagnosticAnalysisKinds \
+ DiagnosticCommonKinds \
+ DiagnosticDriverKinds \
+ DiagnosticFrontendKinds \
+ DiagnosticGroups \
+ DiagnosticLexKinds \
+ DiagnosticParseKinds \
+ DiagnosticSemaKinds \
+ arm_neon
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libclangchecker/Makefile b/lib/clang/libclangchecker/Makefile
new file mode 100644
index 0000000..0bcecef
--- /dev/null
+++ b/lib/clang/libclangchecker/Makefile
@@ -0,0 +1,89 @@
+# $FreeBSD$
+
+LIB= clangchecker
+
+SRCDIR= tools/clang/lib/Checker
+SRCS= AdjustedReturnValueChecker.cpp \
+ AggExprVisitor.cpp \
+ AnalysisConsumer.cpp \
+ ArrayBoundChecker.cpp \
+ AttrNonNullChecker.cpp \
+ BasicConstraintManager.cpp \
+ BasicObjCFoundationChecks.cpp \
+ BasicStore.cpp \
+ BasicValueFactory.cpp \
+ BugReporter.cpp \
+ BugReporterVisitors.cpp \
+ BuiltinFunctionChecker.cpp \
+ CFRefCount.cpp \
+ CStringChecker.cpp \
+ CallAndMessageChecker.cpp \
+ CallInliner.cpp \
+ CastSizeChecker.cpp \
+ CastToStructChecker.cpp \
+ CheckDeadStores.cpp \
+ CheckObjCDealloc.cpp \
+ CheckObjCInstMethSignature.cpp \
+ CheckSecuritySyntaxOnly.cpp \
+ CheckSizeofPointer.cpp \
+ Checker.cpp \
+ CocoaConventions.cpp \
+ DereferenceChecker.cpp \
+ DivZeroChecker.cpp \
+ Environment.cpp \
+ ExplodedGraph.cpp \
+ FixedAddressChecker.cpp \
+ FlatStore.cpp \
+ FrontendActions.cpp \
+ GRBlockCounter.cpp \
+ GRCXXExprEngine.cpp \
+ GRCoreEngine.cpp \
+ GRExprEngine.cpp \
+ GRExprEngineExperimentalChecks.cpp \
+ GRState.cpp \
+ HTMLDiagnostics.cpp \
+ IdempotentOperationChecker.cpp \
+ LLVMConventionsChecker.cpp \
+ MacOSXAPIChecker.cpp \
+ MallocChecker.cpp \
+ ManagerRegistry.cpp \
+ MemRegion.cpp \
+ NSAutoreleasePoolChecker.cpp \
+ NSErrorChecker.cpp \
+ NoReturnFunctionChecker.cpp \
+ OSAtomicChecker.cpp \
+ ObjCUnusedIVarsChecker.cpp \
+ PathDiagnostic.cpp \
+ PlistDiagnostics.cpp \
+ PointerArithChecker.cpp \
+ PointerSubChecker.cpp \
+ PthreadLockChecker.cpp \
+ RangeConstraintManager.cpp \
+ RegionStore.cpp \
+ ReturnPointerRangeChecker.cpp \
+ ReturnUndefChecker.cpp \
+ SVals.cpp \
+ SValuator.cpp \
+ SimpleConstraintManager.cpp \
+ SimpleSValuator.cpp \
+ StackAddrLeakChecker.cpp \
+ StreamChecker.cpp \
+ Store.cpp \
+ SymbolManager.cpp \
+ UndefBranchChecker.cpp \
+ UndefCapturedBlockVarChecker.cpp \
+ UndefResultChecker.cpp \
+ UndefinedArraySubscriptChecker.cpp \
+ UndefinedAssignmentChecker.cpp \
+ UnixAPIChecker.cpp \
+ VLASizeChecker.cpp \
+ ValueManager.cpp
+
+TGHDRS= Attrs \
+ AttrList \
+ DeclNodes \
+ DiagnosticAnalysisKinds \
+ DiagnosticCommonKinds \
+ StmtNodes
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libclangcodegen/Makefile b/lib/clang/libclangcodegen/Makefile
new file mode 100644
index 0000000..82e423b
--- /dev/null
+++ b/lib/clang/libclangcodegen/Makefile
@@ -0,0 +1,50 @@
+# $FreeBSD$
+
+LIB= clangcodegen
+
+SRCDIR= tools/clang/lib/CodeGen
+SRCS= BackendUtil.cpp \
+ CGBlocks.cpp \
+ CGBuiltin.cpp \
+ CGCXX.cpp \
+ CGCall.cpp \
+ CGClass.cpp \
+ CGDebugInfo.cpp \
+ CGDecl.cpp \
+ CGDeclCXX.cpp \
+ CGException.cpp \
+ CGExpr.cpp \
+ CGExprAgg.cpp \
+ CGExprCXX.cpp \
+ CGExprComplex.cpp \
+ CGExprConstant.cpp \
+ CGExprScalar.cpp \
+ CGObjC.cpp \
+ CGObjCGNU.cpp \
+ CGObjCMac.cpp \
+ CGRTTI.cpp \
+ CGRecordLayoutBuilder.cpp \
+ CGStmt.cpp \
+ CGTemporaries.cpp \
+ CGVTT.cpp \
+ CGVTables.cpp \
+ CodeGenAction.cpp \
+ CodeGenFunction.cpp \
+ CodeGenModule.cpp \
+ CodeGenTypes.cpp \
+ ItaniumCXXABI.cpp \
+ Mangle.cpp \
+ MicrosoftCXXABI.cpp \
+ ModuleBuilder.cpp \
+ TargetInfo.cpp
+
+TGHDRS= Attrs \
+ AttrList \
+ DeclNodes \
+ DiagnosticCommonKinds \
+ DiagnosticFrontendKinds \
+ Intrinsics \
+ StmtNodes \
+ arm_neon
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libclangdriver/Makefile b/lib/clang/libclangdriver/Makefile
new file mode 100644
index 0000000..ce9d251
--- /dev/null
+++ b/lib/clang/libclangdriver/Makefile
@@ -0,0 +1,31 @@
+# $FreeBSD$
+
+LIB= clangdriver
+
+SRCDIR= tools/clang/lib/Driver
+SRCS= Action.cpp \
+ Arg.cpp \
+ ArgList.cpp \
+ CC1AsOptions.cpp \
+ CC1Options.cpp \
+ Compilation.cpp \
+ Driver.cpp \
+ DriverOptions.cpp \
+ HostInfo.cpp \
+ Job.cpp \
+ OptTable.cpp \
+ Option.cpp \
+ Phases.cpp \
+ Tool.cpp \
+ ToolChain.cpp \
+ ToolChains.cpp \
+ Tools.cpp \
+ Types.cpp
+
+TGHDRS= CC1AsOptions \
+ CC1Options \
+ DiagnosticCommonKinds \
+ DiagnosticDriverKinds \
+ Options
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libclangfrontend/Makefile b/lib/clang/libclangfrontend/Makefile
new file mode 100644
index 0000000..7024a60
--- /dev/null
+++ b/lib/clang/libclangfrontend/Makefile
@@ -0,0 +1,51 @@
+# $FreeBSD$
+
+LIB= clangfrontend
+
+SRCDIR= tools/clang/lib/Frontend
+SRCS= ASTConsumers.cpp \
+ ASTMerge.cpp \
+ ASTUnit.cpp \
+ BoostConAction.cpp \
+ CacheTokens.cpp \
+ CompilerInstance.cpp \
+ CompilerInvocation.cpp \
+ DeclXML.cpp \
+ DependencyFile.cpp \
+ DiagChecker.cpp \
+ DocumentXML.cpp \
+ FrontendAction.cpp \
+ FrontendActions.cpp \
+ FrontendOptions.cpp \
+ GeneratePCH.cpp \
+ InitHeaderSearch.cpp \
+ InitPreprocessor.cpp \
+ LangStandards.cpp \
+ PCHReader.cpp \
+ PCHReaderDecl.cpp \
+ PCHReaderStmt.cpp \
+ PCHWriter.cpp \
+ PCHWriterDecl.cpp \
+ PCHWriterStmt.cpp \
+ PrintParserCallbacks.cpp \
+ PrintPreprocessedOutput.cpp \
+ StmtXML.cpp \
+ TextDiagnosticBuffer.cpp \
+ TextDiagnosticPrinter.cpp \
+ TypeXML.cpp \
+ VerifyDiagnosticsClient.cpp \
+ Warnings.cpp
+
+TGHDRS= AttrList \
+ Attrs \
+ CC1Options \
+ DeclNodes \
+ DiagnosticASTKinds \
+ DiagnosticCommonKinds \
+ DiagnosticDriverKinds \
+ DiagnosticFrontendKinds \
+ DiagnosticLexKinds \
+ DiagnosticSemaKinds \
+ StmtNodes
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libclanglex/Makefile b/lib/clang/libclanglex/Makefile
new file mode 100644
index 0000000..989be0d
--- /dev/null
+++ b/lib/clang/libclanglex/Makefile
@@ -0,0 +1,29 @@
+# $FreeBSD$
+
+LIB= clanglex
+
+SRCDIR= tools/clang/lib/Lex
+SRCS= HeaderMap.cpp \
+ HeaderSearch.cpp \
+ Lexer.cpp \
+ LiteralSupport.cpp \
+ MacroArgs.cpp \
+ MacroInfo.cpp \
+ PPCaching.cpp \
+ PPDirectives.cpp \
+ PPExpressions.cpp \
+ PPLexerChange.cpp \
+ PPMacroExpansion.cpp \
+ PTHLexer.cpp \
+ Pragma.cpp \
+ PreprocessingRecord.cpp \
+ Preprocessor.cpp \
+ PreprocessorLexer.cpp \
+ ScratchBuffer.cpp \
+ TokenConcatenation.cpp \
+ TokenLexer.cpp
+
+TGHDRS= DiagnosticCommonKinds \
+ DiagnosticLexKinds
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libclangparse/Makefile b/lib/clang/libclangparse/Makefile
new file mode 100644
index 0000000..0877749
--- /dev/null
+++ b/lib/clang/libclangparse/Makefile
@@ -0,0 +1,25 @@
+# $FreeBSD$
+
+LIB= clangparse
+
+SRCDIR= tools/clang/lib/Parse
+SRCS= AttributeList.cpp \
+ DeclSpec.cpp \
+ MinimalAction.cpp \
+ ParseCXXInlineMethods.cpp \
+ ParseDecl.cpp \
+ ParseDeclCXX.cpp \
+ ParseExpr.cpp \
+ ParseExprCXX.cpp \
+ ParseInit.cpp \
+ ParseObjc.cpp \
+ ParsePragma.cpp \
+ ParseStmt.cpp \
+ ParseTemplate.cpp \
+ ParseTentative.cpp \
+ Parser.cpp
+
+TGHDRS= DiagnosticCommonKinds \
+ DiagnosticParseKinds
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libclangrewrite/Makefile b/lib/clang/libclangrewrite/Makefile
new file mode 100644
index 0000000..496c699
--- /dev/null
+++ b/lib/clang/libclangrewrite/Makefile
@@ -0,0 +1,25 @@
+# $FreeBSD$
+
+LIB= clangrewrite
+
+SRCDIR= tools/clang/lib/Rewrite
+SRCS= DeltaTree.cpp \
+ FixItRewriter.cpp \
+ FrontendActions.cpp \
+ HTMLPrint.cpp \
+ HTMLRewrite.cpp \
+ RewriteMacros.cpp \
+ RewriteObjC.cpp \
+ RewriteRope.cpp \
+ RewriteTest.cpp \
+ Rewriter.cpp \
+ TokenRewriter.cpp
+
+TGHDRS= AttrList \
+ Attrs \
+ DeclNodes \
+ DiagnosticCommonKinds \
+ DiagnosticFrontendKinds \
+ StmtNodes
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libclangsema/Makefile b/lib/clang/libclangsema/Makefile
new file mode 100644
index 0000000..865c7e7
--- /dev/null
+++ b/lib/clang/libclangsema/Makefile
@@ -0,0 +1,50 @@
+# $FreeBSD$
+
+LIB= clangsema
+
+SRCDIR= tools/clang/lib/Sema
+SRCS= AnalysisBasedWarnings.cpp \
+ CodeCompleteConsumer.cpp \
+ IdentifierResolver.cpp \
+ IdentifierResolver.cpp \
+ JumpDiagnostics.cpp \
+ ParseAST.cpp \
+ Sema.cpp \
+ SemaAccess.cpp \
+ SemaAttr.cpp \
+ SemaCXXCast.cpp \
+ SemaCXXScopeSpec.cpp \
+ SemaChecking.cpp \
+ SemaCodeComplete.cpp \
+ SemaDecl.cpp \
+ SemaDeclAttr.cpp \
+ SemaDeclCXX.cpp \
+ SemaDeclObjC.cpp \
+ SemaExceptionSpec.cpp \
+ SemaExpr.cpp \
+ SemaExprCXX.cpp \
+ SemaExprObjC.cpp \
+ SemaInit.cpp \
+ SemaLookup.cpp \
+ SemaObjCProperty.cpp \
+ SemaOverload.cpp \
+ SemaStmt.cpp \
+ SemaTemplate.cpp \
+ SemaTemplateDeduction.cpp \
+ SemaTemplateInstantiate.cpp \
+ SemaTemplateInstantiate.cpp \
+ SemaTemplateInstantiateDecl.cpp \
+ SemaType.cpp \
+ TargetAttributesSema.cpp
+
+TGHDRS= AttrList \
+ Attrs \
+ DeclNodes \
+ DiagnosticASTKinds \
+ DiagnosticCommonKinds \
+ DiagnosticParseKinds \
+ DiagnosticSemaKinds \
+ StmtNodes \
+ arm_neon
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmanalysis/Makefile b/lib/clang/libllvmanalysis/Makefile
new file mode 100644
index 0000000..0edabfd
--- /dev/null
+++ b/lib/clang/libllvmanalysis/Makefile
@@ -0,0 +1,54 @@
+# $FreeBSD$
+
+LIB= llvmanalysis
+
+SRCDIR= lib/Analysis
+SRCS= AliasAnalysis.cpp \
+ AliasAnalysisCounter.cpp \
+ AliasAnalysisEvaluator.cpp \
+ AliasDebugger.cpp \
+ AliasSetTracker.cpp \
+ Analysis.cpp \
+ BasicAliasAnalysis.cpp \
+ CFGPrinter.cpp \
+ CaptureTracking.cpp \
+ ConstantFolding.cpp \
+ DbgInfoPrinter.cpp \
+ DebugInfo.cpp \
+ IVUsers.cpp \
+ InlineCost.cpp \
+ InstCount.cpp \
+ InstructionSimplify.cpp \
+ Interval.cpp \
+ IntervalPartition.cpp \
+ LazyValueInfo.cpp \
+ LibCallAliasAnalysis.cpp \
+ LibCallSemantics.cpp \
+ Lint.cpp \
+ LiveValues.cpp \
+ Loads.cpp \
+ LoopDependenceAnalysis.cpp \
+ LoopInfo.cpp \
+ LoopPass.cpp \
+ MemoryBuiltins.cpp \
+ MemoryDependenceAnalysis.cpp \
+ ModuleDebugInfoPrinter.cpp \
+ PHITransAddr.cpp \
+ PointerTracking.cpp \
+ PostDominators.cpp \
+ ProfileEstimatorPass.cpp \
+ ProfileInfo.cpp \
+ ProfileInfoLoader.cpp \
+ ProfileInfoLoaderPass.cpp \
+ ProfileVerifierPass.cpp \
+ ScalarEvolution.cpp \
+ ScalarEvolutionAliasAnalysis.cpp \
+ ScalarEvolutionExpander.cpp \
+ ScalarEvolutionNormalization.cpp \
+ SparsePropagation.cpp \
+ Trace.cpp \
+ ValueTracking.cpp
+
+TGHDRS= Intrinsics
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmarmasmparser/Makefile b/lib/clang/libllvmarmasmparser/Makefile
new file mode 100644
index 0000000..272d955
--- /dev/null
+++ b/lib/clang/libllvmarmasmparser/Makefile
@@ -0,0 +1,14 @@
+# $FreeBSD$
+
+LIB= llvmarmasmparser
+
+SRCDIR= lib/Target/ARM/AsmParser
+INCDIR= lib/Target/ARM
+SRCS= ARMAsmParser.cpp \
+ ARMAsmLexer.cpp
+
+TGHDRS= ARMGenInstrNames \
+ ARMGenRegisterInfo.h \
+ ARMGenRegisterNames
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmarmasmprinter/Makefile b/lib/clang/libllvmarmasmprinter/Makefile
new file mode 100644
index 0000000..1566ea5
--- /dev/null
+++ b/lib/clang/libllvmarmasmprinter/Makefile
@@ -0,0 +1,16 @@
+# $FreeBSD$
+
+LIB= llvmarmasmprinter
+
+SRCDIR= lib/Target/ARM/AsmPrinter
+INCDIR= lib/Target/ARM
+SRCS= ARMAsmPrinter.cpp \
+ ARMInstPrinter.cpp \
+ ARMMCInstLower.cpp
+
+TGHDRS= ARMGenAsmWriter \
+ ARMGenInstrNames \
+ ARMGenRegisterInfo.h \
+ ARMGenRegisterNames
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmarmcodegen/Makefile b/lib/clang/libllvmarmcodegen/Makefile
new file mode 100644
index 0000000..de34461
--- /dev/null
+++ b/lib/clang/libllvmarmcodegen/Makefile
@@ -0,0 +1,45 @@
+# $FreeBSD$
+
+LIB= llvmarmcodegen
+
+SRCDIR= lib/Target/ARM
+SRCS= ARMBaseInstrInfo.cpp \
+ ARMBaseRegisterInfo.cpp \
+ ARMCodeEmitter.cpp \
+ ARMConstantIslandPass.cpp \
+ ARMConstantPoolValue.cpp \
+ ARMExpandPseudoInsts.cpp \
+ ARMISelDAGToDAG.cpp \
+ ARMISelLowering.cpp \
+ ARMInstrInfo.cpp \
+ ARMJITInfo.cpp \
+ ARMLoadStoreOptimizer.cpp \
+ ARMLoadStoreOptimizer.cpp \
+ ARMMCAsmInfo.cpp \
+ ARMRegisterInfo.cpp \
+ ARMSelectionDAGInfo.cpp \
+ ARMSubtarget.cpp \
+ ARMTargetMachine.cpp \
+ ARMTargetObjectFile.cpp \
+ NEONMoveFix.cpp \
+ NEONPreAllocPass.cpp \
+ Thumb1InstrInfo.cpp \
+ Thumb1RegisterInfo.cpp \
+ Thumb2HazardRecognizer.cpp \
+ Thumb2ITBlockPass.cpp \
+ Thumb2InstrInfo.cpp \
+ Thumb2RegisterInfo.cpp \
+ Thumb2SizeReduction.cpp
+
+TGHDRS= ARMGenCallingConv \
+ ARMGenCodeEmitter \
+ ARMGenDAGISel \
+ ARMGenInstrInfo \
+ ARMGenInstrNames \
+ ARMGenRegisterInfo.h \
+ ARMGenRegisterInfo \
+ ARMGenRegisterNames \
+ ARMGenSubtarget \
+ Intrinsics
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmarminfo/Makefile b/lib/clang/libllvmarminfo/Makefile
new file mode 100644
index 0000000..440b244
--- /dev/null
+++ b/lib/clang/libllvmarminfo/Makefile
@@ -0,0 +1,12 @@
+# $FreeBSD$
+
+LIB= llvmarminfo
+
+SRCDIR= lib/Target/ARM/TargetInfo/
+INCDIR= lib/Target/ARM
+SRCS= ARMTargetInfo.cpp
+
+TGHDRS= ARMGenInstrNames \
+ ARMGenRegisterNames
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmasmparser/Makefile b/lib/clang/libllvmasmparser/Makefile
new file mode 100644
index 0000000..8ceba69
--- /dev/null
+++ b/lib/clang/libllvmasmparser/Makefile
@@ -0,0 +1,10 @@
+# $FreeBSD$
+
+LIB= llvmasmparser
+
+SRCDIR= lib/AsmParser
+SRCS= LLLexer.cpp \
+ LLParser.cpp \
+ Parser.cpp
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmasmprinter/Makefile b/lib/clang/libllvmasmprinter/Makefile
new file mode 100644
index 0000000..37cceec
--- /dev/null
+++ b/lib/clang/libllvmasmprinter/Makefile
@@ -0,0 +1,14 @@
+# $FreeBSD$
+
+LIB= llvmasmprinter
+
+SRCDIR= lib/CodeGen/AsmPrinter
+SRCS= AsmPrinter.cpp \
+ AsmPrinterDwarf.cpp \
+ AsmPrinterInlineAsm.cpp \
+ DIE.cpp \
+ DwarfDebug.cpp \
+ DwarfException.cpp \
+ OcamlGCPrinter.cpp
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmbitreader/Makefile b/lib/clang/libllvmbitreader/Makefile
new file mode 100644
index 0000000..6162801
--- /dev/null
+++ b/lib/clang/libllvmbitreader/Makefile
@@ -0,0 +1,11 @@
+# $FreeBSD$
+
+LIB= llvmbitreader
+
+SRCDIR= lib/Bitcode/Reader
+SRCS= BitReader.cpp \
+ BitcodeReader.cpp
+
+TGHDRS= Intrinsics
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmbitwriter/Makefile b/lib/clang/libllvmbitwriter/Makefile
new file mode 100644
index 0000000..5e64bdb
--- /dev/null
+++ b/lib/clang/libllvmbitwriter/Makefile
@@ -0,0 +1,11 @@
+# $FreeBSD$
+
+LIB= llvmbitwriter
+
+SRCDIR= lib/Bitcode/Writer
+SRCS= BitWriter.cpp \
+ BitcodeWriter.cpp \
+ BitcodeWriterPass.cpp \
+ ValueEnumerator.cpp
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmcodegen/Makefile b/lib/clang/libllvmcodegen/Makefile
new file mode 100644
index 0000000..caed836
--- /dev/null
+++ b/lib/clang/libllvmcodegen/Makefile
@@ -0,0 +1,87 @@
+# $FreeBSD$
+
+LIB= llvmcodegen
+
+SRCDIR= lib/CodeGen
+SRCS= AggressiveAntiDepBreaker.cpp \
+ Analysis.cpp \
+ BranchFolding.cpp \
+ CalcSpillWeights.cpp \
+ CallingConvLower.cpp \
+ CodePlacementOpt.cpp \
+ CriticalAntiDepBreaker.cpp \
+ DeadMachineInstructionElim.cpp \
+ DwarfEHPrepare.cpp \
+ ELFCodeEmitter.cpp \
+ ELFWriter.cpp \
+ GCMetadata.cpp \
+ GCMetadataPrinter.cpp \
+ GCStrategy.cpp \
+ IfConversion.cpp \
+ InlineSpiller.cpp \
+ IntrinsicLowering.cpp \
+ LLVMTargetMachine.cpp \
+ LatencyPriorityQueue.cpp \
+ LiveInterval.cpp \
+ LiveIntervalAnalysis.cpp \
+ LiveStackAnalysis.cpp \
+ LiveVariables.cpp \
+ LowerSubregs.cpp \
+ MachineBasicBlock.cpp \
+ MachineCSE.cpp \
+ MachineDominators.cpp \
+ MachineFunction.cpp \
+ MachineFunctionAnalysis.cpp \
+ MachineFunctionPass.cpp \
+ MachineFunctionPrinterPass.cpp \
+ MachineInstr.cpp \
+ MachineLICM.cpp \
+ MachineLoopInfo.cpp \
+ MachineModuleInfo.cpp \
+ MachineModuleInfoImpls.cpp \
+ MachinePassRegistry.cpp \
+ MachineRegisterInfo.cpp \
+ MachineSSAUpdater.cpp \
+ MachineSink.cpp \
+ MachineVerifier.cpp \
+ ObjectCodeEmitter.cpp \
+ OcamlGC.cpp \
+ OptimizeExts.cpp \
+ OptimizePHIs.cpp \
+ PHIElimination.cpp \
+ Passes.cpp \
+ PostRAHazardRecognizer.cpp \
+ PostRASchedulerList.cpp \
+ PreAllocSplitting.cpp \
+ ProcessImplicitDefs.cpp \
+ PrologEpilogInserter.cpp \
+ PseudoSourceValue.cpp \
+ RegAllocFast.cpp \
+ RegAllocLinearScan.cpp \
+ RegAllocPBQP.cpp \
+ RegisterCoalescer.cpp \
+ RegisterScavenging.cpp \
+ ScheduleDAG.cpp \
+ ScheduleDAGEmit.cpp \
+ ScheduleDAGInstrs.cpp \
+ ScheduleDAGPrinter.cpp \
+ ShadowStackGC.cpp \
+ ShrinkWrapping.cpp \
+ SimpleRegisterCoalescing.cpp \
+ SjLjEHPrepare.cpp \
+ SlotIndexes.cpp \
+ Spiller.cpp \
+ StackProtector.cpp \
+ StackSlotColoring.cpp \
+ StrongPHIElimination.cpp \
+ TailDuplication.cpp \
+ TargetInstrInfoImpl.cpp \
+ TargetLoweringObjectFileImpl.cpp \
+ TwoAddressInstructionPass.cpp \
+ UnreachableBlockElim.cpp \
+ VirtRegMap.cpp \
+ VirtRegRewriter.cpp
+
+TGHDRS= Intrinsics
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmcore/Makefile b/lib/clang/libllvmcore/Makefile
new file mode 100644
index 0000000..1215f4e
--- /dev/null
+++ b/lib/clang/libllvmcore/Makefile
@@ -0,0 +1,41 @@
+# $FreeBSD$
+
+LIB= llvmcore
+
+SRCDIR= lib/VMCore
+SRCS= AsmWriter.cpp \
+ Attributes.cpp \
+ AutoUpgrade.cpp \
+ BasicBlock.cpp \
+ ConstantFold.cpp \
+ Constants.cpp \
+ Core.cpp \
+ DebugLoc.cpp \
+ Dominators.cpp \
+ Function.cpp \
+ GVMaterializer.cpp \
+ Globals.cpp \
+ IRBuilder.cpp \
+ InlineAsm.cpp \
+ Instruction.cpp \
+ Instructions.cpp \
+ IntrinsicInst.cpp \
+ LLVMContext.cpp \
+ LLVMContextImpl.cpp \
+ LeakDetector.cpp \
+ Metadata.cpp \
+ Module.cpp \
+ Pass.cpp \
+ PassManager.cpp \
+ PrintModulePass.cpp \
+ Type.cpp \
+ TypeSymbolTable.cpp \
+ Use.cpp \
+ Value.cpp \
+ ValueSymbolTable.cpp \
+ ValueTypes.cpp \
+ Verifier.cpp
+
+TGHDRS= Intrinsics
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvminstcombine/Makefile b/lib/clang/libllvminstcombine/Makefile
new file mode 100644
index 0000000..9f3a602
--- /dev/null
+++ b/lib/clang/libllvminstcombine/Makefile
@@ -0,0 +1,22 @@
+# $FreeBSD$
+
+LIB= llvminstcombine
+
+SRCDIR= lib/Transforms/InstCombine
+SRCS= InstCombineAddSub.cpp \
+ InstCombineAndOrXor.cpp \
+ InstCombineCalls.cpp \
+ InstCombineCasts.cpp \
+ InstCombineCompares.cpp \
+ InstCombineLoadStoreAlloca.cpp \
+ InstCombineMulDivRem.cpp \
+ InstCombinePHI.cpp \
+ InstCombineSelect.cpp \
+ InstCombineShifts.cpp \
+ InstCombineSimplifyDemanded.cpp \
+ InstCombineVectorOps.cpp \
+ InstructionCombining.cpp
+
+TGHDRS= Intrinsics
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmipa/Makefile b/lib/clang/libllvmipa/Makefile
new file mode 100644
index 0000000..fc241df
--- /dev/null
+++ b/lib/clang/libllvmipa/Makefile
@@ -0,0 +1,13 @@
+# $FreeBSD$
+
+LIB= llvmipa
+
+SRCDIR= lib/Analysis/IPA
+SRCS= CallGraph.cpp \
+ CallGraphSCCPass.cpp \
+ FindUsedTypes.cpp \
+ GlobalsModRef.cpp
+
+TGHDRS= Intrinsics
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmipo/Makefile b/lib/clang/libllvmipo/Makefile
new file mode 100644
index 0000000..24dc9ba
--- /dev/null
+++ b/lib/clang/libllvmipo/Makefile
@@ -0,0 +1,31 @@
+# $FreeBSD$
+
+LIB= llvmipo
+
+SRCDIR= lib/Transforms/IPO
+SRCS= ArgumentPromotion.cpp \
+ ConstantMerge.cpp \
+ DeadArgumentElimination.cpp \
+ DeadTypeElimination.cpp \
+ ExtractGV.cpp \
+ FunctionAttrs.cpp \
+ GlobalDCE.cpp \
+ GlobalOpt.cpp \
+ IPConstantPropagation.cpp \
+ IPO.cpp \
+ InlineAlways.cpp \
+ InlineSimple.cpp \
+ Inliner.cpp \
+ Internalize.cpp \
+ LoopExtractor.cpp \
+ LowerSetJmp.cpp \
+ MergeFunctions.cpp \
+ PartialSpecialization.cpp \
+ PruneEH.cpp \
+ StripDeadPrototypes.cpp \
+ StripSymbols.cpp \
+ StructRetPromotion.cpp
+
+TGHDRS= Intrinsics
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmmc/Makefile b/lib/clang/libllvmmc/Makefile
new file mode 100644
index 0000000..92ce186
--- /dev/null
+++ b/lib/clang/libllvmmc/Makefile
@@ -0,0 +1,35 @@
+# $FreeBSD$
+
+LIB= llvmmc
+
+SRCDIR= lib/MC
+SRCS= MCAsmInfo.cpp \
+ MCAsmInfoCOFF.cpp \
+ MCAsmInfoDarwin.cpp \
+ MCAsmStreamer.cpp \
+ MCAssembler.cpp \
+ MCCodeEmitter.cpp \
+ MCContext.cpp \
+ MCDisassembler.cpp \
+ MCExpr.cpp \
+ MCInst.cpp \
+ MCInstPrinter.cpp \
+ MCLabel.cpp \
+ MCLoggingStreamer.cpp \
+ MCMachOStreamer.cpp \
+ MCNullStreamer.cpp \
+ MCObjectStreamer.cpp \
+ MCObjectWriter.cpp \
+ MCSection.cpp \
+ MCSectionCOFF.cpp \
+ MCSectionELF.cpp \
+ MCSectionMachO.cpp \
+ MCStreamer.cpp \
+ MCSymbol.cpp \
+ MCValue.cpp \
+ MachObjectWriter.cpp \
+ TargetAsmBackend.cpp \
+ WinCOFFObjectWriter.cpp \
+ WinCOFFStreamer.cpp
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmmcparser/Makefile b/lib/clang/libllvmmcparser/Makefile
new file mode 100644
index 0000000..9354af5
--- /dev/null
+++ b/lib/clang/libllvmmcparser/Makefile
@@ -0,0 +1,15 @@
+# $FreeBSD$
+
+LIB= llvmmcparser
+
+SRCDIR= lib/MC/MCParser
+SRCS= AsmLexer.cpp \
+ AsmParser.cpp \
+ DarwinAsmParser.cpp \
+ ELFAsmParser.cpp \
+ MCAsmLexer.cpp \
+ MCAsmParser.cpp \
+ MCAsmParserExtension.cpp \
+ TargetAsmParser.cpp
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmmipsasmprinter/Makefile b/lib/clang/libllvmmipsasmprinter/Makefile
new file mode 100644
index 0000000..6c21785
--- /dev/null
+++ b/lib/clang/libllvmmipsasmprinter/Makefile
@@ -0,0 +1,14 @@
+# $FreeBSD$
+
+LIB= llvmmipsasmprinter
+
+SRCDIR= lib/Target/Mips/AsmPrinter
+INCDIR= lib/Target/Mips
+SRCS= MipsAsmPrinter.cpp
+
+TGHDRS= MipsGenAsmWriter \
+ MipsGenInstrNames \
+ MipsGenRegisterInfo.h \
+ MipsGenRegisterNames
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmmipscodegen/Makefile b/lib/clang/libllvmmipscodegen/Makefile
new file mode 100644
index 0000000..d9b280f
--- /dev/null
+++ b/lib/clang/libllvmmipscodegen/Makefile
@@ -0,0 +1,28 @@
+# $FreeBSD$
+
+LIB= llvmmipscodegen
+
+SRCDIR= lib/Target/Mips
+SRCS= MipsDelaySlotFiller.cpp \
+ MipsISelDAGToDAG.cpp \
+ MipsISelLowering.cpp \
+ MipsInstrInfo.cpp \
+ MipsMCAsmInfo.cpp \
+ MipsRegisterInfo.cpp \
+ MipsSelectionDAGInfo.cpp \
+ MipsSubtarget.cpp \
+ MipsTargetMachine.cpp \
+ MipsTargetObjectFile.cpp
+
+TGHDRS= Intrinsics \
+ MipsGenAsmWriter \
+ MipsGenCallingConv \
+ MipsGenDAGISel \
+ MipsGenInstrInfo \
+ MipsGenInstrNames \
+ MipsGenRegisterInfo.h \
+ MipsGenRegisterInfo \
+ MipsGenRegisterNames \
+ MipsGenSubtarget
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmmipsinfo/Makefile b/lib/clang/libllvmmipsinfo/Makefile
new file mode 100644
index 0000000..127c30c
--- /dev/null
+++ b/lib/clang/libllvmmipsinfo/Makefile
@@ -0,0 +1,12 @@
+# $FreeBSD$
+
+LIB= llvmmipsinfo
+
+SRCDIR= lib/Target/Mips/TargetInfo/
+INCDIR= lib/Target/Mips
+SRCS= MipsTargetInfo.cpp
+
+TGHDRS= MipsGenRegisterNames \
+ MipsGenInstrNames
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmpowerpcasmprinter/Makefile b/lib/clang/libllvmpowerpcasmprinter/Makefile
new file mode 100644
index 0000000..15559b3
--- /dev/null
+++ b/lib/clang/libllvmpowerpcasmprinter/Makefile
@@ -0,0 +1,14 @@
+# $FreeBSD$
+
+LIB= llvmpowerpcasmprinter
+
+SRCDIR= lib/Target/PowerPC/AsmPrinter
+INCDIR= lib/Target/PowerPC
+SRCS= PPCAsmPrinter.cpp
+
+TGHDRS= PPCGenAsmWriter \
+ PPCGenInstrNames \
+ PPCGenRegisterInfo.h \
+ PPCGenRegisterNames
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmpowerpccodegen/Makefile b/lib/clang/libllvmpowerpccodegen/Makefile
new file mode 100644
index 0000000..4c66f82
--- /dev/null
+++ b/lib/clang/libllvmpowerpccodegen/Makefile
@@ -0,0 +1,31 @@
+# $FreeBSD$
+
+LIB= llvmpowerpccodegen
+
+SRCDIR= lib/Target/PowerPC
+SRCS= PPCBranchSelector.cpp \
+ PPCCodeEmitter.cpp \
+ PPCHazardRecognizers.cpp \
+ PPCISelDAGToDAG.cpp \
+ PPCISelLowering.cpp \
+ PPCInstrInfo.cpp \
+ PPCJITInfo.cpp \
+ PPCMCAsmInfo.cpp \
+ PPCPredicates.cpp \
+ PPCRegisterInfo.cpp \
+ PPCSelectionDAGInfo.cpp \
+ PPCSubtarget.cpp \
+ PPCTargetMachine.cpp
+
+TGHDRS= Intrinsics \
+ PPCGenCallingConv \
+ PPCGenCodeEmitter \
+ PPCGenDAGISel \
+ PPCGenInstrInfo \
+ PPCGenInstrNames \
+ PPCGenRegisterInfo.h \
+ PPCGenRegisterInfo \
+ PPCGenRegisterNames \
+ PPCGenSubtarget
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmpowerpcinfo/Makefile b/lib/clang/libllvmpowerpcinfo/Makefile
new file mode 100644
index 0000000..08c91e0
--- /dev/null
+++ b/lib/clang/libllvmpowerpcinfo/Makefile
@@ -0,0 +1,12 @@
+# $FreeBSD$
+
+LIB= llvmpowerpcinfo
+
+SRCDIR= lib/Target/PowerPC/TargetInfo/
+INCDIR= lib/Target/PowerPC
+SRCS= PowerPCTargetInfo.cpp
+
+TGHDRS= PPCGenRegisterNames \
+ PPCGenInstrNames
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmscalaropts/Makefile b/lib/clang/libllvmscalaropts/Makefile
new file mode 100644
index 0000000..aee5d3e
--- /dev/null
+++ b/lib/clang/libllvmscalaropts/Makefile
@@ -0,0 +1,38 @@
+# $FreeBSD$
+
+LIB= llvmscalaropts
+
+SRCDIR= lib/Transforms/Scalar
+SRCS= ADCE.cpp \
+ BasicBlockPlacement.cpp \
+ CodeGenPrepare.cpp \
+ ConstantProp.cpp \
+ DCE.cpp \
+ DeadStoreElimination.cpp \
+ GEPSplitter.cpp \
+ GVN.cpp \
+ IndVarSimplify.cpp \
+ JumpThreading.cpp \
+ LICM.cpp \
+ LoopDeletion.cpp \
+ LoopIndexSplit.cpp \
+ LoopRotation.cpp \
+ LoopStrengthReduce.cpp \
+ LoopUnrollPass.cpp \
+ LoopUnswitch.cpp \
+ MemCpyOptimizer.cpp \
+ Reassociate.cpp \
+ Reg2Mem.cpp \
+ SCCP.cpp \
+ Scalar.cpp \
+ ScalarReplAggregates.cpp \
+ SimplifyCFGPass.cpp \
+ Sink.cpp \
+ SimplifyHalfPowrLibCalls.cpp \
+ SimplifyLibCalls.cpp \
+ TailDuplication.cpp \
+ TailRecursionElimination.cpp
+
+TGHDRS= Intrinsics
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmselectiondag/Makefile b/lib/clang/libllvmselectiondag/Makefile
new file mode 100644
index 0000000..6c508c1
--- /dev/null
+++ b/lib/clang/libllvmselectiondag/Makefile
@@ -0,0 +1,30 @@
+# $FreeBSD$
+
+LIB= llvmselectiondag
+
+SRCDIR= lib/CodeGen/SelectionDAG
+SRCS= DAGCombiner.cpp \
+ FastISel.cpp \
+ FunctionLoweringInfo.cpp \
+ InstrEmitter.cpp \
+ LegalizeDAG.cpp \
+ LegalizeFloatTypes.cpp \
+ LegalizeIntegerTypes.cpp \
+ LegalizeTypes.cpp \
+ LegalizeTypesGeneric.cpp \
+ LegalizeVectorOps.cpp \
+ LegalizeVectorTypes.cpp \
+ ScheduleDAGFast.cpp \
+ ScheduleDAGList.cpp \
+ ScheduleDAGRRList.cpp \
+ ScheduleDAGSDNodes.cpp \
+ SelectionDAG.cpp \
+ SelectionDAGBuilder.cpp \
+ SelectionDAGISel.cpp \
+ SelectionDAGPrinter.cpp \
+ TargetLowering.cpp \
+ TargetSelectionDAGInfo.cpp
+
+TGHDRS= Intrinsics
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmsupport/Makefile b/lib/clang/libllvmsupport/Makefile
new file mode 100644
index 0000000..3a96db2
--- /dev/null
+++ b/lib/clang/libllvmsupport/Makefile
@@ -0,0 +1,52 @@
+# $FreeBSD$
+
+LIB= llvmsupport
+
+SRCDIR= lib/Support
+SRCS= APFloat.cpp \
+ APInt.cpp \
+ APSInt.cpp \
+ Allocator.cpp \
+ CommandLine.cpp \
+ ConstantRange.cpp \
+ DAGDeltaAlgorithm.cpp \
+ Debug.cpp \
+ DeltaAlgorithm.cpp \
+ Dwarf.cpp \
+ ErrorHandling.cpp \
+ FileUtilities.cpp \
+ FoldingSet.cpp \
+ FormattedStream.cpp \
+ GraphWriter.cpp \
+ IsInf.cpp \
+ IsNAN.cpp \
+ ManagedStatic.cpp \
+ MemoryBuffer.cpp \
+ MemoryObject.cpp \
+ PluginLoader.cpp \
+ PrettyStackTrace.cpp \
+ Regex.cpp \
+ SlowOperationInformer.cpp \
+ SmallPtrSet.cpp \
+ SmallVector.cpp \
+ SourceMgr.cpp \
+ Statistic.cpp \
+ StringExtras.cpp \
+ StringMap.cpp \
+ StringPool.cpp \
+ StringRef.cpp \
+ SystemUtils.cpp \
+ TargetRegistry.cpp \
+ Timer.cpp \
+ Triple.cpp \
+ Twine.cpp \
+ circular_raw_ostream.cpp \
+ raw_os_ostream.cpp \
+ raw_ostream.cpp \
+ regcomp.c \
+ regerror.c \
+ regexec.c \
+ regfree.c \
+ regstrlcpy.c
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmsystem/Makefile b/lib/clang/libllvmsystem/Makefile
new file mode 100644
index 0000000..ae8cdc9
--- /dev/null
+++ b/lib/clang/libllvmsystem/Makefile
@@ -0,0 +1,26 @@
+# $FreeBSD$
+
+LIB= llvmsystem
+
+SRCDIR= lib/System
+SRCS= Alarm.cpp \
+ Atomic.cpp \
+ Disassembler.cpp \
+ DynamicLibrary.cpp \
+ Errno.cpp \
+ Host.cpp \
+ IncludeFile.cpp \
+ Memory.cpp \
+ Mutex.cpp \
+ Path.cpp \
+ Process.cpp \
+ Program.cpp \
+ RWMutex.cpp \
+ SearchForAddressOfSpecialSymbol.cpp \
+ Signals.cpp \
+ ThreadLocal.cpp \
+ Threading.cpp \
+ TimeValue.cpp \
+ Valgrind.cpp
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmtarget/Makefile b/lib/clang/libllvmtarget/Makefile
new file mode 100644
index 0000000..de00bc6
--- /dev/null
+++ b/lib/clang/libllvmtarget/Makefile
@@ -0,0 +1,20 @@
+# $FreeBSD$
+
+LIB= llvmtarget
+
+SRCDIR= lib/Target
+SRCS= Mangler.cpp \
+ SubtargetFeature.cpp \
+ Target.cpp \
+ TargetAsmLexer.cpp \
+ TargetData.cpp \
+ TargetELFWriterInfo.cpp \
+ TargetFrameInfo.cpp \
+ TargetInstrInfo.cpp \
+ TargetIntrinsicInfo.cpp \
+ TargetLoweringObjectFile.cpp \
+ TargetMachine.cpp \
+ TargetRegisterInfo.cpp \
+ TargetSubtarget.cpp
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmtransformutils/Makefile b/lib/clang/libllvmtransformutils/Makefile
new file mode 100644
index 0000000..b4bdbec
--- /dev/null
+++ b/lib/clang/libllvmtransformutils/Makefile
@@ -0,0 +1,34 @@
+# $FreeBSD$
+
+LIB= llvmtransformutils
+
+SRCDIR= lib/Transforms/Utils
+SRCS= AddrModeMatcher.cpp \
+ BasicBlockUtils.cpp \
+ BasicInliner.cpp \
+ BreakCriticalEdges.cpp \
+ BuildLibCalls.cpp \
+ CloneFunction.cpp \
+ CloneLoop.cpp \
+ CloneModule.cpp \
+ CodeExtractor.cpp \
+ DemoteRegToStack.cpp \
+ InlineFunction.cpp \
+ InstructionNamer.cpp \
+ LCSSA.cpp \
+ Local.cpp \
+ LoopSimplify.cpp \
+ LoopUnroll.cpp \
+ LowerInvoke.cpp \
+ LowerSwitch.cpp \
+ Mem2Reg.cpp \
+ PromoteMemoryToRegister.cpp \
+ SSAUpdater.cpp \
+ SSI.cpp \
+ SimplifyCFG.cpp \
+ UnifyFunctionExitNodes.cpp \
+ ValueMapper.cpp
+
+TGHDRS= Intrinsics
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmx86asmparser/Makefile b/lib/clang/libllvmx86asmparser/Makefile
new file mode 100644
index 0000000..49f4b79
--- /dev/null
+++ b/lib/clang/libllvmx86asmparser/Makefile
@@ -0,0 +1,14 @@
+# $FreeBSD$
+
+LIB= llvmx86asmparser
+
+SRCDIR= lib/Target/X86/AsmParser
+INCDIR= lib/Target/X86
+SRCS= X86AsmLexer.cpp \
+ X86AsmParser.cpp
+
+TGHDRS= X86GenAsmMatcher \
+ X86GenInstrNames \
+ X86GenRegisterNames
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmx86asmprinter/Makefile b/lib/clang/libllvmx86asmprinter/Makefile
new file mode 100644
index 0000000..9a21b5e
--- /dev/null
+++ b/lib/clang/libllvmx86asmprinter/Makefile
@@ -0,0 +1,19 @@
+# $FreeBSD$
+
+LIB= llvmx86asmprinter
+
+SRCDIR= lib/Target/X86/AsmPrinter
+INCDIR= lib/Target/X86
+SRCS= X86ATTInstPrinter.cpp \
+ X86AsmPrinter.cpp \
+ X86IntelInstPrinter.cpp \
+ X86MCInstLower.cpp
+
+TGHDRS= X86GenAsmWriter1 \
+ X86GenAsmWriter \
+ X86GenInstrInfo \
+ X86GenInstrNames \
+ X86GenRegisterInfo.h \
+ X86GenRegisterNames
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmx86codegen/Makefile b/lib/clang/libllvmx86codegen/Makefile
new file mode 100644
index 0000000..df44a2d
--- /dev/null
+++ b/lib/clang/libllvmx86codegen/Makefile
@@ -0,0 +1,37 @@
+# $FreeBSD$
+
+LIB= llvmx86codegen
+
+SRCDIR= lib/Target/X86
+SRCS= SSEDomainFix.cpp \
+ X86AsmBackend.cpp \
+ X86COFFMachineModuleInfo.cpp \
+ X86CodeEmitter.cpp \
+ X86ELFWriterInfo.cpp \
+ X86FastISel.cpp \
+ X86FloatingPoint.cpp \
+ X86FloatingPointRegKill.cpp \
+ X86ISelDAGToDAG.cpp \
+ X86ISelLowering.cpp \
+ X86InstrInfo.cpp \
+ X86JITInfo.cpp \
+ X86MCAsmInfo.cpp \
+ X86MCCodeEmitter.cpp \
+ X86RegisterInfo.cpp \
+ X86SelectionDAGInfo.cpp \
+ X86Subtarget.cpp \
+ X86TargetMachine.cpp \
+ X86TargetObjectFile.cpp
+
+TGHDRS= Intrinsics \
+ X86GenCallingConv \
+ X86GenDAGISel \
+ X86GenFastISel \
+ X86GenInstrInfo \
+ X86GenInstrNames \
+ X86GenRegisterInfo.h \
+ X86GenRegisterInfo \
+ X86GenRegisterNames \
+ X86GenSubtarget
+
+.include "../clang.lib.mk"
diff --git a/lib/clang/libllvmx86info/Makefile b/lib/clang/libllvmx86info/Makefile
new file mode 100644
index 0000000..6670a24
--- /dev/null
+++ b/lib/clang/libllvmx86info/Makefile
@@ -0,0 +1,12 @@
+# $FreeBSD$
+
+LIB= llvmx86info
+
+SRCDIR= lib/Target/X86/TargetInfo/
+INCDIR= lib/Target/X86
+SRCS= X86TargetInfo.cpp
+
+TGHDRS= X86GenInstrNames \
+ X86GenRegisterNames
+
+.include "../clang.lib.mk"
OpenPOWER on IntegriCloud