Index: head/lib/clang/Makefile =================================================================== --- head/lib/clang/Makefile +++ head/lib/clang/Makefile @@ -56,6 +56,13 @@ libllvmtransformutils \ libllvmvectorize \ \ + libllvmaarch64asmparser \ + libllvmaarch64codegen \ + libllvmaarch64desc \ + libllvmaarch64disassembler \ + libllvmaarch64info \ + libllvmaarch64instprinter \ + libllvmaarch64utils \ libllvmarmasmparser \ libllvmarmcodegen \ libllvmarmdesc \ Index: head/lib/clang/clang.build.mk =================================================================== --- head/lib/clang/clang.build.mk +++ head/lib/clang/clang.build.mk @@ -29,8 +29,8 @@ TARGET_ABI= unknown .endif -TARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/:C/armv6hf/armv6/}-${TARGET_ABI}-freebsd11.0 -BUILD_TRIPLE?= ${BUILD_ARCH:C/amd64/x86_64/:C/armv6hf/armv6/}-unknown-freebsd11.0 +TARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/:C/armv6hf/armv6/:C/arm64/aarch64/}-${TARGET_ABI}-freebsd11.0 +BUILD_TRIPLE?= ${BUILD_ARCH:C/amd64/x86_64/:C/armv6hf/armv6/:C/arm64/aarch64/}-unknown-freebsd11.0 CFLAGS+= -DLLVM_DEFAULT_TARGET_TRIPLE=\"${TARGET_TRIPLE}\" \ -DLLVM_HOST_TRIPLE=\"${BUILD_TRIPLE}\" \ -DDEFAULT_SYSROOT=\"${TOOLS_PREFIX}\" @@ -46,7 +46,7 @@ -I ${LLVM_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ ${LLVM_SRCS}/include/llvm/IR/Intrinsics.td .for arch in \ - ARM/ARM Mips/Mips PowerPC/PPC Sparc/Sparc X86/X86 + AArch64/AArch64 ARM/ARM Mips/Mips PowerPC/PPC Sparc/Sparc X86/X86 . for hdr in \ AsmMatcher/-gen-asm-matcher \ AsmWriter1/-gen-asm-writer,-asmwriternum=1 \ Index: head/lib/clang/include/AArch64GenAsmMatcher.inc =================================================================== --- head/lib/clang/include/AArch64GenAsmMatcher.inc +++ head/lib/clang/include/AArch64GenAsmMatcher.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenAsmMatcher.inc.h" Index: head/lib/clang/include/AArch64GenAsmWriter.inc =================================================================== --- head/lib/clang/include/AArch64GenAsmWriter.inc +++ head/lib/clang/include/AArch64GenAsmWriter.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenAsmWriter.inc.h" Index: head/lib/clang/include/AArch64GenAsmWriter1.inc =================================================================== --- head/lib/clang/include/AArch64GenAsmWriter1.inc +++ head/lib/clang/include/AArch64GenAsmWriter1.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenAsmWriter1.inc.h" Index: head/lib/clang/include/AArch64GenCallingConv.inc =================================================================== --- head/lib/clang/include/AArch64GenCallingConv.inc +++ head/lib/clang/include/AArch64GenCallingConv.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenCallingConv.inc.h" Index: head/lib/clang/include/AArch64GenDAGISel.inc =================================================================== --- head/lib/clang/include/AArch64GenDAGISel.inc +++ head/lib/clang/include/AArch64GenDAGISel.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenDAGISel.inc.h" Index: head/lib/clang/include/AArch64GenDisassemblerTables.inc =================================================================== --- head/lib/clang/include/AArch64GenDisassemblerTables.inc +++ head/lib/clang/include/AArch64GenDisassemblerTables.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenDisassemblerTables.inc.h" Index: head/lib/clang/include/AArch64GenFastISel.inc =================================================================== --- head/lib/clang/include/AArch64GenFastISel.inc +++ head/lib/clang/include/AArch64GenFastISel.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenFastISel.inc.h" Index: head/lib/clang/include/AArch64GenInstrInfo.inc =================================================================== --- head/lib/clang/include/AArch64GenInstrInfo.inc +++ head/lib/clang/include/AArch64GenInstrInfo.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenInstrInfo.inc.h" Index: head/lib/clang/include/AArch64GenMCCodeEmitter.inc =================================================================== --- head/lib/clang/include/AArch64GenMCCodeEmitter.inc +++ head/lib/clang/include/AArch64GenMCCodeEmitter.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenMCCodeEmitter.inc.h" Index: head/lib/clang/include/AArch64GenMCPseudoLowering.inc =================================================================== --- head/lib/clang/include/AArch64GenMCPseudoLowering.inc +++ head/lib/clang/include/AArch64GenMCPseudoLowering.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenMCPseudoLowering.inc.h" Index: head/lib/clang/include/AArch64GenRegisterInfo.inc =================================================================== --- head/lib/clang/include/AArch64GenRegisterInfo.inc +++ head/lib/clang/include/AArch64GenRegisterInfo.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenRegisterInfo.inc.h" Index: head/lib/clang/include/AArch64GenSubtargetInfo.inc =================================================================== --- head/lib/clang/include/AArch64GenSubtargetInfo.inc +++ head/lib/clang/include/AArch64GenSubtargetInfo.inc @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "AArch64GenSubtargetInfo.inc.h" Index: head/lib/clang/include/llvm/Config/AsmParsers.def =================================================================== --- head/lib/clang/include/llvm/Config/AsmParsers.def +++ head/lib/clang/include/llvm/Config/AsmParsers.def @@ -1,5 +1,6 @@ /* $FreeBSD$ */ +LLVM_ASM_PARSER(AArch64) LLVM_ASM_PARSER(ARM) LLVM_ASM_PARSER(Mips) LLVM_ASM_PARSER(PowerPC) Index: head/lib/clang/include/llvm/Config/AsmPrinters.def =================================================================== --- head/lib/clang/include/llvm/Config/AsmPrinters.def +++ head/lib/clang/include/llvm/Config/AsmPrinters.def @@ -1,5 +1,6 @@ /* $FreeBSD$ */ +LLVM_ASM_PRINTER(AArch64) LLVM_ASM_PRINTER(ARM) LLVM_ASM_PRINTER(Mips) LLVM_ASM_PRINTER(PowerPC) Index: head/lib/clang/include/llvm/Config/Disassemblers.def =================================================================== --- head/lib/clang/include/llvm/Config/Disassemblers.def +++ head/lib/clang/include/llvm/Config/Disassemblers.def @@ -1,5 +1,6 @@ /* $FreeBSD$ */ +LLVM_DISASSEMBLER(AArch64) LLVM_DISASSEMBLER(ARM) LLVM_DISASSEMBLER(Mips) LLVM_DISASSEMBLER(PowerPC) Index: head/lib/clang/include/llvm/Config/Targets.def =================================================================== --- head/lib/clang/include/llvm/Config/Targets.def +++ head/lib/clang/include/llvm/Config/Targets.def @@ -1,5 +1,6 @@ /* $FreeBSD$ */ +LLVM_TARGET(AArch64) LLVM_TARGET(ARM) LLVM_TARGET(Mips) LLVM_TARGET(PowerPC) Index: head/lib/clang/libllvmaarch64asmparser/Makefile =================================================================== --- head/lib/clang/libllvmaarch64asmparser/Makefile +++ head/lib/clang/libllvmaarch64asmparser/Makefile @@ -0,0 +1,16 @@ +# $FreeBSD$ + +.include + +LIB= llvmaarch64asmparser + +SRCDIR= lib/Target/AArch64/AsmParser +INCDIR= lib/Target/AArch64 +SRCS= AArch64AsmParser.cpp + +TGHDRS= AArch64GenAsmMatcher \ + AArch64GenInstrInfo \ + AArch64GenRegisterInfo \ + AArch64GenSubtargetInfo + +.include "../clang.lib.mk" Index: head/lib/clang/libllvmaarch64codegen/Makefile =================================================================== --- head/lib/clang/libllvmaarch64codegen/Makefile +++ head/lib/clang/libllvmaarch64codegen/Makefile @@ -0,0 +1,42 @@ +# $FreeBSD$ + +.include + +LIB= llvmaarch64codegen + +SRCDIR= lib/Target/AArch64 +SRCS= AArch64AddressTypePromotion.cpp \ + AArch64AdvSIMDScalarPass.cpp \ + AArch64AsmPrinter.cpp \ + AArch64BranchRelaxation.cpp \ + AArch64CleanupLocalDynamicTLSPass.cpp \ + AArch64CollectLOH.cpp \ + AArch64ConditionalCompares.cpp \ + AArch64DeadRegisterDefinitionsPass.cpp \ + AArch64ExpandPseudoInsts.cpp \ + AArch64FastISel.cpp \ + AArch64FrameLowering.cpp \ + AArch64ISelDAGToDAG.cpp \ + AArch64ISelLowering.cpp \ + AArch64InstrInfo.cpp \ + AArch64LoadStoreOptimizer.cpp \ + AArch64MCInstLower.cpp \ + AArch64PromoteConstant.cpp \ + AArch64RegisterInfo.cpp \ + AArch64SelectionDAGInfo.cpp \ + AArch64StorePairSuppress.cpp \ + AArch64Subtarget.cpp \ + AArch64TargetMachine.cpp \ + AArch64TargetObjectFile.cpp \ + AArch64TargetTransformInfo.cpp + +TGHDRS= AArch64GenCallingConv \ + AArch64GenDAGISel \ + AArch64GenFastISel \ + AArch64GenInstrInfo \ + AArch64GenMCPseudoLowering \ + AArch64GenRegisterInfo \ + AArch64GenSubtargetInfo \ + Intrinsics + +.include "../clang.lib.mk" Index: head/lib/clang/libllvmaarch64desc/Makefile =================================================================== --- head/lib/clang/libllvmaarch64desc/Makefile +++ head/lib/clang/libllvmaarch64desc/Makefile @@ -0,0 +1,24 @@ +# $FreeBSD$ + +.include + +LIB= llvmaarch64desc + +SRCDIR= lib/Target/AArch64/MCTargetDesc +SRCS= AArch64AsmBackend.cpp \ + AArch64ELFObjectWriter.cpp \ + AArch64ELFStreamer.cpp \ + AArch64MCAsmInfo.cpp \ + AArch64MCCodeEmitter.cpp \ + AArch64MCExpr.cpp \ + AArch64MCTargetDesc.cpp \ + AArch64MachObjectWriter.cpp \ + AArch64TargetStreamer.cpp +CFLAGS+= -I${LLVM_SRCS}/${SRCDIR}/.. + +TGHDRS= AArch64GenInstrInfo \ + AArch64GenMCCodeEmitter \ + AArch64GenRegisterInfo \ + AArch64GenSubtargetInfo + +.include "../clang.lib.mk" Index: head/lib/clang/libllvmaarch64disassembler/Makefile =================================================================== --- head/lib/clang/libllvmaarch64disassembler/Makefile +++ head/lib/clang/libllvmaarch64disassembler/Makefile @@ -0,0 +1,20 @@ +# $FreeBSD$ + +.include + +LIB= llvmaarch64disassembler + +SRCDIR= lib/Target/AArch64/Disassembler +INCDIR= lib/Target/AArch64 +SRCS= AArch64Disassembler.cpp + +.if ${MK_CLANG_EXTRAS} != "no" +SRCS+= AArch64ExternalSymbolizer.cpp +.endif + +TGHDRS= AArch64GenDisassemblerTables \ + AArch64GenInstrInfo \ + AArch64GenRegisterInfo \ + AArch64GenSubtargetInfo + +.include "../clang.lib.mk" Index: head/lib/clang/libllvmaarch64info/Makefile =================================================================== --- head/lib/clang/libllvmaarch64info/Makefile +++ head/lib/clang/libllvmaarch64info/Makefile @@ -0,0 +1,15 @@ +# $FreeBSD$ + +.include + +LIB= llvmaarch64info + +SRCDIR= lib/Target/AArch64/TargetInfo +INCDIR= lib/Target/AArch64 +SRCS= AArch64TargetInfo.cpp + +TGHDRS= AArch64GenInstrInfo \ + AArch64GenRegisterInfo \ + AArch64GenSubtargetInfo + +.include "../clang.lib.mk" Index: head/lib/clang/libllvmaarch64instprinter/Makefile =================================================================== --- head/lib/clang/libllvmaarch64instprinter/Makefile +++ head/lib/clang/libllvmaarch64instprinter/Makefile @@ -0,0 +1,17 @@ +# $FreeBSD$ + +.include + +LIB= llvmaarch64instprinter + +SRCDIR= lib/Target/AArch64/InstPrinter +INCDIR= lib/Target/AArch64 +SRCS= AArch64InstPrinter.cpp + +TGHDRS= AArch64GenAsmWriter \ + AArch64GenAsmWriter1 \ + AArch64GenInstrInfo \ + AArch64GenRegisterInfo \ + AArch64GenSubtargetInfo + +.include "../clang.lib.mk" Index: head/lib/clang/libllvmaarch64utils/Makefile =================================================================== --- head/lib/clang/libllvmaarch64utils/Makefile +++ head/lib/clang/libllvmaarch64utils/Makefile @@ -0,0 +1,15 @@ +# $FreeBSD$ + +.include + +LIB= llvmaarch64utils + +SRCDIR= lib/Target/AArch64/Utils +INCDIR= lib/Target/AArch64 +SRCS= AArch64BaseInfo.cpp + +TGHDRS= AArch64GenInstrInfo \ + AArch64GenRegisterInfo \ + AArch64GenSubtargetInfo + +.include "../clang.lib.mk" Index: head/usr.bin/clang/clang/Makefile =================================================================== --- head/usr.bin/clang/clang/Makefile +++ head/usr.bin/clang/clang/Makefile @@ -70,6 +70,13 @@ llvminstrumentation \ llvmbitwriter \ llvmasmparser \ + llvmaarch64disassembler \ + llvmaarch64codegen \ + llvmaarch64asmparser \ + llvmaarch64desc \ + llvmaarch64info \ + llvmaarch64instprinter \ + llvmaarch64utils \ llvmarmdisassembler \ llvmarmcodegen \ llvmarmasmparser \ Index: head/usr.bin/clang/llc/Makefile =================================================================== --- head/usr.bin/clang/llc/Makefile +++ head/usr.bin/clang/llc/Makefile @@ -9,6 +9,13 @@ LIBDEPS=llvmirreader \ llvmasmparser \ + llvmaarch64disassembler \ + llvmaarch64codegen \ + llvmaarch64asmparser \ + llvmaarch64desc \ + llvmaarch64info \ + llvmaarch64instprinter \ + llvmaarch64utils \ llvmarmdisassembler \ llvmarmcodegen \ llvmarmasmparser \ Index: head/usr.bin/clang/lldb/Makefile =================================================================== --- head/usr.bin/clang/lldb/Makefile +++ head/usr.bin/clang/lldb/Makefile @@ -82,67 +82,73 @@ clangbasic \ clanglex \ \ + llvmmcdisassembler \ + llvmobjcarcopts \ + llvmprofiledata \ llvmoption \ - llvmarmasmparser \ - llvmarmcodegen \ - llvminstrumentation \ - llvmirreader \ llvmlinker \ - llvmmipsasmparser \ - llvmmipscodegen \ - llvmmipsdisassembler \ - llvmobjcarcopts \ - llvmpowerpccodegen \ - llvmx86asmparser \ - llvmx86codegen \ - llvmx86disassembler \ llvmmcjit \ - llvmmcdisassembler \ - llvmarmdisassembler \ - llvmselectiondag \ + llvmruntimedyld \ + llvmjit \ + llvmexecutionengine \ + llvmirreader \ llvmipo \ + llvmvectorize \ + llvminstrumentation \ llvmbitwriter \ llvmasmparser \ - llvminterpreter \ - llvmjit \ + llvmaarch64disassembler \ + llvmaarch64codegen \ + llvmaarch64asmparser \ + llvmaarch64desc \ + llvmaarch64info \ + llvmaarch64instprinter \ + llvmaarch64utils \ + llvmarmdisassembler \ + llvmarmcodegen \ + llvmarmasmparser \ llvmarmdesc \ - llvmasmprinter \ + llvmarminfo \ + llvmarminstprinter \ + llvmmipsdisassembler \ + llvmmipscodegen \ + llvmmipsasmparser \ llvmmipsdesc \ + llvmmipsinfo \ llvmmipsinstprinter \ + llvmpowerpcdisassembler \ + llvmpowerpccodegen \ + llvmpowerpcasmparser \ llvmpowerpcdesc \ + llvmpowerpcinfo \ llvmpowerpcinstprinter \ - llvmpowerpcasmparser \ - llvmpowerpcdisassembler \ - llvmprofiledata \ - llvmruntimedyld \ - llvmvectorize \ - llvmx86desc \ - llvmx86instprinter \ - llvmexecutionengine \ - llvmcodegen \ - llvmscalaropts \ llvmsparcdisassembler \ llvmsparccodegen \ llvmsparcasmparser \ llvmsparcdesc \ llvmsparcinfo \ llvmsparcinstprinter \ - llvmarminfo \ - llvmarminstprinter \ - llvmmcparser \ - llvmmipsinfo \ - llvmpowerpcinfo \ - llvmx86info \ - llvmx86utils \ - llvmobject \ - llvmbitreader \ + llvmx86disassembler \ + llvmx86asmparser \ + llvmx86codegen \ + llvmselectiondag \ + llvmasmprinter \ + llvmcodegen \ + llvmscalaropts \ llvminstcombine \ llvmtransformutils \ llvmipa \ llvmanalysis \ llvmtarget \ + llvmx86desc \ + llvmobject \ + llvmmcparser \ + llvmbitreader \ llvmcore \ + llvmx86info \ + llvmx86instprinter \ llvmmc \ + llvmx86utils \ llvmsupport .include "../clang.prog.mk" Index: head/usr.bin/clang/llvm-ar/Makefile =================================================================== --- head/usr.bin/clang/llvm-ar/Makefile +++ head/usr.bin/clang/llvm-ar/Makefile @@ -7,7 +7,14 @@ SRCDIR= tools/llvm-ar SRCS= llvm-ar.cpp -LIBDEPS=llvmarmdisassembler \ +LIBDEPS=llvmaarch64disassembler \ + llvmaarch64codegen \ + llvmaarch64asmparser \ + llvmaarch64desc \ + llvmaarch64info \ + llvmaarch64instprinter \ + llvmaarch64utils \ + llvmarmdisassembler \ llvmarmcodegen \ llvmarmasmparser \ llvmarmdesc \ Index: head/usr.bin/clang/llvm-mc/Makefile =================================================================== --- head/usr.bin/clang/llvm-mc/Makefile +++ head/usr.bin/clang/llvm-mc/Makefile @@ -10,6 +10,13 @@ Disassembler.cpp LIBDEPS=llvmmcdisassembler \ + llvmaarch64disassembler \ + llvmaarch64codegen \ + llvmaarch64asmparser \ + llvmaarch64desc \ + llvmaarch64info \ + llvmaarch64instprinter \ + llvmaarch64utils \ llvmarmdisassembler \ llvmarmcodegen \ llvmarmasmparser \ Index: head/usr.bin/clang/llvm-nm/Makefile =================================================================== --- head/usr.bin/clang/llvm-nm/Makefile +++ head/usr.bin/clang/llvm-nm/Makefile @@ -7,7 +7,14 @@ SRCDIR= tools/llvm-nm SRCS= llvm-nm.cpp -LIBDEPS=llvmarmdisassembler \ +LIBDEPS=llvmaarch64disassembler \ + llvmaarch64codegen \ + llvmaarch64asmparser \ + llvmaarch64desc \ + llvmaarch64info \ + llvmaarch64instprinter \ + llvmaarch64utils \ + llvmarmdisassembler \ llvmarmcodegen \ llvmarmasmparser \ llvmarmdesc \ Index: head/usr.bin/clang/llvm-objdump/Makefile =================================================================== --- head/usr.bin/clang/llvm-objdump/Makefile +++ head/usr.bin/clang/llvm-objdump/Makefile @@ -16,6 +16,13 @@ LIBDEPS=llvmmcdisassembler \ llvmmcanalysis \ llvmdebuginfo \ + llvmaarch64disassembler \ + llvmaarch64codegen \ + llvmaarch64asmparser \ + llvmaarch64desc \ + llvmaarch64info \ + llvmaarch64instprinter \ + llvmaarch64utils \ llvmarmdisassembler \ llvmarmcodegen \ llvmarmasmparser \ Index: head/usr.bin/clang/llvm-rtdyld/Makefile =================================================================== --- head/usr.bin/clang/llvm-rtdyld/Makefile +++ head/usr.bin/clang/llvm-rtdyld/Makefile @@ -14,6 +14,13 @@ llvmjit \ llvmexecutionengine \ llvmruntimedyld \ + llvmaarch64disassembler \ + llvmaarch64codegen \ + llvmaarch64asmparser \ + llvmaarch64desc \ + llvmaarch64info \ + llvmaarch64instprinter \ + llvmaarch64utils \ llvmarmdisassembler \ llvmarmcodegen \ llvmarmasmparser \ Index: head/usr.bin/clang/opt/Makefile =================================================================== --- head/usr.bin/clang/opt/Makefile +++ head/usr.bin/clang/opt/Makefile @@ -15,7 +15,14 @@ opt.cpp TGHDRS= Intrinsics -LIBDEPS=llvmarmdisassembler \ +LIBDEPS=llvmaarch64disassembler \ + llvmaarch64codegen \ + llvmaarch64asmparser \ + llvmaarch64desc \ + llvmaarch64info \ + llvmaarch64instprinter \ + llvmaarch64utils \ + llvmarmdisassembler \ llvmarmcodegen \ llvmarmasmparser \ llvmarmdesc \