Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 31 Aug 2016 21:18:38 +0000 (UTC)
From:      Ed Maste <emaste@FreeBSD.org>
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
Message-ID:  <201608312118.u7VLIcg7014451@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201608312118.u7VLIcg7014451>