summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorPatrick Wildt <patrick@cvs.openbsd.org>2016-11-24 22:32:30 +0000
committerPatrick Wildt <patrick@cvs.openbsd.org>2016-11-24 22:32:30 +0000
commit3c828a2bf8fe3ed3d3020f7dfb802b27aae4ae19 (patch)
treed9ca10e0598c351dfa178164872caafdf2af74f3 /gnu
parent39b0c25012d1aea950a4ffb19979b247a8564ea2 (diff)
Add AArch64 backend build infrastructure.
ok pascal@
Diffstat (limited to 'gnu')
-rw-r--r--gnu/usr.bin/clang/Makefile.arch6
-rw-r--r--gnu/usr.bin/clang/include/llvm/AArch64/Makefile92
-rw-r--r--gnu/usr.bin/clang/libLLVMAArch64AsmParser/Makefile21
-rw-r--r--gnu/usr.bin/clang/libLLVMAArch64AsmPrinter/Makefile21
-rw-r--r--gnu/usr.bin/clang/libLLVMAArch64CodeGen/Makefile48
-rw-r--r--gnu/usr.bin/clang/libLLVMAArch64Desc/Makefile29
-rw-r--r--gnu/usr.bin/clang/libLLVMAArch64Disassembler/Makefile22
-rw-r--r--gnu/usr.bin/clang/libLLVMAArch64Info/Makefile21
-rw-r--r--gnu/usr.bin/clang/libLLVMAArch64Utils/Makefile21
9 files changed, 279 insertions, 2 deletions
diff --git a/gnu/usr.bin/clang/Makefile.arch b/gnu/usr.bin/clang/Makefile.arch
index b372b686309..bc4a8cbff44 100644
--- a/gnu/usr.bin/clang/Makefile.arch
+++ b/gnu/usr.bin/clang/Makefile.arch
@@ -1,4 +1,4 @@
-# $OpenBSD: Makefile.arch,v 1.1 2016/09/05 10:56:48 pascal Exp $
+# $OpenBSD: Makefile.arch,v 1.2 2016/11/24 22:32:29 patrick Exp $
.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"
LLVM_ARCH= X86
@@ -6,13 +6,15 @@ LLVM_ARCH= X86
LLVM_ARCH= PowerPC
.elif ${MACHINE_ARCH} == "sparc64"
LLVM_ARCH= Sparc
+.elif ${MACHINE_ARCH} == "aarch64"
+LLVM_ARCH= AArch64
.elif ${MACHINE_ARCH} == "arm"
LLVM_ARCH= ARM
.elif ${MACHINE_ARCH} == "mips64" || ${MACHINE_ARCH} == "mips64el"
LLVM_ARCH= Mips
.endif
-.if !(${LLVM_ARCH} == "X86")
+.if !(${LLVM_ARCH} == "X86" || ${LLVM_ARCH} == "AArch64")
BACKEND_UTILS=
.endif
diff --git a/gnu/usr.bin/clang/include/llvm/AArch64/Makefile b/gnu/usr.bin/clang/include/llvm/AArch64/Makefile
new file mode 100644
index 00000000000..32faf7a7a50
--- /dev/null
+++ b/gnu/usr.bin/clang/include/llvm/AArch64/Makefile
@@ -0,0 +1,92 @@
+# $OpenBSD: Makefile,v 1.1 2016/11/24 22:32:29 patrick Exp $
+
+.include <bsd.own.mk>
+
+LLVM_SRCS= ${.CURDIR}/../../../../../llvm
+
+HDRS= AArch64GenAsmMatcher.inc AArch64GenAsmWriter.inc \
+ AArch64GenAsmWriter1.inc \
+ AArch64GenCallingConv.inc AArch64GenDAGISel.inc \
+ AArch64GenDisassemblerTables.inc AArch64GenFastISel.inc \
+ AArch64GenInstrInfo.inc AArch64GenRegisterInfo.inc \
+ AArch64GenSubtargetInfo.inc \
+ AArch64GenMCCodeEmitter.inc AArch64GenMCPseudoLowering.inc \
+ AArch64GenDisassemblerTables.inc
+
+all: ${HDRS}
+
+install:
+ # Nothing here so far ...
+
+depend:
+ # Nothing here so far ...
+
+clean cleandir:
+ rm -f ${HDRS}
+
+AArch64GenRegisterInfo.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-register-info \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenDisassemblerTables.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-disassembler \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenInstrInfo.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-instr-info \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenAsmWriter.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-asm-writer \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenAsmWriter1.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-asm-writer \
+ -asmwriternum=1 -I${LLVM_SRCS}/include \
+ -I${LLVM_SRCS}/lib/Target/AArch64 -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenAsmMatcher.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-asm-matcher \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenDAGISel.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-dag-isel \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenFastISel.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-fast-isel \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenCallingConv.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-callingconv \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenSubtargetInfo.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-subtarget \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenMCCodeEmitter.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-emitter \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenMCPseudoLowering.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-pseudo-lowering \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+AArch64GenDisassemblerTables.inc: ${LLVM_SRCS}/lib/Target/AArch64/AArch64.td
+ ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-disassembler \
+ -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/AArch64 \
+ -o ${.TARGET} ${.ALLSRC}
+
+.include <bsd.obj.mk>
diff --git a/gnu/usr.bin/clang/libLLVMAArch64AsmParser/Makefile b/gnu/usr.bin/clang/libLLVMAArch64AsmParser/Makefile
new file mode 100644
index 00000000000..d36ad8cc68f
--- /dev/null
+++ b/gnu/usr.bin/clang/libLLVMAArch64AsmParser/Makefile
@@ -0,0 +1,21 @@
+# $OpenBSD: Makefile,v 1.1 2016/11/24 22:32:29 patrick Exp $
+
+LIB= LLVMAArch64AsmParser
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+= -I${.OBJDIR}/../include/llvm/AArch64 \
+ -I${LLVM_SRCS}/lib/Target/AArch64
+
+.include <bsd.own.mk>
+SRCS= AArch64AsmParser.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/AArch64/AsmParser
+
+depend:
+ # Nothing here so far ...
+
+install:
+ # Nothing here so far ...
+
+.include <bsd.lib.mk>
diff --git a/gnu/usr.bin/clang/libLLVMAArch64AsmPrinter/Makefile b/gnu/usr.bin/clang/libLLVMAArch64AsmPrinter/Makefile
new file mode 100644
index 00000000000..79b22f079b3
--- /dev/null
+++ b/gnu/usr.bin/clang/libLLVMAArch64AsmPrinter/Makefile
@@ -0,0 +1,21 @@
+# $OpenBSD: Makefile,v 1.1 2016/11/24 22:32:29 patrick Exp $
+
+LIB= LLVMAArch64AsmPrinter
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+= -I${.OBJDIR}/../include/llvm/AArch64 \
+ -I${LLVM_SRCS}/lib/Target/AArch64
+
+.include <bsd.own.mk>
+SRCS= AArch64InstPrinter.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/AArch64/InstPrinter
+
+depend:
+ # Nothing here so far ...
+
+install:
+ # Nothing here so far ...
+
+.include <bsd.lib.mk>
diff --git a/gnu/usr.bin/clang/libLLVMAArch64CodeGen/Makefile b/gnu/usr.bin/clang/libLLVMAArch64CodeGen/Makefile
new file mode 100644
index 00000000000..15dcddcb1f1
--- /dev/null
+++ b/gnu/usr.bin/clang/libLLVMAArch64CodeGen/Makefile
@@ -0,0 +1,48 @@
+# $OpenBSD: Makefile,v 1.1 2016/11/24 22:32:29 patrick Exp $
+
+LIB= LLVMAArch64CodeGen
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+= -I${.OBJDIR}/../include/llvm/AArch64 \
+ -I${LLVM_SRCS}/lib/Target/AArch64
+
+.include <bsd.own.mk>
+SRCS= AArch64A57FPLoadBalancing.cpp \
+ AArch64AddressTypePromotion.cpp \
+ AArch64AdvSIMDScalarPass.cpp \
+ AArch64AsmPrinter.cpp \
+ AArch64BranchRelaxation.cpp \
+ AArch64CleanupLocalDynamicTLSPass.cpp \
+ AArch64CollectLOH.cpp \
+ AArch64ConditionalCompares.cpp \
+ AArch64DeadRegisterDefinitionsPass.cpp \
+ AArch64ExpandPseudoInsts.cpp \
+ AArch64FastISel.cpp \
+ AArch64A53Fix835769.cpp \
+ AArch64FrameLowering.cpp \
+ AArch64ConditionOptimizer.cpp \
+ AArch64ISelDAGToDAG.cpp \
+ AArch64ISelLowering.cpp \
+ AArch64InstrInfo.cpp \
+ AArch64LoadStoreOptimizer.cpp \
+ AArch64MCInstLower.cpp \
+ AArch64PromoteConstant.cpp \
+ AArch64PBQPRegAlloc.cpp \
+ AArch64RegisterInfo.cpp \
+ AArch64SelectionDAGInfo.cpp \
+ AArch64StorePairSuppress.cpp \
+ AArch64Subtarget.cpp \
+ AArch64TargetMachine.cpp \
+ AArch64TargetObjectFile.cpp \
+ AArch64TargetTransformInfo.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/AArch64
+
+depend:
+ # Nothing here so far ...
+
+install:
+ # Nothing here so far ...
+
+.include <bsd.lib.mk>
diff --git a/gnu/usr.bin/clang/libLLVMAArch64Desc/Makefile b/gnu/usr.bin/clang/libLLVMAArch64Desc/Makefile
new file mode 100644
index 00000000000..c360c87078b
--- /dev/null
+++ b/gnu/usr.bin/clang/libLLVMAArch64Desc/Makefile
@@ -0,0 +1,29 @@
+# $OpenBSD: Makefile,v 1.1 2016/11/24 22:32:29 patrick Exp $
+
+LIB= LLVMAArch64Desc
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+= -I${.OBJDIR}/../include/llvm/AArch64 \
+ -I${LLVM_SRCS}/lib/Target/AArch64
+
+.include <bsd.own.mk>
+SRCS= AArch64AsmBackend.cpp \
+ AArch64ELFObjectWriter.cpp \
+ AArch64ELFStreamer.cpp \
+ AArch64MachObjectWriter.cpp \
+ AArch64MCAsmInfo.cpp \
+ AArch64MCCodeEmitter.cpp \
+ AArch64MCExpr.cpp \
+ AArch64MCTargetDesc.cpp \
+ AArch64TargetStreamer.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/AArch64/MCTargetDesc
+
+depend:
+ # Nothing here so far ...
+
+install:
+ # Nothing here so far ...
+
+.include <bsd.lib.mk>
diff --git a/gnu/usr.bin/clang/libLLVMAArch64Disassembler/Makefile b/gnu/usr.bin/clang/libLLVMAArch64Disassembler/Makefile
new file mode 100644
index 00000000000..2d2ec020939
--- /dev/null
+++ b/gnu/usr.bin/clang/libLLVMAArch64Disassembler/Makefile
@@ -0,0 +1,22 @@
+# $OpenBSD: Makefile,v 1.1 2016/11/24 22:32:29 patrick Exp $
+
+LIB= LLVMAArch64Disassembler
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+= -I${.OBJDIR}/../include/llvm/AArch64 \
+ -I${LLVM_SRCS}/lib/Target/AArch64
+
+.include <bsd.own.mk>
+SRCS= AArch64Disassembler.cpp \
+ AArch64ExternalSymbolizer.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/AArch64/Disassembler
+
+depend:
+ # Nothing here so far ...
+
+install:
+ # Nothing here so far ...
+
+.include <bsd.lib.mk>
diff --git a/gnu/usr.bin/clang/libLLVMAArch64Info/Makefile b/gnu/usr.bin/clang/libLLVMAArch64Info/Makefile
new file mode 100644
index 00000000000..949c94c9272
--- /dev/null
+++ b/gnu/usr.bin/clang/libLLVMAArch64Info/Makefile
@@ -0,0 +1,21 @@
+# $OpenBSD: Makefile,v 1.1 2016/11/24 22:32:29 patrick Exp $
+
+LIB= LLVMAArch64Info
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+= -I${.OBJDIR}/../include/llvm/AArch64 \
+ -I${LLVM_SRCS}/lib/Target/AArch64
+
+.include <bsd.own.mk>
+SRCS= AArch64TargetInfo.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/AArch64/TargetInfo
+
+depend:
+ # Nothing here so far ...
+
+install:
+ # Nothing here so far ...
+
+.include <bsd.lib.mk>
diff --git a/gnu/usr.bin/clang/libLLVMAArch64Utils/Makefile b/gnu/usr.bin/clang/libLLVMAArch64Utils/Makefile
new file mode 100644
index 00000000000..182073e6f54
--- /dev/null
+++ b/gnu/usr.bin/clang/libLLVMAArch64Utils/Makefile
@@ -0,0 +1,21 @@
+# $OpenBSD: Makefile,v 1.1 2016/11/24 22:32:29 patrick Exp $
+
+LIB= LLVMAArch64Utils
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+= -I${.OBJDIR}/../include/llvm/AArch64 \
+ -I${LLVM_SRCS}/lib/Target/AArch64
+
+.include <bsd.own.mk>
+SRCS= AArch64BaseInfo.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/AArch64/Utils
+
+depend:
+ # Nothing here so far ...
+
+install:
+ # Nothing here so far ...
+
+.include <bsd.lib.mk>