From owner-svn-src-projects@freebsd.org Wed Aug 31 21:18:40 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 50DE6BCA2B7 for ; Wed, 31 Aug 2016 21:18:40 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1636BE9E; Wed, 31 Aug 2016 21:18:40 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u7VLId4D014456; Wed, 31 Aug 2016 21:18:39 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u7VLIcg7014451; Wed, 31 Aug 2016 21:18:38 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201608312118.u7VLIcg7014451@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 31 Aug 2016 21:18:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r305158 - in projects/clang390-import: lib/clang/libllvm share/mk tools/build/options usr.bin/clang X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Aug 2016 21:18:40 -0000 Author: emaste Date: Wed Aug 31 21:18:38 2016 New Revision: 305158 URL: https://svnweb.freebsd.org/changeset/base/305158 Log: Add WITH_/WITHOUT_LLD knobs to enable the lld linker Use this to control inclusion of the libllvm functionality required by lld. Enable by default on arm64 and amd64, the two platforms where lld is most usable for testing. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D7713 Added: projects/clang390-import/tools/build/options/WITHOUT_LLD (contents, props changed) projects/clang390-import/tools/build/options/WITH_LLD (contents, props changed) Modified: projects/clang390-import/lib/clang/libllvm/Makefile projects/clang390-import/share/mk/src.opts.mk projects/clang390-import/usr.bin/clang/Makefile Modified: projects/clang390-import/lib/clang/libllvm/Makefile ============================================================================== --- projects/clang390-import/lib/clang/libllvm/Makefile Wed Aug 31 21:14:16 2016 (r305157) +++ projects/clang390-import/lib/clang/libllvm/Makefile Wed Aug 31 21:18:38 2016 (r305158) @@ -468,12 +468,12 @@ SRCS_MIN+= IR/ValueSymbolTable.cpp SRCS_MIN+= IR/ValueTypes.cpp SRCS_MIN+= IR/Verifier.cpp SRCS_MIN+= IRReader/IRReader.cpp -SRCS_EXT+= LTO/LTO.cpp -SRCS_EXT+= LTO/LTOCodeGenerator.cpp -SRCS_EXT+= LTO/LTOModule.cpp -SRCS_EXT+= LTO/ThinLTOCodeGenerator.cpp -SRCS_EXT+= LTO/UpdateCompilerUsed.cpp -SRCS_EXT+= LibDriver/LibDriver.cpp +SRCS_EXL+= LTO/LTO.cpp +SRCS_EXL+= LTO/LTOCodeGenerator.cpp +SRCS_EXL+= LTO/LTOModule.cpp +SRCS_EXL+= LTO/ThinLTOCodeGenerator.cpp +SRCS_EXL+= LTO/UpdateCompilerUsed.cpp +SRCS_EXL+= LibDriver/LibDriver.cpp SRCS_MIN+= LineEditor/LineEditor.cpp SRCS_MIN+= Linker/IRMover.cpp SRCS_MIN+= Linker/LinkModules.cpp @@ -489,11 +489,11 @@ SRCS_MIN+= MC/MCAssembler.cpp SRCS_MIN+= MC/MCCodeEmitter.cpp SRCS_MIN+= MC/MCCodeView.cpp SRCS_MIN+= MC/MCContext.cpp -SRCS_XDB+= MC/MCDisassembler/Disassembler.cpp -SRCS_XDB+= MC/MCDisassembler/MCDisassembler.cpp -SRCS_XDB+= MC/MCDisassembler/MCExternalSymbolizer.cpp +SRCS_XDL+= MC/MCDisassembler/Disassembler.cpp +SRCS_XDL+= MC/MCDisassembler/MCDisassembler.cpp +SRCS_XDL+= MC/MCDisassembler/MCExternalSymbolizer.cpp SRCS_MIN+= MC/MCDisassembler/MCRelocationInfo.cpp -SRCS_XDB+= MC/MCDisassembler/MCSymbolizer.cpp +SRCS_XDL+= MC/MCDisassembler/MCSymbolizer.cpp SRCS_MIN+= MC/MCDwarf.cpp SRCS_MIN+= MC/MCELFObjectTargetWriter.cpp SRCS_MIN+= MC/MCELFStreamer.cpp @@ -564,7 +564,7 @@ SRCS_MIN+= Option/Arg.cpp SRCS_MIN+= Option/ArgList.cpp SRCS_MIN+= Option/OptTable.cpp SRCS_MIN+= Option/Option.cpp -SRCS_EXT+= Passes/PassBuilder.cpp +SRCS_EXL+= Passes/PassBuilder.cpp SRCS_MIN+= ProfileData/Coverage/CoverageMapping.cpp SRCS_MIN+= ProfileData/Coverage/CoverageMappingReader.cpp SRCS_MIN+= ProfileData/Coverage/CoverageMappingWriter.cpp @@ -601,7 +601,7 @@ SRCS_MIN+= Support/DynamicLibrary.cpp SRCS_MIN+= Support/Errno.cpp SRCS_MIN+= Support/Error.cpp SRCS_MIN+= Support/ErrorHandling.cpp -SRCS_EXT+= Support/FileOutputBuffer.cpp +SRCS_EXL+= Support/FileOutputBuffer.cpp SRCS_EXT+= Support/FileUtilities.cpp SRCS_MIN+= Support/FoldingSet.cpp SRCS_MIN+= Support/FormattedStream.cpp @@ -651,7 +651,7 @@ SRCS_EXT+= Support/SystemUtils.cpp SRCS_MIN+= Support/TargetParser.cpp SRCS_MIN+= Support/TargetRegistry.cpp SRCS_MIN+= Support/ThreadLocal.cpp -SRCS_EXT+= Support/ThreadPool.cpp +SRCS_EXL+= Support/ThreadPool.cpp SRCS_MIN+= Support/Threading.cpp SRCS_MIN+= Support/TimeValue.cpp SRCS_MIN+= Support/Timer.cpp @@ -709,7 +709,7 @@ SRCS_MIN+= Target/AArch64/AArch64TargetM SRCS_MIN+= Target/AArch64/AArch64TargetObjectFile.cpp SRCS_MIN+= Target/AArch64/AArch64TargetTransformInfo.cpp SRCS_MIN+= Target/AArch64/AsmParser/AArch64AsmParser.cpp -SRCS_XDB+= Target/AArch64/Disassembler/AArch64Disassembler.cpp +SRCS_XDL+= Target/AArch64/Disassembler/AArch64Disassembler.cpp SRCS_MIN+= Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp SRCS_MIN+= Target/AArch64/InstPrinter/AArch64InstPrinter.cpp SRCS_MIN+= Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp @@ -771,7 +771,7 @@ SRCS_MIN+= Target/ARM/Thumb2InstrInfo.cp SRCS_MIN+= Target/ARM/Thumb2SizeReduction.cpp SRCS_MIN+= Target/ARM/ThumbRegisterInfo.cpp SRCS_MIN+= Target/Mips/AsmParser/MipsAsmParser.cpp -SRCS_XDB+= Target/Mips/Disassembler/MipsDisassembler.cpp +SRCS_XDL+= Target/Mips/Disassembler/MipsDisassembler.cpp SRCS_MIN+= Target/Mips/InstPrinter/MipsInstPrinter.cpp SRCS_MIN+= Target/Mips/MCTargetDesc/MipsABIFlagsSection.cpp SRCS_MIN+= Target/Mips/MCTargetDesc/MipsABIInfo.cpp @@ -860,7 +860,7 @@ SRCS_MIN+= Target/PowerPC/PPCVSXSwapRemo SRCS_MIN+= Target/PowerPC/TargetInfo/PowerPCTargetInfo.cpp SRCS_MIN+= Target/Sparc/AsmParser/SparcAsmParser.cpp SRCS_MIN+= Target/Sparc/DelaySlotFiller.cpp -SRCS_XDB+= Target/Sparc/Disassembler/SparcDisassembler.cpp +SRCS_XDL+= Target/Sparc/Disassembler/SparcDisassembler.cpp SRCS_MIN+= Target/Sparc/InstPrinter/SparcInstPrinter.cpp SRCS_MIN+= Target/Sparc/LeonPasses.cpp SRCS_MIN+= Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp @@ -891,8 +891,8 @@ SRCS_MIN+= Target/TargetRecip.cpp SRCS_MIN+= Target/TargetSubtargetInfo.cpp SRCS_MIN+= Target/X86/AsmParser/X86AsmInstrumentation.cpp SRCS_MIN+= Target/X86/AsmParser/X86AsmParser.cpp -SRCS_XDB+= Target/X86/Disassembler/X86Disassembler.cpp -SRCS_XDB+= Target/X86/Disassembler/X86DisassemblerDecoder.cpp +SRCS_XDL+= Target/X86/Disassembler/X86Disassembler.cpp +SRCS_XDL+= Target/X86/Disassembler/X86DisassemblerDecoder.cpp SRCS_MIN+= Target/X86/InstPrinter/X86ATTInstPrinter.cpp SRCS_MIN+= Target/X86/InstPrinter/X86InstComments.cpp SRCS_MIN+= Target/X86/InstPrinter/X86IntelInstPrinter.cpp @@ -1018,7 +1018,7 @@ SRCS_MIN+= Transforms/Scalar/LoopDataPre SRCS_MIN+= Transforms/Scalar/LoopDeletion.cpp SRCS_MIN+= Transforms/Scalar/LoopDistribute.cpp SRCS_MIN+= Transforms/Scalar/LoopIdiomRecognize.cpp -SRCS_EXT+= Transforms/Scalar/LoopInstSimplify.cpp +SRCS_EXL+= Transforms/Scalar/LoopInstSimplify.cpp SRCS_MIN+= Transforms/Scalar/LoopInterchange.cpp SRCS_MIN+= Transforms/Scalar/LoopLoadElimination.cpp SRCS_MIN+= Transforms/Scalar/LoopRerollPass.cpp @@ -1108,9 +1108,15 @@ SRCS_ALL+= ${SRCS_EXT} .if ${MK_CLANG_FULL} != "no" SRCS_ALL+= ${SRCS_FUL} .endif +.if ${MK_CLANG_EXTRAS} != "no" || ${MK_LLD} != "no" +SRCS_ALL+= ${SRCS_EXL} +.endif .if ${MK_CLANG_EXTRAS} != "no" || ${MK_LLDB} != "no" SRCS_ALL+= ${SRCS_XDB} .endif +.if ${MK_CLANG_EXTRAS} != "no" || ${MK_LLDB} != "no" || ${MK_LLD} != "no" +SRCS_ALL+= ${SRCS_XDL} +.endif SRCS+= ${SRCS_ALL:O} llvm/IR/Attributes.inc: ${LLVM_SRCS}/include/llvm/IR/Attributes.td Modified: projects/clang390-import/share/mk/src.opts.mk ============================================================================== --- projects/clang390-import/share/mk/src.opts.mk Wed Aug 31 21:14:16 2016 (r305157) +++ projects/clang390-import/share/mk/src.opts.mk Wed Aug 31 21:18:38 2016 (r305158) @@ -184,6 +184,7 @@ __DEFAULT_NO_OPTIONS = \ EISA \ HESIOD \ LIBSOFT \ + LLD \ NAND \ OFED \ OPENLDAP \ Added: projects/clang390-import/tools/build/options/WITHOUT_LLD ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang390-import/tools/build/options/WITHOUT_LLD Wed Aug 31 21:18:38 2016 (r305158) @@ -0,0 +1,2 @@ +.\" $FreeBSD$ +Set to not build LLVM's lld linker. Added: projects/clang390-import/tools/build/options/WITH_LLD ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang390-import/tools/build/options/WITH_LLD Wed Aug 31 21:18:38 2016 (r305158) @@ -0,0 +1,2 @@ +.\" $FreeBSD$ +Set to build LLVM's lld linker. Modified: projects/clang390-import/usr.bin/clang/Makefile ============================================================================== --- projects/clang390-import/usr.bin/clang/Makefile Wed Aug 31 21:14:16 2016 (r305157) +++ projects/clang390-import/usr.bin/clang/Makefile Wed Aug 31 21:18:38 2016 (r305158) @@ -33,6 +33,9 @@ SUBDIR+= llvm-symbolizer SUBDIR+= opt .endif +.if ${MK_LLD} != "no" +SUBDIR+= lld +.endif .if ${MK_LLDB} != "no" SUBDIR+= lldb .endif # MK_LLDB