From 2a3f739bfccd52e5c86122a17ef062bfe6766d4f Mon Sep 17 00:00:00 2001 From: Nico Weber Date: Wed, 12 Dec 2018 00:04:38 +0000 Subject: [PATCH] [gn build] Add build files for lib/LTO, lib/Linker, lib/Passes, lib/Transforms/{IPO,Instrumentation,ObjCARC} Differential Revision: https://reviews.llvm.org/D55553 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@348905 91177308-0d34-0410-b5e6-96231b3b80d8 --- utils/gn/secondary/BUILD.gn | 1 + utils/gn/secondary/llvm/lib/LTO/BUILD.gn | 32 ++++++++++++ utils/gn/secondary/llvm/lib/Linker/BUILD.gn | 12 +++++ utils/gn/secondary/llvm/lib/Passes/BUILD.gn | 22 ++++++++ .../gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn | 58 ++++++++++++++++++++++ .../llvm/lib/Transforms/Instrumentation/BUILD.gn | 29 +++++++++++ .../secondary/llvm/lib/Transforms/ObjCARC/BUILD.gn | 20 ++++++++ 7 files changed, 174 insertions(+) create mode 100644 utils/gn/secondary/llvm/lib/LTO/BUILD.gn create mode 100644 utils/gn/secondary/llvm/lib/Linker/BUILD.gn create mode 100644 utils/gn/secondary/llvm/lib/Passes/BUILD.gn create mode 100644 utils/gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn create mode 100644 utils/gn/secondary/llvm/lib/Transforms/Instrumentation/BUILD.gn create mode 100644 utils/gn/secondary/llvm/lib/Transforms/ObjCARC/BUILD.gn diff --git a/utils/gn/secondary/BUILD.gn b/utils/gn/secondary/BUILD.gn index 78c8a22aac9..8df3b370567 100644 --- a/utils/gn/secondary/BUILD.gn +++ b/utils/gn/secondary/BUILD.gn @@ -1,5 +1,6 @@ group("default") { deps = [ + "//llvm/lib/LTO", "//llvm/tools/llc", "//llvm/tools/llvm-undname", ] diff --git a/utils/gn/secondary/llvm/lib/LTO/BUILD.gn b/utils/gn/secondary/llvm/lib/LTO/BUILD.gn new file mode 100644 index 00000000000..e4d50d94847 --- /dev/null +++ b/utils/gn/secondary/llvm/lib/LTO/BUILD.gn @@ -0,0 +1,32 @@ +static_library("LTO") { + output_name = "LLVMLTO" + deps = [ + "//llvm/include/llvm/Config:config", + "//llvm/lib/Analysis", + "//llvm/lib/Bitcode/Reader", + "//llvm/lib/Bitcode/Writer", + "//llvm/lib/CodeGen", + "//llvm/lib/IR", + "//llvm/lib/Linker", + "//llvm/lib/MC", + "//llvm/lib/Object", + "//llvm/lib/Passes", + "//llvm/lib/Support", + "//llvm/lib/Target", + "//llvm/lib/Transforms/AggressiveInstCombine", + "//llvm/lib/Transforms/IPO", + "//llvm/lib/Transforms/InstCombine", + "//llvm/lib/Transforms/ObjCARC", + "//llvm/lib/Transforms/Scalar", + "//llvm/lib/Transforms/Utils", + ] + sources = [ + "Caching.cpp", + "LTO.cpp", + "LTOBackend.cpp", + "LTOCodeGenerator.cpp", + "LTOModule.cpp", + "ThinLTOCodeGenerator.cpp", + "UpdateCompilerUsed.cpp", + ] +} diff --git a/utils/gn/secondary/llvm/lib/Linker/BUILD.gn b/utils/gn/secondary/llvm/lib/Linker/BUILD.gn new file mode 100644 index 00000000000..42dbd92b48a --- /dev/null +++ b/utils/gn/secondary/llvm/lib/Linker/BUILD.gn @@ -0,0 +1,12 @@ +static_library("Linker") { + output_name = "LLVMLinker" + deps = [ + "//llvm/lib/IR", + "//llvm/lib/Support", + "//llvm/lib/Transforms/Utils", + ] + sources = [ + "IRMover.cpp", + "LinkModules.cpp", + ] +} diff --git a/utils/gn/secondary/llvm/lib/Passes/BUILD.gn b/utils/gn/secondary/llvm/lib/Passes/BUILD.gn new file mode 100644 index 00000000000..c8a9596da15 --- /dev/null +++ b/utils/gn/secondary/llvm/lib/Passes/BUILD.gn @@ -0,0 +1,22 @@ +static_library("Passes") { + output_name = "LLVMPasses" + deps = [ + "//llvm/lib/Analysis", + "//llvm/lib/CodeGen", + "//llvm/lib/IR", + "//llvm/lib/Support", + "//llvm/lib/Target", + "//llvm/lib/Transforms/AggressiveInstCombine", + "//llvm/lib/Transforms/IPO", + "//llvm/lib/Transforms/InstCombine", + "//llvm/lib/Transforms/Instrumentation", + "//llvm/lib/Transforms/Scalar", + "//llvm/lib/Transforms/Utils", + "//llvm/lib/Transforms/Vectorize", + ] + sources = [ + "PassBuilder.cpp", + "PassPlugin.cpp", + "StandardInstrumentations.cpp", + ] +} diff --git a/utils/gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn b/utils/gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn new file mode 100644 index 00000000000..636936bf0ac --- /dev/null +++ b/utils/gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn @@ -0,0 +1,58 @@ +static_library("IPO") { + output_name = "LLVMipo" + deps = [ + "//llvm/lib/Analysis", + "//llvm/lib/Bitcode/Reader", + "//llvm/lib/Bitcode/Writer", + "//llvm/lib/IR", + "//llvm/lib/IRReader", + "//llvm/lib/Linker", + "//llvm/lib/Object", + "//llvm/lib/ProfileData", + "//llvm/lib/Support", + "//llvm/lib/Transforms/AggressiveInstCombine", + "//llvm/lib/Transforms/InstCombine", + "//llvm/lib/Transforms/Instrumentation", + "//llvm/lib/Transforms/Scalar", + "//llvm/lib/Transforms/Utils", + "//llvm/lib/Transforms/Vectorize", + ] + sources = [ + "AlwaysInliner.cpp", + "ArgumentPromotion.cpp", + "BarrierNoopPass.cpp", + "BlockExtractor.cpp", + "CalledValuePropagation.cpp", + "ConstantMerge.cpp", + "CrossDSOCFI.cpp", + "DeadArgumentElimination.cpp", + "ElimAvailExtern.cpp", + "ExtractGV.cpp", + "ForceFunctionAttrs.cpp", + "FunctionAttrs.cpp", + "FunctionImport.cpp", + "GlobalDCE.cpp", + "GlobalOpt.cpp", + "GlobalSplit.cpp", + "HotColdSplitting.cpp", + "IPConstantPropagation.cpp", + "IPO.cpp", + "InferFunctionAttrs.cpp", + "InlineSimple.cpp", + "Inliner.cpp", + "Internalize.cpp", + "LoopExtractor.cpp", + "LowerTypeTests.cpp", + "MergeFunctions.cpp", + "PartialInlining.cpp", + "PassManagerBuilder.cpp", + "PruneEH.cpp", + "SCCP.cpp", + "SampleProfile.cpp", + "StripDeadPrototypes.cpp", + "StripSymbols.cpp", + "SyntheticCountsPropagation.cpp", + "ThinLTOBitcodeWriter.cpp", + "WholeProgramDevirt.cpp", + ] +} diff --git a/utils/gn/secondary/llvm/lib/Transforms/Instrumentation/BUILD.gn b/utils/gn/secondary/llvm/lib/Transforms/Instrumentation/BUILD.gn new file mode 100644 index 00000000000..0a748893c23 --- /dev/null +++ b/utils/gn/secondary/llvm/lib/Transforms/Instrumentation/BUILD.gn @@ -0,0 +1,29 @@ +static_library("Instrumentation") { + output_name = "LLVMInstrumentation" + deps = [ + "//llvm/lib/Analysis", + "//llvm/lib/IR", + "//llvm/lib/MC", + "//llvm/lib/ProfileData", + "//llvm/lib/Support", + "//llvm/lib/Transforms/Utils", + ] + sources = [ + "AddressSanitizer.cpp", + "BoundsChecking.cpp", + "CGProfile.cpp", + "ControlHeightReduction.cpp", + "DataFlowSanitizer.cpp", + "EfficiencySanitizer.cpp", + "GCOVProfiling.cpp", + "HWAddressSanitizer.cpp", + "IndirectCallPromotion.cpp", + "InstrProfiling.cpp", + "Instrumentation.cpp", + "MemorySanitizer.cpp", + "PGOInstrumentation.cpp", + "PGOMemOPSizeOpt.cpp", + "SanitizerCoverage.cpp", + "ThreadSanitizer.cpp", + ] +} diff --git a/utils/gn/secondary/llvm/lib/Transforms/ObjCARC/BUILD.gn b/utils/gn/secondary/llvm/lib/Transforms/ObjCARC/BUILD.gn new file mode 100644 index 00000000000..e7b20845489 --- /dev/null +++ b/utils/gn/secondary/llvm/lib/Transforms/ObjCARC/BUILD.gn @@ -0,0 +1,20 @@ +static_library("ObjCARC") { + output_name = "LLVMObjCARCOpts" + deps = [ + "//llvm/lib/Analysis", + "//llvm/lib/IR", + "//llvm/lib/Support", + "//llvm/lib/Transforms/Utils", + ] + sources = [ + "DependencyAnalysis.cpp", + "ObjCARC.cpp", + "ObjCARCAPElim.cpp", + "ObjCARCContract.cpp", + "ObjCARCExpand.cpp", + "ObjCARCOpts.cpp", + "ProvenanceAnalysis.cpp", + "ProvenanceAnalysisEvaluator.cpp", + "PtrState.cpp", + ] +} -- 2.11.0