svn commit: r305158 - in projects/clang390-import: lib/clang/libllvm share/mk tools/build/options usr.bin/clang
Ed Maste
emaste at FreeBSD.org
Wed Aug 31 21:18:40 UTC 2016
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
More information about the svn-src-projects
mailing list