I'm working on arm support for the in-tree llvm.  I've got it working
well enough to build "Hello, World", but I still have some exception
handling issues.

As a first step, this adds the build infrastructure.

ok?


Index: include/llvm/ARM/Makefile
===================================================================
RCS file: include/llvm/ARM/Makefile
diff -N include/llvm/ARM/Makefile
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ include/llvm/ARM/Makefile   16 Sep 2016 18:18:50 -0000
@@ -0,0 +1,85 @@
+# $OpenBSD: Makefile,v 1.1 2016/09/05 10:56:48 pascal Exp $
+
+.include <bsd.own.mk>
+
+LLVM_SRCS=     ${.CURDIR}/../../../../../llvm
+
+HDRS=  ARMGenAsmMatcher.inc ARMGenAsmWriter.inc \
+       ARMGenCallingConv.inc ARMGenDAGISel.inc ARMGenDisassemblerTables.inc \
+       ARMGenFastISel.inc ARMGenInstrInfo.inc ARMGenRegisterInfo.inc \
+       ARMGenSubtargetInfo.inc \
+       ARMGenMCCodeEmitter.inc ARMGenMCPseudoLowering.inc \
+       ARMGenDisassemblerTables.inc
+
+all: ${HDRS}
+
+install:
+       # Nothing here so far ...
+
+depend:
+       # Nothing here so far ...
+
+clean:
+       rm -f ${HDRS}
+
+ARMGenRegisterInfo.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-register-info \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+ARMGenDisassemblerTables.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-disassembler \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+ARMGenInstrInfo.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-instr-info \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+ARMGenAsmWriter.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-asm-writer \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+ARMGenAsmMatcher.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-asm-matcher \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+ARMGenDAGISel.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-dag-isel \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+ARMGenFastISel.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-fast-isel \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+ARMGenCallingConv.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-callingconv \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+ARMGenSubtargetInfo.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-subtarget \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+ARMGenMCCodeEmitter.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-emitter \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+ARMGenMCPseudoLowering.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-pseudo-lowering \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+ARMGenDisassemblerTables.inc: ${LLVM_SRCS}/lib/Target/ARM/ARM.td
+       ${.OBJDIR}/../../../llvm-tblgen/llvm-tblgen -gen-disassembler \
+               -I${LLVM_SRCS}/include -I${LLVM_SRCS}/lib/Target/ARM \
+               -o ${.TARGET} ${.ALLSRC}
+
+.include <bsd.obj.mk>
Index: libLLVMARMAsmParser/Makefile
===================================================================
RCS file: libLLVMARMAsmParser/Makefile
diff -N libLLVMARMAsmParser/Makefile
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ libLLVMARMAsmParser/Makefile        16 Sep 2016 18:18:50 -0000
@@ -0,0 +1,20 @@
+# $OpenBSD: Makefile,v 1.1 2016/09/05 10:56:50 pascal Exp $
+
+LIB=   LLVMARMAsmParser
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+=     -I${.OBJDIR}/../include/llvm/ARM -I${LLVM_SRCS}/lib/Target/ARM
+
+.include <bsd.own.mk>
+SRCS=  ARMAsmParser.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/ARM/AsmParser
+
+depend:
+       # Nothing here so far ...
+
+install:
+       # Nothing here so far ...
+
+.include <bsd.lib.mk>
Index: libLLVMARMAsmPrinter/Makefile
===================================================================
RCS file: libLLVMARMAsmPrinter/Makefile
diff -N libLLVMARMAsmPrinter/Makefile
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ libLLVMARMAsmPrinter/Makefile       16 Sep 2016 18:18:50 -0000
@@ -0,0 +1,20 @@
+# $OpenBSD: Makefile,v 1.1 2016/09/05 10:56:50 pascal Exp $
+
+LIB=   LLVMARMAsmPrinter
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+=     -I${.OBJDIR}/../include/llvm/ARM -I${LLVM_SRCS}/lib/Target/ARM
+
+.include <bsd.own.mk>
+SRCS=  ARMInstPrinter.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/ARM/InstPrinter
+
+depend:
+       # Nothing here so far ...
+
+install:
+       # Nothing here so far ...
+
+.include <bsd.lib.mk>
Index: libLLVMARMCodeGen/Makefile
===================================================================
RCS file: libLLVMARMCodeGen/Makefile
diff -N libLLVMARMCodeGen/Makefile
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ libLLVMARMCodeGen/Makefile  16 Sep 2016 18:18:50 -0000
@@ -0,0 +1,49 @@
+# $OpenBSD: Makefile,v 1.1 2016/09/05 10:56:50 pascal Exp $
+
+LIB=   LLVMARMCodeGen
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+=     -I${.OBJDIR}/../include/llvm/ARM -I${LLVM_SRCS}/lib/Target/ARM
+
+.include <bsd.own.mk>
+SRCS=  A15SDOptimizer.cpp \
+       ARMAsmPrinter.cpp \
+       ARMBaseInstrInfo.cpp \
+       ARMBaseRegisterInfo.cpp \
+       ARMConstantIslandPass.cpp \
+       ARMConstantPoolValue.cpp \
+       ARMExpandPseudoInsts.cpp \
+       ARMFastISel.cpp \
+       ARMFrameLowering.cpp \
+       ARMHazardRecognizer.cpp \
+       ARMISelDAGToDAG.cpp \
+       ARMISelLowering.cpp \
+       ARMInstrInfo.cpp \
+       ARMLoadStoreOptimizer.cpp \
+       ARMMCInstLower.cpp \
+       ARMMachineFunctionInfo.cpp \
+       ARMRegisterInfo.cpp \
+       ARMOptimizeBarriersPass.cpp \
+       ARMSelectionDAGInfo.cpp \
+       ARMSubtarget.cpp \
+       ARMTargetMachine.cpp \
+       ARMTargetObjectFile.cpp \
+       ARMTargetTransformInfo.cpp \
+       MLxExpansionPass.cpp \
+       Thumb1FrameLowering.cpp \
+       Thumb1InstrInfo.cpp \
+       ThumbRegisterInfo.cpp \
+       Thumb2ITBlockPass.cpp \
+       Thumb2InstrInfo.cpp \
+       Thumb2SizeReduction.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/ARM
+
+depend:
+       # Nothing here so far ...
+
+install:
+       # Nothing here so far ...
+
+.include <bsd.lib.mk>
Index: libLLVMARMDesc/Makefile
===================================================================
RCS file: libLLVMARMDesc/Makefile
diff -N libLLVMARMDesc/Makefile
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ libLLVMARMDesc/Makefile     16 Sep 2016 18:18:50 -0000
@@ -0,0 +1,32 @@
+# $OpenBSD: Makefile,v 1.1 2016/09/05 10:56:50 pascal Exp $
+
+LIB=   LLVMARMDesc
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+=     -I${.OBJDIR}/../include/llvm/ARM -I${LLVM_SRCS}/lib/Target/ARM
+
+.include <bsd.own.mk>
+SRCS=  ARMAsmBackend.cpp \
+       ARMELFObjectWriter.cpp \
+       ARMELFStreamer.cpp \
+       ARMMachObjectWriter.cpp \
+       ARMMachORelocationInfo.cpp \
+       ARMMCAsmInfo.cpp \
+       ARMMCCodeEmitter.cpp \
+       ARMMCExpr.cpp \
+       ARMMCTargetDesc.cpp \
+       ARMTargetStreamer.cpp \
+       ARMUnwindOpAsm.cpp \
+       ARMWinCOFFObjectWriter.cpp \
+       ARMWinCOFFStreamer.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/ARM/MCTargetDesc
+
+depend:
+       # Nothing here so far ...
+
+install:
+       # Nothing here so far ...
+
+.include <bsd.lib.mk>
Index: libLLVMARMDisassembler/Makefile
===================================================================
RCS file: libLLVMARMDisassembler/Makefile
diff -N libLLVMARMDisassembler/Makefile
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ libLLVMARMDisassembler/Makefile     16 Sep 2016 18:18:50 -0000
@@ -0,0 +1,20 @@
+# $OpenBSD: Makefile,v 1.1 2016/09/05 10:56:50 pascal Exp $
+
+LIB=   LLVMARMDisassembler
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+=     -I${.OBJDIR}/../include/llvm/ARM -I${LLVM_SRCS}/lib/Target/ARM
+
+.include <bsd.own.mk>
+SRCS=  ARMDisassembler.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/ARM/Disassembler
+
+depend:
+       # Nothing here so far ...
+
+install:
+       # Nothing here so far ...
+
+.include <bsd.lib.mk>
Index: libLLVMARMInfo/Makefile
===================================================================
RCS file: libLLVMARMInfo/Makefile
diff -N libLLVMARMInfo/Makefile
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ libLLVMARMInfo/Makefile     16 Sep 2016 18:18:50 -0000
@@ -0,0 +1,20 @@
+# $OpenBSD: Makefile,v 1.1 2016/09/05 10:56:50 pascal Exp $
+
+LIB=   LLVMARMInfo
+NOPIC=
+NOPROFILE=
+
+CPPFLAGS+=     -I${.OBJDIR}/../include/llvm/ARM -I${LLVM_SRCS}/lib/Target/ARM
+
+.include <bsd.own.mk>
+SRCS=  ARMTargetInfo.cpp
+
+.PATH: ${.CURDIR}/../../../llvm/lib/Target/ARM/TargetInfo
+
+depend:
+       # Nothing here so far ...
+
+install:
+       # Nothing here so far ...
+
+.include <bsd.lib.mk>

Reply via email to