From 758796a466bcdd3323c1cc7900b04c82a618c358 Mon Sep 17 00:00:00 2001 From: Nicolas Capens Date: Fri, 12 Oct 2018 16:45:51 -0400 Subject: [PATCH] Add GN build file for LLVM 7.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This enables supporting ARM64 for Chromium. Bug b/115344057 Bug chromium:881334 Change-Id: I45020e826684c6fa6e663a90b75703193ad670c3 Reviewed-on: https://swiftshader-review.googlesource.com/c/21451 Tested-by: Nicolas Capens Reviewed-by: Alexis Hétu --- src/Common/Version.h | 2 +- src/Reactor/BUILD.gn | 22 +- src/Reactor/Thread.hpp | 8 +- third_party/llvm-7.0/BUILD.gn | 1132 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 1156 insertions(+), 8 deletions(-) create mode 100644 third_party/llvm-7.0/BUILD.gn diff --git a/src/Common/Version.h b/src/Common/Version.h index bf1701edf..19fcfcec0 100644 --- a/src/Common/Version.h +++ b/src/Common/Version.h @@ -15,7 +15,7 @@ #define MAJOR_VERSION 4 #define MINOR_VERSION 1 #define BUILD_VERSION 0 -#define BUILD_REVISION 3 +#define BUILD_REVISION 4 #define STRINGIFY(x) #x #define MACRO_STRINGIFY(x) STRINGIFY(x) diff --git a/src/Reactor/BUILD.gn b/src/Reactor/BUILD.gn index bbe1dab48..688707c64 100644 --- a/src/Reactor/BUILD.gn +++ b/src/Reactor/BUILD.gn @@ -15,7 +15,8 @@ import("../swiftshader.gni") declare_args() { - use_swiftshader_with_subzero = true + # Subzero produces smaller binaries, but doesn't support ARM64. + use_swiftshader_with_subzero = (target_cpu != "arm64") } # Need a separate config to ensure the warnings are added to the end. @@ -287,7 +288,11 @@ swiftshader_source_set("swiftshader_reactor") { include_dirs = [ ] } else { - deps += [ "../../third_party/LLVM:swiftshader_llvm" ] + llvm7_dir = "../../third_party/llvm-7.0" + + deps += [ "$llvm7_dir:swiftshader_llvm" ] + + defines = [ "REACTOR_LLVM_VERSION=7" ] sources += [ "LLVMReactor.cpp", @@ -299,7 +304,18 @@ swiftshader_source_set("swiftshader_reactor") { configs = [ ":swiftshader_reactor_private_config" ] include_dirs = [ - "../../third_party/LLVM/include/", + "$llvm7_dir/llvm/include/", + "$llvm7_dir/configs/common/include/", ] + + if (is_linux) { + include_dirs += [ "$llvm7_dir/configs/linux/include/" ] + } else if (is_windows) { + include_dirs += [ "$llvm7_dir/configs/windows/include/" ] + } else if (is_android) { + include_dirs += [ "$llvm7_dir/configs/android/include/" ] + } else { + assert(false, "llvm-7.0 not configured for target platform") + } } } diff --git a/src/Reactor/Thread.hpp b/src/Reactor/Thread.hpp index 7f8be136b..ed3bb5509 100644 --- a/src/Reactor/Thread.hpp +++ b/src/Reactor/Thread.hpp @@ -114,9 +114,9 @@ namespace rr #if PERF_PROFILE int64_t atomicExchange(int64_t volatile *target, int64_t value); + int atomicExchange(int volatile *target, int value); #endif - int atomicExchange(int volatile *target, int value); int atomicIncrement(int volatile *value); int atomicDecrement(int volatile *value); int atomicAdd(int volatile *target, int value); @@ -241,11 +241,10 @@ namespace rr return InterlockedExchange64(target, value); #else int ret; - __asm__ __volatile__("lock; xchg8 %0,(%1)" : "=r" (ret) :"r" (target), "0" (value) : "memory" ); + __asm__ __volatile__("lock; xchg8 %x0,(%x1)" : "=r" (ret) :"r" (target), "0" (value) : "memory" ); return ret; #endif } - #endif inline int atomicExchange(volatile int *target, int value) { @@ -253,10 +252,11 @@ namespace rr return InterlockedExchange((volatile long*)target, (long)value); #else int ret; - __asm__ __volatile__("lock; xchgl %0,(%1)" : "=r" (ret) :"r" (target), "0" (value) : "memory" ); + __asm__ __volatile__("lock; xchgl %x0,(%x1)" : "=r" (ret) :"r" (target), "0" (value) : "memory" ); return ret; #endif } + #endif inline int atomicIncrement(volatile int *value) { diff --git a/third_party/llvm-7.0/BUILD.gn b/third_party/llvm-7.0/BUILD.gn new file mode 100644 index 000000000..b113582ab --- /dev/null +++ b/third_party/llvm-7.0/BUILD.gn @@ -0,0 +1,1132 @@ +# Copyright 2016 The SwiftShader Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import("../../src/swiftshader.gni") + +# Need a separate config to ensure the warnings are added to the end. +config("swiftshader_llvm_private_config") { + cflags = [] + + if (is_win) { + cflags += [ + "/wd4005", + "/wd4065", + "/wd4146", + "/wd4245", + "/wd4267", + "/wd4310", + "/wd4319", + "/wd4334", + "/wd4389", + "/wd4624", + "/wd4701", + "/wd4702", + "/wd4703", + "/wd4706", + "/wd4800", + ] + + if (!is_debug) { + cflags += [ "/wd4324" ] + } + + if (is_clang) { + cflags += [ + "-Wno-format", + "-Wno-sign-compare", + "-Wno-macro-redefined", + ] + } + } + + if (is_fuchsia) { + cflags += [ "-Wno-error" ] + } + + if (is_clang && (target_cpu == "x86" || target_cpu == "x64")) { + cflags += [ + "-msse2", + "-Wno-header-hygiene", + "-Wno-null-dereference", + ] + } else { + # cflags += [ "-Wno-unused-but-set-variable" ] + } + cflags += [ + "-Wno-attributes", + "-Wno-deprecated-declarations", + "-Wno-enum-compare", + "-Wno-unused-function", + "-Wno-unused-local-typedef", + "-Wno-unused-private-field", + "-Wno-unused-result", + "-Wno-unused-variable", + "-Wno-error=header-hygiene", + ] + defines = [ + "__STDC_CONSTANT_MACROS", + "__STDC_LIMIT_MACROS", + ] +} + +llvm_include_dirs = [ + "llvm/include/", + "llvm/lib/Target/AArch64/", + "llvm/lib/Target/ARM/", + "llvm/lib/Target/X86/", + "configs/common/include/", + "configs/common/lib/IR/", + "configs/common/lib/Target/AArch64/", + "configs/common/lib/Target/ARM/", + "configs/common/lib/Target/X86/", + "configs/common/lib/Transforms/InstCombine/", +] + +if (is_linux) { + llvm_include_dirs += [ "configs/linux/include/" ] +} else if (is_windows) { + llvm_include_dirs += [ "configs/windows/include/" ] +} else if (is_android) { + llvm_include_dirs += [ "configs/android/include/" ] +} else { + assert(false, "llvm-7.0 not configured for target platform") +} + +swiftshader_source_set("swiftshader_llvm") { + sources = [ + "llvm/lib/Analysis/AliasAnalysis.cpp", + "llvm/lib/Analysis/AliasAnalysisEvaluator.cpp", + "llvm/lib/Analysis/AliasAnalysisSummary.cpp", + "llvm/lib/Analysis/AliasSetTracker.cpp", + "llvm/lib/Analysis/Analysis.cpp", + "llvm/lib/Analysis/AssumptionCache.cpp", + "llvm/lib/Analysis/BasicAliasAnalysis.cpp", + "llvm/lib/Analysis/BlockFrequencyInfo.cpp", + "llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp", + "llvm/lib/Analysis/BranchProbabilityInfo.cpp", + "llvm/lib/Analysis/CFG.cpp", + "llvm/lib/Analysis/CFGPrinter.cpp", + "llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp", + "llvm/lib/Analysis/CFLSteensAliasAnalysis.cpp", + "llvm/lib/Analysis/CGSCCPassManager.cpp", + "llvm/lib/Analysis/CallGraph.cpp", + "llvm/lib/Analysis/CallGraphSCCPass.cpp", + "llvm/lib/Analysis/CallPrinter.cpp", + "llvm/lib/Analysis/CaptureTracking.cpp", + "llvm/lib/Analysis/CmpInstAnalysis.cpp", + "llvm/lib/Analysis/CodeMetrics.cpp", + "llvm/lib/Analysis/ConstantFolding.cpp", + "llvm/lib/Analysis/CostModel.cpp", + "llvm/lib/Analysis/Delinearization.cpp", + "llvm/lib/Analysis/DemandedBits.cpp", + "llvm/lib/Analysis/DependenceAnalysis.cpp", + "llvm/lib/Analysis/DivergenceAnalysis.cpp", + "llvm/lib/Analysis/DomPrinter.cpp", + "llvm/lib/Analysis/DominanceFrontier.cpp", + "llvm/lib/Analysis/EHPersonalities.cpp", + "llvm/lib/Analysis/GlobalsModRef.cpp", + "llvm/lib/Analysis/IVUsers.cpp", + "llvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp", + "llvm/lib/Analysis/InlineCost.cpp", + "llvm/lib/Analysis/InstCount.cpp", + "llvm/lib/Analysis/InstructionSimplify.cpp", + "llvm/lib/Analysis/Interval.cpp", + "llvm/lib/Analysis/IntervalPartition.cpp", + "llvm/lib/Analysis/IteratedDominanceFrontier.cpp", + "llvm/lib/Analysis/LazyBlockFrequencyInfo.cpp", + "llvm/lib/Analysis/LazyBranchProbabilityInfo.cpp", + "llvm/lib/Analysis/LazyCallGraph.cpp", + "llvm/lib/Analysis/LazyValueInfo.cpp", + "llvm/lib/Analysis/Lint.cpp", + "llvm/lib/Analysis/Loads.cpp", + "llvm/lib/Analysis/LoopAccessAnalysis.cpp", + "llvm/lib/Analysis/LoopAnalysisManager.cpp", + "llvm/lib/Analysis/LoopInfo.cpp", + "llvm/lib/Analysis/LoopPass.cpp", + "llvm/lib/Analysis/LoopUnrollAnalyzer.cpp", + "llvm/lib/Analysis/MemDepPrinter.cpp", + "llvm/lib/Analysis/MemDerefPrinter.cpp", + "llvm/lib/Analysis/MemoryBuiltins.cpp", + "llvm/lib/Analysis/MemoryDependenceAnalysis.cpp", + "llvm/lib/Analysis/MemoryLocation.cpp", + "llvm/lib/Analysis/MemorySSA.cpp", + "llvm/lib/Analysis/MemorySSAUpdater.cpp", + "llvm/lib/Analysis/ModuleDebugInfoPrinter.cpp", + "llvm/lib/Analysis/ModuleSummaryAnalysis.cpp", + "llvm/lib/Analysis/MustExecute.cpp", + "llvm/lib/Analysis/ObjCARCAliasAnalysis.cpp", + "llvm/lib/Analysis/ObjCARCAnalysisUtils.cpp", + "llvm/lib/Analysis/ObjCARCInstKind.cpp", + "llvm/lib/Analysis/OptimizationRemarkEmitter.cpp", + "llvm/lib/Analysis/OrderedBasicBlock.cpp", + "llvm/lib/Analysis/PHITransAddr.cpp", + "llvm/lib/Analysis/PhiValues.cpp", + "llvm/lib/Analysis/PostDominators.cpp", + "llvm/lib/Analysis/ProfileSummaryInfo.cpp", + "llvm/lib/Analysis/PtrUseVisitor.cpp", + "llvm/lib/Analysis/RegionInfo.cpp", + "llvm/lib/Analysis/RegionPass.cpp", + "llvm/lib/Analysis/RegionPrinter.cpp", + "llvm/lib/Analysis/ScalarEvolution.cpp", + "llvm/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp", + "llvm/lib/Analysis/ScalarEvolutionExpander.cpp", + "llvm/lib/Analysis/ScalarEvolutionNormalization.cpp", + "llvm/lib/Analysis/ScopedNoAliasAA.cpp", + "llvm/lib/Analysis/SyntheticCountsUtils.cpp", + "llvm/lib/Analysis/TargetLibraryInfo.cpp", + "llvm/lib/Analysis/TargetTransformInfo.cpp", + "llvm/lib/Analysis/Trace.cpp", + "llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp", + "llvm/lib/Analysis/TypeMetadataUtils.cpp", + "llvm/lib/Analysis/ValueLattice.cpp", + "llvm/lib/Analysis/ValueLatticeUtils.cpp", + "llvm/lib/Analysis/ValueTracking.cpp", + "llvm/lib/Analysis/VectorUtils.cpp", + "llvm/lib/BinaryFormat/Dwarf.cpp", + "llvm/lib/BinaryFormat/Magic.cpp", + "llvm/lib/BinaryFormat/Wasm.cpp", + "llvm/lib/Bitcode/Reader/BitReader.cpp", + "llvm/lib/Bitcode/Reader/BitcodeReader.cpp", + "llvm/lib/Bitcode/Reader/BitstreamReader.cpp", + "llvm/lib/Bitcode/Reader/MetadataLoader.cpp", + "llvm/lib/Bitcode/Reader/ValueList.cpp", + "llvm/lib/Bitcode/Writer/BitWriter.cpp", + "llvm/lib/Bitcode/Writer/BitcodeWriter.cpp", + "llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp", + "llvm/lib/Bitcode/Writer/ValueEnumerator.cpp", + "llvm/lib/DebugInfo/CodeView/AppendingTypeTableBuilder.cpp", + "llvm/lib/DebugInfo/CodeView/CVSymbolVisitor.cpp", + "llvm/lib/DebugInfo/CodeView/CVTypeVisitor.cpp", + "llvm/lib/DebugInfo/CodeView/CodeViewError.cpp", + "llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp", + "llvm/lib/DebugInfo/CodeView/ContinuationRecordBuilder.cpp", + "llvm/lib/DebugInfo/CodeView/DebugChecksumsSubsection.cpp", + "llvm/lib/DebugInfo/CodeView/DebugCrossExSubsection.cpp", + "llvm/lib/DebugInfo/CodeView/DebugCrossImpSubsection.cpp", + "llvm/lib/DebugInfo/CodeView/DebugFrameDataSubsection.cpp", + "llvm/lib/DebugInfo/CodeView/DebugInlineeLinesSubsection.cpp", + "llvm/lib/DebugInfo/CodeView/DebugLinesSubsection.cpp", + "llvm/lib/DebugInfo/CodeView/DebugStringTableSubsection.cpp", + "llvm/lib/DebugInfo/CodeView/DebugSubsection.cpp", + "llvm/lib/DebugInfo/CodeView/DebugSubsectionRecord.cpp", + "llvm/lib/DebugInfo/CodeView/DebugSubsectionVisitor.cpp", + "llvm/lib/DebugInfo/CodeView/DebugSymbolRVASubsection.cpp", + "llvm/lib/DebugInfo/CodeView/DebugSymbolsSubsection.cpp", + "llvm/lib/DebugInfo/CodeView/EnumTables.cpp", + "llvm/lib/DebugInfo/CodeView/Formatters.cpp", + "llvm/lib/DebugInfo/CodeView/GlobalTypeTableBuilder.cpp", + "llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp", + "llvm/lib/DebugInfo/CodeView/Line.cpp", + "llvm/lib/DebugInfo/CodeView/MergingTypeTableBuilder.cpp", + "llvm/lib/DebugInfo/CodeView/RecordName.cpp", + "llvm/lib/DebugInfo/CodeView/RecordSerialization.cpp", + "llvm/lib/DebugInfo/CodeView/SimpleTypeSerializer.cpp", + "llvm/lib/DebugInfo/CodeView/StringsAndChecksums.cpp", + "llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp", + "llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp", + "llvm/lib/DebugInfo/CodeView/SymbolSerializer.cpp", + "llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp", + "llvm/lib/DebugInfo/CodeView/TypeHashing.cpp", + "llvm/lib/DebugInfo/CodeView/TypeIndex.cpp", + "llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp", + "llvm/lib/DebugInfo/CodeView/TypeRecordMapping.cpp", + "llvm/lib/DebugInfo/CodeView/TypeStreamMerger.cpp", + "llvm/lib/DebugInfo/CodeView/TypeTableCollection.cpp", + "llvm/lib/ExecutionEngine/ExecutionEngine.cpp", + "llvm/lib/ExecutionEngine/ExecutionEngineBindings.cpp", + "llvm/lib/ExecutionEngine/GDBRegistrationListener.cpp", + "llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp", + "llvm/lib/ExecutionEngine/Orc/Core.cpp", + "llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp", + "llvm/lib/ExecutionEngine/Orc/IRCompileLayer.cpp", + "llvm/lib/ExecutionEngine/Orc/IRTransformLayer.cpp", + "llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp", + "llvm/lib/ExecutionEngine/Orc/LLJIT.cpp", + "llvm/lib/ExecutionEngine/Orc/Layer.cpp", + "llvm/lib/ExecutionEngine/Orc/Legacy.cpp", + "llvm/lib/ExecutionEngine/Orc/NullResolver.cpp", + "llvm/lib/ExecutionEngine/Orc/ObjectTransformLayer.cpp", + "llvm/lib/ExecutionEngine/Orc/OrcABISupport.cpp", + "llvm/lib/ExecutionEngine/Orc/OrcCBindings.cpp", + "llvm/lib/ExecutionEngine/Orc/OrcError.cpp", + "llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.cpp", + "llvm/lib/ExecutionEngine/Orc/RPCUtils.cpp", + "llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp", + "llvm/lib/ExecutionEngine/RuntimeDyld/JITSymbol.cpp", + "llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp", + "llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp", + "llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.cpp", + "llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp", + "llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp", + "llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp", + "llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldELFMips.cpp", + "llvm/lib/ExecutionEngine/SectionMemoryManager.cpp", + "llvm/lib/ExecutionEngine/TargetSelect.cpp", + "llvm/lib/IRReader/IRReader.cpp", + "llvm/lib/MC/ConstantPools.cpp", + "llvm/lib/MC/ELFObjectWriter.cpp", + "llvm/lib/MC/MCAsmBackend.cpp", + "llvm/lib/MC/MCAsmInfo.cpp", + "llvm/lib/MC/MCAsmInfoCOFF.cpp", + "llvm/lib/MC/MCAsmInfoDarwin.cpp", + "llvm/lib/MC/MCAsmInfoELF.cpp", + "llvm/lib/MC/MCAsmInfoWasm.cpp", + "llvm/lib/MC/MCAsmMacro.cpp", + "llvm/lib/MC/MCAsmStreamer.cpp", + "llvm/lib/MC/MCAssembler.cpp", + "llvm/lib/MC/MCCodeEmitter.cpp", + "llvm/lib/MC/MCCodePadder.cpp", + "llvm/lib/MC/MCCodeView.cpp", + "llvm/lib/MC/MCContext.cpp", + "llvm/lib/MC/MCDisassembler/Disassembler.cpp", + "llvm/lib/MC/MCDisassembler/MCDisassembler.cpp", + "llvm/lib/MC/MCDisassembler/MCExternalSymbolizer.cpp", + "llvm/lib/MC/MCDisassembler/MCRelocationInfo.cpp", + "llvm/lib/MC/MCDisassembler/MCSymbolizer.cpp", + "llvm/lib/MC/MCDwarf.cpp", + "llvm/lib/MC/MCELFObjectTargetWriter.cpp", + "llvm/lib/MC/MCELFStreamer.cpp", + "llvm/lib/MC/MCExpr.cpp", + "llvm/lib/MC/MCFragment.cpp", + "llvm/lib/MC/MCInst.cpp", + "llvm/lib/MC/MCInstPrinter.cpp", + "llvm/lib/MC/MCInstrAnalysis.cpp", + "llvm/lib/MC/MCInstrDesc.cpp", + "llvm/lib/MC/MCLabel.cpp", + "llvm/lib/MC/MCLinkerOptimizationHint.cpp", + "llvm/lib/MC/MCMachOStreamer.cpp", + "llvm/lib/MC/MCMachObjectTargetWriter.cpp", + "llvm/lib/MC/MCNullStreamer.cpp", + "llvm/lib/MC/MCObjectFileInfo.cpp", + "llvm/lib/MC/MCObjectStreamer.cpp", + "llvm/lib/MC/MCObjectWriter.cpp", + "llvm/lib/MC/MCParser/AsmLexer.cpp", + "llvm/lib/MC/MCParser/AsmParser.cpp", + "llvm/lib/MC/MCParser/COFFAsmParser.cpp", + "llvm/lib/MC/MCParser/DarwinAsmParser.cpp", + "llvm/lib/MC/MCParser/ELFAsmParser.cpp", + "llvm/lib/MC/MCParser/MCAsmLexer.cpp", + "llvm/lib/MC/MCParser/MCAsmParser.cpp", + "llvm/lib/MC/MCParser/MCAsmParserExtension.cpp", + "llvm/lib/MC/MCParser/MCTargetAsmParser.cpp", + "llvm/lib/MC/MCRegisterInfo.cpp", + "llvm/lib/MC/MCSchedule.cpp", + "llvm/lib/MC/MCSection.cpp", + "llvm/lib/MC/MCSectionCOFF.cpp", + "llvm/lib/MC/MCSectionELF.cpp", + "llvm/lib/MC/MCSectionMachO.cpp", + "llvm/lib/MC/MCSectionWasm.cpp", + "llvm/lib/MC/MCStreamer.cpp", + "llvm/lib/MC/MCSubtargetInfo.cpp", + "llvm/lib/MC/MCSymbol.cpp", + "llvm/lib/MC/MCSymbolELF.cpp", + "llvm/lib/MC/MCTargetOptions.cpp", + "llvm/lib/MC/MCValue.cpp", + "llvm/lib/MC/MCWasmObjectTargetWriter.cpp", + "llvm/lib/MC/MCWasmStreamer.cpp", + "llvm/lib/MC/MCWin64EH.cpp", + "llvm/lib/MC/MCWinCOFFStreamer.cpp", + "llvm/lib/MC/MCWinEH.cpp", + "llvm/lib/MC/MachObjectWriter.cpp", + "llvm/lib/MC/StringTableBuilder.cpp", + "llvm/lib/MC/SubtargetFeature.cpp", + "llvm/lib/MC/WasmObjectWriter.cpp", + "llvm/lib/MC/WinCOFFObjectWriter.cpp", + "llvm/lib/Object/Archive.cpp", + "llvm/lib/Object/ArchiveWriter.cpp", + "llvm/lib/Object/Binary.cpp", + "llvm/lib/Object/COFFImportFile.cpp", + "llvm/lib/Object/COFFModuleDefinition.cpp", + "llvm/lib/Object/COFFObjectFile.cpp", + "llvm/lib/Object/Decompressor.cpp", + "llvm/lib/Object/ELF.cpp", + "llvm/lib/Object/ELFObjectFile.cpp", + "llvm/lib/Object/Error.cpp", + "llvm/lib/Object/IRObjectFile.cpp", + "llvm/lib/Object/IRSymtab.cpp", + "llvm/lib/Object/MachOObjectFile.cpp", + "llvm/lib/Object/MachOUniversal.cpp", + "llvm/lib/Object/ModuleSymbolTable.cpp", + "llvm/lib/Object/Object.cpp", + "llvm/lib/Object/ObjectFile.cpp", + "llvm/lib/Object/RecordStreamer.cpp", + "llvm/lib/Object/SymbolSize.cpp", + "llvm/lib/Object/SymbolicFile.cpp", + "llvm/lib/Object/WasmObjectFile.cpp", + "llvm/lib/Object/WindowsResource.cpp", + "llvm/lib/ProfileData/GCOV.cpp", + "llvm/lib/ProfileData/InstrProf.cpp", + "llvm/lib/ProfileData/InstrProfReader.cpp", + "llvm/lib/ProfileData/InstrProfWriter.cpp", + "llvm/lib/ProfileData/ProfileSummaryBuilder.cpp", + "llvm/lib/ProfileData/SampleProf.cpp", + "llvm/lib/ProfileData/SampleProfReader.cpp", + "llvm/lib/ProfileData/SampleProfWriter.cpp", + "llvm/lib/Target/Target.cpp", + "llvm/lib/Target/TargetIntrinsicInfo.cpp", + "llvm/lib/Target/TargetLoweringObjectFile.cpp", + "llvm/lib/Target/TargetMachine.cpp", + "llvm/lib/Target/TargetMachineC.cpp", + "llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp", + "llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp", + "llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp", + "llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp", + "llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp", + "llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp", + "llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCCodeEmitter.cpp", + "llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp", + "llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp", + "llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp", + "llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp", + "llvm/lib/Target/AArch64/AArch64ISelLowering.cpp", + "llvm/lib/Target/AArch64/AArch64A57FPLoadBalancing.cpp", + "llvm/lib/Target/AArch64/AArch64FastISel.cpp", + "llvm/lib/Target/AArch64/AArch64InstrInfo.cpp", + "llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp", + "llvm/lib/Target/AArch64/AArch64FalkorHWPFFix.cpp", + "llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp", + "llvm/lib/Target/AArch64/AArch64InstructionSelector.cpp", + "llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp", + "llvm/lib/Target/AArch64/AArch64A53Fix835769.cpp", + "llvm/lib/Target/AArch64/AArch64TargetMachine.cpp", + "llvm/lib/Target/AArch64/AArch64CallLowering.cpp", + "llvm/lib/Target/AArch64/AArch64SIMDInstrOpt.cpp", + "llvm/lib/Target/AArch64/AArch64Subtarget.cpp", + "llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp", + "llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp", + "llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp", + "llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp", + "llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp", + "llvm/lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp", + "llvm/lib/Target/AArch64/AArch64AdvSIMDScalarPass.cpp", + "llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp", + "llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp", + "llvm/lib/Target/AArch64/AArch64LegalizerInfo.cpp", + "llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp", + "llvm/lib/Target/AArch64/AArch64PBQPRegAlloc.cpp", + "llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp", + "llvm/lib/Target/AArch64/AArch64CleanupLocalDynamicTLSPass.cpp", + "llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp", + "llvm/lib/Target/AArch64/AArch64MCInstLower.cpp", + "llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp", + "llvm/lib/Target/AArch64/AArch64RedundantCopyElimination.cpp", + "llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp", + "llvm/lib/Target/AArch64/AArch64CollectLOH.cpp", + "llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp", + "llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp", + "llvm/lib/Target/AArch64/AArch64RegisterBankInfo.cpp", + "llvm/lib/Target/AArch64/AArch64CondBrTuning.cpp", + "llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp", + "llvm/lib/Target/AArch64/AArch64FrameLowering.cpp", + "llvm/lib/Target/AArch64/AArch64MacroFusion.cpp", + "llvm/lib/Target/ARM/ARMConstantIslandPass.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMMachORelocationInfo.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMMCExpr.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp", + "llvm/lib/Target/ARM/MCTargetDesc/ARMUnwindOpAsm.cpp", + "llvm/lib/Target/ARM/ThumbRegisterInfo.cpp", + "llvm/lib/Target/ARM/ARMMachineFunctionInfo.cpp", + "llvm/lib/Target/ARM/ARMFrameLowering.cpp", + "llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp", + "llvm/lib/Target/ARM/ARMCallLowering.cpp", + "llvm/lib/Target/ARM/ARMTargetMachine.cpp", + "llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp", + "llvm/lib/Target/ARM/Thumb1FrameLowering.cpp", + "llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp", + "llvm/lib/Target/ARM/Utils/ARMBaseInfo.cpp", + "llvm/lib/Target/ARM/ARMComputeBlockSize.cpp", + "llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp", + "llvm/lib/Target/ARM/ARMInstructionSelector.cpp", + "llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp", + "llvm/lib/Target/ARM/ARMTargetObjectFile.cpp", + "llvm/lib/Target/ARM/ARMISelLowering.cpp", + "llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp", + "llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp", + "llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp", + "llvm/lib/Target/ARM/ARMInstrInfo.cpp", + "llvm/lib/Target/ARM/MLxExpansionPass.cpp", + "llvm/lib/Target/ARM/Thumb2SizeReduction.cpp", + "llvm/lib/Target/ARM/ARMConstantPoolValue.cpp", + "llvm/lib/Target/ARM/Thumb2InstrInfo.cpp", + "llvm/lib/Target/ARM/ARMRegisterInfo.cpp", + "llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp", + "llvm/lib/Target/ARM/ARMSubtarget.cpp", + "llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp", + "llvm/lib/Target/ARM/ARMParallelDSP.cpp", + "llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp", + "llvm/lib/Target/ARM/A15SDOptimizer.cpp", + "llvm/lib/Target/ARM/Thumb2ITBlockPass.cpp", + "llvm/lib/Target/ARM/ARMFastISel.cpp", + "llvm/lib/Target/ARM/ARMMacroFusion.cpp", + "llvm/lib/Target/ARM/ARMAsmPrinter.cpp", + "llvm/lib/Target/ARM/ARMMCInstLower.cpp", + "llvm/lib/Target/ARM/ARMHazardRecognizer.cpp", + "llvm/lib/Target/ARM/ARMCodeGenPrepare.cpp", + "llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp", + "llvm/lib/Target/ARM/Thumb1InstrInfo.cpp", + "llvm/lib/Target/ARM/ARMLegalizerInfo.cpp", + "llvm/lib/Target/ARM/ARMOptimizeBarriersPass.cpp", + "llvm/lib/Target/X86/AsmParser/X86AsmInstrumentation.cpp", + "llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp", + "llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp", + "llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp", + "llvm/lib/Target/X86/InstPrinter/X86InstPrinterCommon.cpp", + "llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp", + "llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp", + "llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp", + "llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp", + "llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp", + "llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp", + "llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp", + "llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp", + "llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp", + "llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp", + "llvm/lib/Target/X86/ShadowCallStack.cpp", + "llvm/lib/Target/X86/TargetInfo/X86TargetInfo.cpp", + "llvm/lib/Target/X86/Utils/X86ShuffleDecode.cpp", + "llvm/lib/Target/X86/X86AsmPrinter.cpp", + "llvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp", + "llvm/lib/Target/X86/X86CallFrameOptimization.cpp", + "llvm/lib/Target/X86/X86CallLowering.cpp", + "llvm/lib/Target/X86/X86CallingConv.cpp", + "llvm/lib/Target/X86/X86CmovConversion.cpp", + "llvm/lib/Target/X86/X86DomainReassignment.cpp", + "llvm/lib/Target/X86/X86EvexToVex.cpp", + "llvm/lib/Target/X86/X86ExpandPseudo.cpp", + "llvm/lib/Target/X86/X86FastISel.cpp", + "llvm/lib/Target/X86/X86FixupBWInsts.cpp", + "llvm/lib/Target/X86/X86FixupLEAs.cpp", + "llvm/lib/Target/X86/X86FixupSetCC.cpp", + "llvm/lib/Target/X86/X86FlagsCopyLowering.cpp", + "llvm/lib/Target/X86/X86FloatingPoint.cpp", + "llvm/lib/Target/X86/X86FrameLowering.cpp", + "llvm/lib/Target/X86/X86ISelDAGToDAG.cpp", + "llvm/lib/Target/X86/X86ISelLowering.cpp", + "llvm/lib/Target/X86/X86IndirectBranchTracking.cpp", + "llvm/lib/Target/X86/X86InstrFMA3Info.cpp", + "llvm/lib/Target/X86/X86InstrFoldTables.cpp", + "llvm/lib/Target/X86/X86InstrInfo.cpp", + "llvm/lib/Target/X86/X86InstructionSelector.cpp", + "llvm/lib/Target/X86/X86InterleavedAccess.cpp", + "llvm/lib/Target/X86/X86LegalizerInfo.cpp", + "llvm/lib/Target/X86/X86MCInstLower.cpp", + "llvm/lib/Target/X86/X86MachineFunctionInfo.cpp", + "llvm/lib/Target/X86/X86MacroFusion.cpp", + "llvm/lib/Target/X86/X86OptimizeLEAs.cpp", + "llvm/lib/Target/X86/X86PadShortFunction.cpp", + "llvm/lib/Target/X86/X86RegisterBankInfo.cpp", + "llvm/lib/Target/X86/X86RegisterInfo.cpp", + "llvm/lib/Target/X86/X86RetpolineThunks.cpp", + "llvm/lib/Target/X86/X86SelectionDAGInfo.cpp", + "llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp", + "llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp", + "llvm/lib/Target/X86/X86Subtarget.cpp", + "llvm/lib/Target/X86/X86TargetMachine.cpp", + "llvm/lib/Target/X86/X86TargetObjectFile.cpp", + "llvm/lib/Target/X86/X86TargetTransformInfo.cpp", + "llvm/lib/Target/X86/X86VZeroUpper.cpp", + "llvm/lib/Target/X86/X86WinAllocaExpander.cpp", + "llvm/lib/Target/X86/X86WinEHState.cpp", + ] + + configs = [ ":swiftshader_llvm_private_config" ] + + include_dirs = llvm_include_dirs + + deps = [ + ":swiftshader_llvm_codegen", + ":swiftshader_llvm_ir", + ":swiftshader_llvm_support", + ":swiftshader_llvm_transforms", + ] +} + +swiftshader_source_set("swiftshader_llvm_codegen") { + sources = [ + "llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp", + "llvm/lib/CodeGen/AllocationOrder.cpp", + "llvm/lib/CodeGen/Analysis.cpp", + "llvm/lib/CodeGen/AsmPrinter/ARMException.cpp", + "llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp", + "llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp", + "llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp", + "llvm/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp", + "llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp", + "llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp", + "llvm/lib/CodeGen/AsmPrinter/DIE.cpp", + "llvm/lib/CodeGen/AsmPrinter/DIEHash.cpp", + "llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp", + "llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp", + "llvm/lib/CodeGen/AsmPrinter/DebugLocStream.cpp", + "llvm/lib/CodeGen/AsmPrinter/DwarfCFIException.cpp", + "llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp", + "llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp", + "llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp", + "llvm/lib/CodeGen/AsmPrinter/DwarfFile.cpp", + "llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.cpp", + "llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp", + "llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp", + "llvm/lib/CodeGen/AsmPrinter/ErlangGCPrinter.cpp", + "llvm/lib/CodeGen/AsmPrinter/OcamlGCPrinter.cpp", + "llvm/lib/CodeGen/AsmPrinter/WinCFGuard.cpp", + "llvm/lib/CodeGen/AsmPrinter/WinException.cpp", + "llvm/lib/CodeGen/AtomicExpandPass.cpp", + "llvm/lib/CodeGen/BasicTargetTransformInfo.cpp", + "llvm/lib/CodeGen/BranchFolding.cpp", + "llvm/lib/CodeGen/BranchRelaxation.cpp", + "llvm/lib/CodeGen/BreakFalseDeps.cpp", + "llvm/lib/CodeGen/BuiltinGCs.cpp", + "llvm/lib/CodeGen/CFIInstrInserter.cpp", + "llvm/lib/CodeGen/CalcSpillWeights.cpp", + "llvm/lib/CodeGen/CallingConvLower.cpp", + "llvm/lib/CodeGen/CodeGen.cpp", + "llvm/lib/CodeGen/CodeGenPrepare.cpp", + "llvm/lib/CodeGen/CriticalAntiDepBreaker.cpp", + "llvm/lib/CodeGen/DFAPacketizer.cpp", + "llvm/lib/CodeGen/DeadMachineInstructionElim.cpp", + "llvm/lib/CodeGen/DetectDeadLanes.cpp", + "llvm/lib/CodeGen/DwarfEHPrepare.cpp", + "llvm/lib/CodeGen/EarlyIfConversion.cpp", + "llvm/lib/CodeGen/EdgeBundles.cpp", + "llvm/lib/CodeGen/ExecutionDomainFix.cpp", + "llvm/lib/CodeGen/ExpandISelPseudos.cpp", + "llvm/lib/CodeGen/ExpandMemCmp.cpp", + "llvm/lib/CodeGen/ExpandPostRAPseudos.cpp", + "llvm/lib/CodeGen/ExpandReductions.cpp", + "llvm/lib/CodeGen/FEntryInserter.cpp", + "llvm/lib/CodeGen/FaultMaps.cpp", + "llvm/lib/CodeGen/FuncletLayout.cpp", + "llvm/lib/CodeGen/GCMetadata.cpp", + "llvm/lib/CodeGen/GCMetadataPrinter.cpp", + "llvm/lib/CodeGen/GCRootLowering.cpp", + "llvm/lib/CodeGen/GCStrategy.cpp", + "llvm/lib/CodeGen/GlobalISel/CallLowering.cpp", + "llvm/lib/CodeGen/GlobalISel/Combiner.cpp", + "llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp", + "llvm/lib/CodeGen/GlobalISel/GlobalISel.cpp", + "llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp", + "llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp", + "llvm/lib/CodeGen/GlobalISel/InstructionSelector.cpp", + "llvm/lib/CodeGen/GlobalISel/LegalityPredicates.cpp", + "llvm/lib/CodeGen/GlobalISel/LegalizeMutations.cpp", + "llvm/lib/CodeGen/GlobalISel/Legalizer.cpp", + "llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp", + "llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp", + "llvm/lib/CodeGen/GlobalISel/Localizer.cpp", + "llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp", + "llvm/lib/CodeGen/GlobalISel/RegBankSelect.cpp", + "llvm/lib/CodeGen/GlobalISel/RegisterBank.cpp", + "llvm/lib/CodeGen/GlobalISel/RegisterBankInfo.cpp", + "llvm/lib/CodeGen/GlobalISel/Utils.cpp", + "llvm/lib/CodeGen/GlobalMerge.cpp", + "llvm/lib/CodeGen/IfConversion.cpp", + "llvm/lib/CodeGen/ImplicitNullChecks.cpp", + "llvm/lib/CodeGen/IndirectBrExpandPass.cpp", + "llvm/lib/CodeGen/InlineSpiller.cpp", + "llvm/lib/CodeGen/InterferenceCache.cpp", + "llvm/lib/CodeGen/InterleavedAccessPass.cpp", + "llvm/lib/CodeGen/IntrinsicLowering.cpp", + "llvm/lib/CodeGen/LLVMTargetMachine.cpp", + "llvm/lib/CodeGen/LatencyPriorityQueue.cpp", + "llvm/lib/CodeGen/LazyMachineBlockFrequencyInfo.cpp", + "llvm/lib/CodeGen/LexicalScopes.cpp", + "llvm/lib/CodeGen/LiveDebugValues.cpp", + "llvm/lib/CodeGen/LiveDebugVariables.cpp", + "llvm/lib/CodeGen/LiveInterval.cpp", + "llvm/lib/CodeGen/LiveIntervalUnion.cpp", + "llvm/lib/CodeGen/LiveIntervals.cpp", + "llvm/lib/CodeGen/LivePhysRegs.cpp", + "llvm/lib/CodeGen/LiveRangeCalc.cpp", + "llvm/lib/CodeGen/LiveRangeEdit.cpp", + "llvm/lib/CodeGen/LiveRangeShrink.cpp", + "llvm/lib/CodeGen/LiveRegMatrix.cpp", + "llvm/lib/CodeGen/LiveRegUnits.cpp", + "llvm/lib/CodeGen/LiveStacks.cpp", + "llvm/lib/CodeGen/LiveVariables.cpp", + "llvm/lib/CodeGen/LocalStackSlotAllocation.cpp", + "llvm/lib/CodeGen/LoopTraversal.cpp", + "llvm/lib/CodeGen/LowLevelType.cpp", + "llvm/lib/CodeGen/LowerEmuTLS.cpp", + "llvm/lib/CodeGen/MIRCanonicalizerPass.cpp", + "llvm/lib/CodeGen/MIRPrinter.cpp", + "llvm/lib/CodeGen/MIRPrintingPass.cpp", + "llvm/lib/CodeGen/MachineBasicBlock.cpp", + "llvm/lib/CodeGen/MachineBlockFrequencyInfo.cpp", + "llvm/lib/CodeGen/MachineBlockPlacement.cpp", + "llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp", + "llvm/lib/CodeGen/MachineCSE.cpp", + "llvm/lib/CodeGen/MachineCombiner.cpp", + "llvm/lib/CodeGen/MachineCopyPropagation.cpp", + "llvm/lib/CodeGen/MachineDominanceFrontier.cpp", + "llvm/lib/CodeGen/MachineDominators.cpp", + "llvm/lib/CodeGen/MachineFrameInfo.cpp", + "llvm/lib/CodeGen/MachineFunction.cpp", + "llvm/lib/CodeGen/MachineFunctionPass.cpp", + "llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp", + "llvm/lib/CodeGen/MachineInstr.cpp", + "llvm/lib/CodeGen/MachineInstrBundle.cpp", + "llvm/lib/CodeGen/MachineLICM.cpp", + "llvm/lib/CodeGen/MachineLoopInfo.cpp", + "llvm/lib/CodeGen/MachineModuleInfo.cpp", + "llvm/lib/CodeGen/MachineModuleInfoImpls.cpp", + "llvm/lib/CodeGen/MachineOperand.cpp", + "llvm/lib/CodeGen/MachineOptimizationRemarkEmitter.cpp", + "llvm/lib/CodeGen/MachineOutliner.cpp", + "llvm/lib/CodeGen/MachinePassRegistry.cpp", + "llvm/lib/CodeGen/MachinePipeliner.cpp", + "llvm/lib/CodeGen/MachinePostDominators.cpp", + "llvm/lib/CodeGen/MachineRegionInfo.cpp", + "llvm/lib/CodeGen/MachineRegisterInfo.cpp", + "llvm/lib/CodeGen/MachineSSAUpdater.cpp", + "llvm/lib/CodeGen/MachineScheduler.cpp", + "llvm/lib/CodeGen/MachineSink.cpp", + "llvm/lib/CodeGen/MachineTraceMetrics.cpp", + "llvm/lib/CodeGen/MachineVerifier.cpp", + "llvm/lib/CodeGen/MacroFusion.cpp", + "llvm/lib/CodeGen/OptimizePHIs.cpp", + "llvm/lib/CodeGen/PHIElimination.cpp", + "llvm/lib/CodeGen/PHIEliminationUtils.cpp", + "llvm/lib/CodeGen/ParallelCG.cpp", + "llvm/lib/CodeGen/PatchableFunction.cpp", + "llvm/lib/CodeGen/PeepholeOptimizer.cpp", + "llvm/lib/CodeGen/PostRAHazardRecognizer.cpp", + "llvm/lib/CodeGen/PostRASchedulerList.cpp", + "llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp", + "llvm/lib/CodeGen/ProcessImplicitDefs.cpp", + "llvm/lib/CodeGen/PrologEpilogInserter.cpp", + "llvm/lib/CodeGen/PseudoSourceValue.cpp", + "llvm/lib/CodeGen/ReachingDefAnalysis.cpp", + "llvm/lib/CodeGen/RegAllocBase.cpp", + "llvm/lib/CodeGen/RegAllocBasic.cpp", + "llvm/lib/CodeGen/RegAllocFast.cpp", + "llvm/lib/CodeGen/RegAllocGreedy.cpp", + "llvm/lib/CodeGen/RegAllocPBQP.cpp", + "llvm/lib/CodeGen/RegUsageInfoCollector.cpp", + "llvm/lib/CodeGen/RegUsageInfoPropagate.cpp", + "llvm/lib/CodeGen/RegisterClassInfo.cpp", + "llvm/lib/CodeGen/RegisterCoalescer.cpp", + "llvm/lib/CodeGen/RegisterPressure.cpp", + "llvm/lib/CodeGen/RegisterScavenging.cpp", + "llvm/lib/CodeGen/RegisterUsageInfo.cpp", + "llvm/lib/CodeGen/RenameIndependentSubregs.cpp", + "llvm/lib/CodeGen/ResetMachineFunctionPass.cpp", + "llvm/lib/CodeGen/SafeStack.cpp", + "llvm/lib/CodeGen/SafeStackColoring.cpp", + "llvm/lib/CodeGen/SafeStackLayout.cpp", + "llvm/lib/CodeGen/ScalarizeMaskedMemIntrin.cpp", + "llvm/lib/CodeGen/ScheduleDAG.cpp", + "llvm/lib/CodeGen/ScheduleDAGInstrs.cpp", + "llvm/lib/CodeGen/ScheduleDAGPrinter.cpp", + "llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp", + "llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp", + "llvm/lib/CodeGen/SelectionDAG/FastISel.cpp", + "llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp", + "llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp", + "llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp", + "llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp", + "llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp", + "llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp", + "llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp", + "llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp", + "llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp", + "llvm/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp", + "llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp", + "llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp", + "llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp", + "llvm/lib/CodeGen/SelectionDAG/ScheduleDAGVLIW.cpp", + "llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp", + "llvm/lib/CodeGen/SelectionDAG/SelectionDAGAddressAnalysis.cpp", + "llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp", + "llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp", + "llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp", + "llvm/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp", + "llvm/lib/CodeGen/SelectionDAG/SelectionDAGTargetInfo.cpp", + "llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp", + "llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp", + "llvm/lib/CodeGen/ShadowStackGCLowering.cpp", + "llvm/lib/CodeGen/ShrinkWrap.cpp", + "llvm/lib/CodeGen/SjLjEHPrepare.cpp", + "llvm/lib/CodeGen/SlotIndexes.cpp", + "llvm/lib/CodeGen/SpillPlacement.cpp", + "llvm/lib/CodeGen/SplitKit.cpp", + "llvm/lib/CodeGen/StackColoring.cpp", + "llvm/lib/CodeGen/StackMapLivenessAnalysis.cpp", + "llvm/lib/CodeGen/StackMaps.cpp", + "llvm/lib/CodeGen/StackProtector.cpp", + "llvm/lib/CodeGen/StackSlotColoring.cpp", + "llvm/lib/CodeGen/TailDuplication.cpp", + "llvm/lib/CodeGen/TailDuplicator.cpp", + "llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp", + "llvm/lib/CodeGen/TargetInstrInfo.cpp", + "llvm/lib/CodeGen/TargetLoweringBase.cpp", + "llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp", + "llvm/lib/CodeGen/TargetOptionsImpl.cpp", + "llvm/lib/CodeGen/TargetPassConfig.cpp", + "llvm/lib/CodeGen/TargetRegisterInfo.cpp", + "llvm/lib/CodeGen/TargetSchedule.cpp", + "llvm/lib/CodeGen/TargetSubtargetInfo.cpp", + "llvm/lib/CodeGen/TwoAddressInstructionPass.cpp", + "llvm/lib/CodeGen/UnreachableBlockElim.cpp", + "llvm/lib/CodeGen/ValueTypes.cpp", + "llvm/lib/CodeGen/VirtRegMap.cpp", + "llvm/lib/CodeGen/WasmEHPrepare.cpp", + "llvm/lib/CodeGen/WinEHPrepare.cpp", + "llvm/lib/CodeGen/XRayInstrumentation.cpp", + ] + + configs = [ ":swiftshader_llvm_private_config" ] + + include_dirs = llvm_include_dirs +} + +swiftshader_source_set("swiftshader_llvm_ir") { + sources = [ + "llvm/lib/IR/AsmWriter.cpp", + "llvm/lib/IR/Attributes.cpp", + "llvm/lib/IR/AutoUpgrade.cpp", + "llvm/lib/IR/BasicBlock.cpp", + "llvm/lib/IR/Comdat.cpp", + "llvm/lib/IR/ConstantFold.cpp", + "llvm/lib/IR/ConstantRange.cpp", + "llvm/lib/IR/Constants.cpp", + "llvm/lib/IR/Core.cpp", + "llvm/lib/IR/DIBuilder.cpp", + "llvm/lib/IR/DataLayout.cpp", + "llvm/lib/IR/DebugInfo.cpp", + "llvm/lib/IR/DebugInfoMetadata.cpp", + "llvm/lib/IR/DebugLoc.cpp", + "llvm/lib/IR/DiagnosticHandler.cpp", + "llvm/lib/IR/DiagnosticInfo.cpp", + "llvm/lib/IR/DiagnosticPrinter.cpp", + "llvm/lib/IR/DomTreeUpdater.cpp", + "llvm/lib/IR/Dominators.cpp", + "llvm/lib/IR/Function.cpp", + "llvm/lib/IR/GVMaterializer.cpp", + "llvm/lib/IR/Globals.cpp", + "llvm/lib/IR/IRBuilder.cpp", + "llvm/lib/IR/IRPrintingPasses.cpp", + "llvm/lib/IR/InlineAsm.cpp", + "llvm/lib/IR/Instruction.cpp", + "llvm/lib/IR/Instructions.cpp", + "llvm/lib/IR/IntrinsicInst.cpp", + "llvm/lib/IR/LLVMContext.cpp", + "llvm/lib/IR/LLVMContextImpl.cpp", + "llvm/lib/IR/LegacyPassManager.cpp", + "llvm/lib/IR/MDBuilder.cpp", + "llvm/lib/IR/Mangler.cpp", + "llvm/lib/IR/Metadata.cpp", + "llvm/lib/IR/Module.cpp", + "llvm/lib/IR/ModuleSummaryIndex.cpp", + "llvm/lib/IR/Operator.cpp", + "llvm/lib/IR/OptBisect.cpp", + "llvm/lib/IR/Pass.cpp", + "llvm/lib/IR/PassManager.cpp", + "llvm/lib/IR/PassRegistry.cpp", + "llvm/lib/IR/ProfileSummary.cpp", + "llvm/lib/IR/SafepointIRVerifier.cpp", + "llvm/lib/IR/Statepoint.cpp", + "llvm/lib/IR/Type.cpp", + "llvm/lib/IR/TypeFinder.cpp", + "llvm/lib/IR/Use.cpp", + "llvm/lib/IR/User.cpp", + "llvm/lib/IR/Value.cpp", + "llvm/lib/IR/ValueSymbolTable.cpp", + "llvm/lib/IR/Verifier.cpp", + ] + + configs = [ ":swiftshader_llvm_private_config" ] + + include_dirs = llvm_include_dirs +} + +swiftshader_source_set("swiftshader_llvm_support") { + sources = [ + "llvm/lib/Support/AMDGPUMetadata.cpp", + "llvm/lib/Support/APFloat.cpp", + "llvm/lib/Support/APInt.cpp", + "llvm/lib/Support/APSInt.cpp", + "llvm/lib/Support/ARMAttributeParser.cpp", + "llvm/lib/Support/ARMBuildAttrs.cpp", + "llvm/lib/Support/ARMWinEH.cpp", + "llvm/lib/Support/Allocator.cpp", + "llvm/lib/Support/Atomic.cpp", + "llvm/lib/Support/BinaryStreamError.cpp", + "llvm/lib/Support/BinaryStreamReader.cpp", + "llvm/lib/Support/BinaryStreamRef.cpp", + "llvm/lib/Support/BinaryStreamWriter.cpp", + "llvm/lib/Support/BlockFrequency.cpp", + "llvm/lib/Support/BranchProbability.cpp", + "llvm/lib/Support/COM.cpp", + "llvm/lib/Support/CachePruning.cpp", + "llvm/lib/Support/Chrono.cpp", + "llvm/lib/Support/CodeGenCoverage.cpp", + "llvm/lib/Support/CommandLine.cpp", + "llvm/lib/Support/Compression.cpp", + "llvm/lib/Support/ConvertUTF.cpp", + "llvm/lib/Support/ConvertUTFWrapper.cpp", + "llvm/lib/Support/CrashRecoveryContext.cpp", + "llvm/lib/Support/DAGDeltaAlgorithm.cpp", + "llvm/lib/Support/DJB.cpp", + "llvm/lib/Support/DataExtractor.cpp", + "llvm/lib/Support/Debug.cpp", + "llvm/lib/Support/DebugCounter.cpp", + "llvm/lib/Support/DeltaAlgorithm.cpp", + "llvm/lib/Support/DynamicLibrary.cpp", + "llvm/lib/Support/Errno.cpp", + "llvm/lib/Support/Error.cpp", + "llvm/lib/Support/ErrorHandling.cpp", + "llvm/lib/Support/FileOutputBuffer.cpp", + "llvm/lib/Support/FileUtilities.cpp", + "llvm/lib/Support/FoldingSet.cpp", + "llvm/lib/Support/FormatVariadic.cpp", + "llvm/lib/Support/FormattedStream.cpp", + "llvm/lib/Support/GlobPattern.cpp", + "llvm/lib/Support/GraphWriter.cpp", + "llvm/lib/Support/Hashing.cpp", + "llvm/lib/Support/Host.cpp", + "llvm/lib/Support/InitLLVM.cpp", + "llvm/lib/Support/IntEqClasses.cpp", + "llvm/lib/Support/IntervalMap.cpp", + "llvm/lib/Support/JSON.cpp", + "llvm/lib/Support/JamCRC.cpp", + "llvm/lib/Support/KnownBits.cpp", + "llvm/lib/Support/LEB128.cpp", + "llvm/lib/Support/LineIterator.cpp", + "llvm/lib/Support/Locale.cpp", + "llvm/lib/Support/LockFileManager.cpp", + "llvm/lib/Support/LowLevelType.cpp", + "llvm/lib/Support/MD5.cpp", + "llvm/lib/Support/ManagedStatic.cpp", + "llvm/lib/Support/MathExtras.cpp", + "llvm/lib/Support/Memory.cpp", + "llvm/lib/Support/MemoryBuffer.cpp", + "llvm/lib/Support/Mutex.cpp", + "llvm/lib/Support/NativeFormatting.cpp", + "llvm/lib/Support/Options.cpp", + "llvm/lib/Support/Parallel.cpp", + "llvm/lib/Support/Path.cpp", + "llvm/lib/Support/PluginLoader.cpp", + "llvm/lib/Support/PrettyStackTrace.cpp", + "llvm/lib/Support/Process.cpp", + "llvm/lib/Support/Program.cpp", + "llvm/lib/Support/RWMutex.cpp", + "llvm/lib/Support/RandomNumberGenerator.cpp", + "llvm/lib/Support/Regex.cpp", + "llvm/lib/Support/SHA1.cpp", + "llvm/lib/Support/ScaledNumber.cpp", + "llvm/lib/Support/ScopedPrinter.cpp", + "llvm/lib/Support/Signals.cpp", + "llvm/lib/Support/SmallPtrSet.cpp", + "llvm/lib/Support/SmallVector.cpp", + "llvm/lib/Support/SourceMgr.cpp", + "llvm/lib/Support/SpecialCaseList.cpp", + "llvm/lib/Support/Statistic.cpp", + "llvm/lib/Support/StringExtras.cpp", + "llvm/lib/Support/StringMap.cpp", + "llvm/lib/Support/StringPool.cpp", + "llvm/lib/Support/StringRef.cpp", + "llvm/lib/Support/StringSaver.cpp", + "llvm/lib/Support/SystemUtils.cpp", + "llvm/lib/Support/TarWriter.cpp", + "llvm/lib/Support/TargetParser.cpp", + "llvm/lib/Support/TargetRegistry.cpp", + "llvm/lib/Support/ThreadLocal.cpp", + "llvm/lib/Support/ThreadPool.cpp", + "llvm/lib/Support/Threading.cpp", + "llvm/lib/Support/Timer.cpp", + "llvm/lib/Support/ToolOutputFile.cpp", + "llvm/lib/Support/TrigramIndex.cpp", + "llvm/lib/Support/Triple.cpp", + "llvm/lib/Support/Twine.cpp", + "llvm/lib/Support/Unicode.cpp", + "llvm/lib/Support/UnicodeCaseFold.cpp", + "llvm/lib/Support/Valgrind.cpp", + "llvm/lib/Support/VersionTuple.cpp", + "llvm/lib/Support/Watchdog.cpp", + "llvm/lib/Support/WithColor.cpp", + "llvm/lib/Support/YAMLParser.cpp", + "llvm/lib/Support/YAMLTraits.cpp", + "llvm/lib/Support/circular_raw_ostream.cpp", + "llvm/lib/Support/raw_os_ostream.cpp", + "llvm/lib/Support/raw_ostream.cpp", + "llvm/lib/Support/regcomp.c", + "llvm/lib/Support/regerror.c", + "llvm/lib/Support/regexec.c", + "llvm/lib/Support/regfree.c", + "llvm/lib/Support/regstrlcpy.c", + "llvm/lib/Support/xxhash.cpp", + ] + + configs = [ ":swiftshader_llvm_private_config" ] + + include_dirs = llvm_include_dirs +} + +swiftshader_source_set("swiftshader_llvm_transforms") { + sources = [ + "llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp", + "llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp", + "llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp", + "llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp", + "llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp", + "llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp", + "llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp", + "llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp", + "llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp", + "llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp", + "llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp", + "llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp", + "llvm/lib/Transforms/InstCombine/InstructionCombining.cpp", + "llvm/lib/Transforms/Scalar/ADCE.cpp", + "llvm/lib/Transforms/Scalar/AlignmentFromAssumptions.cpp", + "llvm/lib/Transforms/Scalar/BDCE.cpp", + "llvm/lib/Transforms/Scalar/CallSiteSplitting.cpp", + "llvm/lib/Transforms/Scalar/ConstantHoisting.cpp", + "llvm/lib/Transforms/Scalar/ConstantProp.cpp", + "llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp", + "llvm/lib/Transforms/Scalar/DCE.cpp", + "llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp", + "llvm/lib/Transforms/Scalar/DivRemPairs.cpp", + "llvm/lib/Transforms/Scalar/EarlyCSE.cpp", + "llvm/lib/Transforms/Scalar/FlattenCFGPass.cpp", + "llvm/lib/Transforms/Scalar/Float2Int.cpp", + "llvm/lib/Transforms/Scalar/GVN.cpp", + "llvm/lib/Transforms/Scalar/GVNHoist.cpp", + "llvm/lib/Transforms/Scalar/GVNSink.cpp", + "llvm/lib/Transforms/Scalar/GuardWidening.cpp", + "llvm/lib/Transforms/Scalar/IVUsersPrinter.cpp", + "llvm/lib/Transforms/Scalar/IndVarSimplify.cpp", + "llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp", + "llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp", + "llvm/lib/Transforms/Scalar/InstSimplifyPass.cpp", + "llvm/lib/Transforms/Scalar/JumpThreading.cpp", + "llvm/lib/Transforms/Scalar/LICM.cpp", + "llvm/lib/Transforms/Scalar/LoopAccessAnalysisPrinter.cpp", + "llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp", + "llvm/lib/Transforms/Scalar/LoopDeletion.cpp", + "llvm/lib/Transforms/Scalar/LoopDistribute.cpp", + "llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp", + "llvm/lib/Transforms/Scalar/LoopInstSimplify.cpp", + "llvm/lib/Transforms/Scalar/LoopInterchange.cpp", + "llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp", + "llvm/lib/Transforms/Scalar/LoopPassManager.cpp", + "llvm/lib/Transforms/Scalar/LoopPredication.cpp", + "llvm/lib/Transforms/Scalar/LoopRerollPass.cpp", + "llvm/lib/Transforms/Scalar/LoopRotation.cpp", + "llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp", + "llvm/lib/Transforms/Scalar/LoopSink.cpp", + "llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp", + "llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp", + "llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp", + "llvm/lib/Transforms/Scalar/LoopUnswitch.cpp", + "llvm/lib/Transforms/Scalar/LoopVersioningLICM.cpp", + "llvm/lib/Transforms/Scalar/LowerAtomic.cpp", + "llvm/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp", + "llvm/lib/Transforms/Scalar/LowerGuardIntrinsic.cpp", + "llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp", + "llvm/lib/Transforms/Scalar/MergeICmps.cpp", + "llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp", + "llvm/lib/Transforms/Scalar/NaryReassociate.cpp", + "llvm/lib/Transforms/Scalar/NewGVN.cpp", + "llvm/lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp", + "llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp", + "llvm/lib/Transforms/Scalar/Reassociate.cpp", + "llvm/lib/Transforms/Scalar/Reg2Mem.cpp", + "llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp", + "llvm/lib/Transforms/Scalar/SCCP.cpp", + "llvm/lib/Transforms/Scalar/SROA.cpp", + "llvm/lib/Transforms/Scalar/Scalar.cpp", + "llvm/lib/Transforms/Scalar/Scalarizer.cpp", + "llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp", + "llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp", + "llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp", + "llvm/lib/Transforms/Scalar/Sink.cpp", + "llvm/lib/Transforms/Scalar/SpeculateAroundPHIs.cpp", + "llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp", + "llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp", + "llvm/lib/Transforms/Scalar/StructurizeCFG.cpp", + "llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp", + "llvm/lib/Transforms/Utils/ASanStackFrameLayout.cpp", + "llvm/lib/Transforms/Utils/AddDiscriminators.cpp", + "llvm/lib/Transforms/Utils/BasicBlockUtils.cpp", + "llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp", + "llvm/lib/Transforms/Utils/BuildLibCalls.cpp", + "llvm/lib/Transforms/Utils/BypassSlowDivision.cpp", + "llvm/lib/Transforms/Utils/CallPromotionUtils.cpp", + "llvm/lib/Transforms/Utils/CloneFunction.cpp", + "llvm/lib/Transforms/Utils/CloneModule.cpp", + "llvm/lib/Transforms/Utils/CodeExtractor.cpp", + "llvm/lib/Transforms/Utils/CtorUtils.cpp", + "llvm/lib/Transforms/Utils/DemoteRegToStack.cpp", + "llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp", + "llvm/lib/Transforms/Utils/EscapeEnumerator.cpp", + "llvm/lib/Transforms/Utils/Evaluator.cpp", + "llvm/lib/Transforms/Utils/FlattenCFG.cpp", + "llvm/lib/Transforms/Utils/FunctionComparator.cpp", + "llvm/lib/Transforms/Utils/FunctionImportUtils.cpp", + "llvm/lib/Transforms/Utils/GlobalStatus.cpp", + "llvm/lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp", + "llvm/lib/Transforms/Utils/InlineFunction.cpp", + "llvm/lib/Transforms/Utils/InstructionNamer.cpp", + "llvm/lib/Transforms/Utils/IntegerDivision.cpp", + "llvm/lib/Transforms/Utils/LCSSA.cpp", + "llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp", + "llvm/lib/Transforms/Utils/Local.cpp", + "llvm/lib/Transforms/Utils/LoopRotationUtils.cpp", + "llvm/lib/Transforms/Utils/LoopSimplify.cpp", + "llvm/lib/Transforms/Utils/LoopUnroll.cpp", + "llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp", + "llvm/lib/Transforms/Utils/LoopUnrollPeel.cpp", + "llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp", + "llvm/lib/Transforms/Utils/LoopUtils.cpp", + "llvm/lib/Transforms/Utils/LoopVersioning.cpp", + "llvm/lib/Transforms/Utils/LowerInvoke.cpp", + "llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp", + "llvm/lib/Transforms/Utils/LowerSwitch.cpp", + "llvm/lib/Transforms/Utils/Mem2Reg.cpp", + "llvm/lib/Transforms/Utils/MetaRenamer.cpp", + "llvm/lib/Transforms/Utils/ModuleUtils.cpp", + "llvm/lib/Transforms/Utils/NameAnonGlobals.cpp", + "llvm/lib/Transforms/Utils/OrderedInstructions.cpp", + "llvm/lib/Transforms/Utils/PredicateInfo.cpp", + "llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp", + "llvm/lib/Transforms/Utils/SSAUpdater.cpp", + "llvm/lib/Transforms/Utils/SSAUpdaterBulk.cpp", + "llvm/lib/Transforms/Utils/SanitizerStats.cpp", + "llvm/lib/Transforms/Utils/SimplifyCFG.cpp", + "llvm/lib/Transforms/Utils/SimplifyIndVar.cpp", + "llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp", + "llvm/lib/Transforms/Utils/SplitModule.cpp", + "llvm/lib/Transforms/Utils/StripGCRelocates.cpp", + "llvm/lib/Transforms/Utils/StripNonLineTableDebugInfo.cpp", + "llvm/lib/Transforms/Utils/SymbolRewriter.cpp", + "llvm/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp", + "llvm/lib/Transforms/Utils/Utils.cpp", + "llvm/lib/Transforms/Utils/VNCoercion.cpp", + "llvm/lib/Transforms/Utils/ValueMapper.cpp", + ] + + configs = [ ":swiftshader_llvm_private_config" ] + + include_dirs = llvm_include_dirs +} -- 2.11.0