# 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) {
    cflags += [ "-Wno-header-hygiene" ]
    if (target_cpu == "x86" || target_cpu == "x64") {
      cflags += [ "-msse2" ]
    }
  }

  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",
  ]

  defines = [
    "__STDC_CONSTANT_MACROS",
    "__STDC_LIMIT_MACROS",
  ]
}

llvm_include_dirs = [
  "llvm/include/",
  "llvm/lib/Target/AArch64/",
  "llvm/lib/Target/ARM/",
  "llvm/lib/Target/Mips/",
  "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/Mips/",
  "configs/common/lib/Target/X86/",
  "configs/common/lib/Transforms/InstCombine/",
]

if (is_linux) {
  llvm_include_dirs += [ "configs/linux/include/" ]
} else if (is_fuchsia) {
  llvm_include_dirs += [ "configs/fuchsia/include/" ]
} else if (is_win) {
  llvm_include_dirs += [ "configs/windows/include/" ]
} else if (is_android) {
  llvm_include_dirs += [ "configs/android/include/" ]
} else if (is_mac) {
  llvm_include_dirs += [ "configs/darwin/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/AliasAnalysisSummary.cpp",
    "llvm/lib/Analysis/AliasSetTracker.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/CallGraph.cpp",
    "llvm/lib/Analysis/CallGraphSCCPass.cpp",
    "llvm/lib/Analysis/CaptureTracking.cpp",
    "llvm/lib/Analysis/CFG.cpp",
    "llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp",
    "llvm/lib/Analysis/CFLSteensAliasAnalysis.cpp",
    "llvm/lib/Analysis/CmpInstAnalysis.cpp",
    "llvm/lib/Analysis/CodeMetrics.cpp",
    "llvm/lib/Analysis/ConstantFolding.cpp",
    "llvm/lib/Analysis/DemandedBits.cpp",
    "llvm/lib/Analysis/DependenceAnalysis.cpp",
    "llvm/lib/Analysis/DivergenceAnalysis.cpp",
    "llvm/lib/Analysis/DominanceFrontier.cpp",
    "llvm/lib/Analysis/EHPersonalities.cpp",
    "llvm/lib/Analysis/GlobalsModRef.cpp",
    "llvm/lib/Analysis/InlineCost.cpp",
    "llvm/lib/Analysis/InstructionSimplify.cpp",
    "llvm/lib/Analysis/IteratedDominanceFrontier.cpp",
    "llvm/lib/Analysis/IVUsers.cpp",
    "llvm/lib/Analysis/LazyBlockFrequencyInfo.cpp",
    "llvm/lib/Analysis/LazyBranchProbabilityInfo.cpp",
    "llvm/lib/Analysis/LazyValueInfo.cpp",
    "llvm/lib/Analysis/Loads.cpp",
    "llvm/lib/Analysis/LoopAnalysisManager.cpp",
    "llvm/lib/Analysis/LoopInfo.cpp",
    "llvm/lib/Analysis/LoopPass.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/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/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/TargetLibraryInfo.cpp",
    "llvm/lib/Analysis/TargetTransformInfo.cpp",
    "llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp",
    "llvm/lib/Analysis/ValueLattice.cpp",
    "llvm/lib/Analysis/ValueLatticeUtils.cpp",
    "llvm/lib/Analysis/ValueTracking.cpp",
    "llvm/lib/Analysis/VectorUtils.cpp",
    "llvm/lib/AsmParser/LLLexer.cpp",
    "llvm/lib/AsmParser/LLParser.cpp",
    "llvm/lib/AsmParser/Parser.cpp",
    "llvm/lib/BinaryFormat/Dwarf.cpp",
    "llvm/lib/BinaryFormat/Magic.cpp",
    "llvm/lib/BinaryFormat/Wasm.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/DebugInfo/CodeView/CodeViewError.cpp",
    "llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp",
    "llvm/lib/DebugInfo/CodeView/ContinuationRecordBuilder.cpp",
    "llvm/lib/DebugInfo/CodeView/CVTypeVisitor.cpp",
    "llvm/lib/DebugInfo/CodeView/Formatters.cpp",
    "llvm/lib/DebugInfo/CodeView/GlobalTypeTableBuilder.cpp",
    "llvm/lib/DebugInfo/CodeView/Line.cpp",
    "llvm/lib/DebugInfo/CodeView/RecordName.cpp",
    "llvm/lib/DebugInfo/CodeView/RecordSerialization.cpp",
    "llvm/lib/DebugInfo/CodeView/SimpleTypeSerializer.cpp",
    "llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.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/TypeTableCollection.cpp",
    "llvm/lib/ExecutionEngine/ExecutionEngine.cpp",
    "llvm/lib/ExecutionEngine/GDBRegistrationListener.cpp",
    "llvm/lib/ExecutionEngine/Orc/Core.cpp",
    "llvm/lib/ExecutionEngine/Orc/Legacy.cpp",
    "llvm/lib/ExecutionEngine/Orc/OrcError.cpp",
    "llvm/lib/ExecutionEngine/RuntimeDyld/JITSymbol.cpp",
    "llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp",
    "llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp",
    "llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp",
    "llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.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/MC/ConstantPools.cpp",
    "llvm/lib/MC/ELFObjectWriter.cpp",
    "llvm/lib/MC/MachObjectWriter.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/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/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/MCLinkerOptimizationHint.cpp",
    "llvm/lib/MC/MCMachObjectTargetWriter.cpp",
    "llvm/lib/MC/MCMachOStreamer.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/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/Binary.cpp",
    "llvm/lib/Object/COFFObjectFile.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/ObjectFile.cpp",
    "llvm/lib/Object/RecordStreamer.cpp",
    "llvm/lib/Object/SymbolicFile.cpp",
    "llvm/lib/Object/WasmObjectFile.cpp",
    "llvm/lib/Object/WindowsResource.cpp",
    "llvm/lib/ProfileData/InstrProf.cpp",
    "llvm/lib/Target/TargetIntrinsicInfo.cpp",
    "llvm/lib/Target/TargetLoweringObjectFile.cpp",
    "llvm/lib/Target/TargetMachine.cpp",
    "stubs/Stubs.cpp",
  ]

  # This class is declared on all platforms but only used on ARM. UBSanVPtr
  # builds require that all declared classes have a definition even if they're
  # not used.
  if (is_ubsan_vptr) {
    sources += [ "llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp" ]
  }

  configs = [ ":swiftshader_llvm_private_config" ]

  include_dirs = llvm_include_dirs

  deps = [
    ":swiftshader_llvm_codegen",
    ":swiftshader_llvm_ir",
    ":swiftshader_llvm_support",
    ":swiftshader_llvm_transforms",
  ]

  if (target_cpu == "x86" || target_cpu == "x64") {
    deps += [":swiftshader_llvm_x86"]
  } else if (target_cpu == "arm") {
    deps += [":swiftshader_llvm_arm"]
  } else if (target_cpu == "arm64") {
    deps += [":swiftshader_llvm_aarch64"]
  } else if (target_cpu == "mipsel" || target_cpu == "mips64el") {
    deps += [":swiftshader_llvm_mips"]
  } else {
    assert(false, "Unsupported target_cpu")
  }

  if (target_cpu != current_cpu &&
      (current_cpu == "x86" || current_cpu == "x64") ||
      # Windows ARM64 does cross compilation on Windows x64 host, and requires native
      # x86 target.
      (is_win && target_cpu == "arm64")) {
    deps += [ ":swiftshader_llvm_x86" ]
  }
}

swiftshader_source_set("swiftshader_llvm_x86") {
  sources = [
    "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/X86MachObjectWriter.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/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/X86CallingConv.cpp",
    "llvm/lib/Target/X86/X86CallLowering.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/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/X86ISelDAGToDAG.cpp",
    "llvm/lib/Target/X86/X86ISelLowering.cpp",
    "llvm/lib/Target/X86/X86LegalizerInfo.cpp",
    "llvm/lib/Target/X86/X86MachineFunctionInfo.cpp",
    "llvm/lib/Target/X86/X86MacroFusion.cpp",
    "llvm/lib/Target/X86/X86MCInstLower.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
}

swiftshader_source_set("swiftshader_llvm_arm") {
  sources = [
    "llvm/lib/Target/ARM/A15SDOptimizer.cpp",
    "llvm/lib/Target/ARM/ARMAsmPrinter.cpp",
    "llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp",
    "llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp",
    "llvm/lib/Target/ARM/ARMCallLowering.cpp",
    "llvm/lib/Target/ARM/ARMCodeGenPrepare.cpp",
    "llvm/lib/Target/ARM/ARMComputeBlockSize.cpp",
    "llvm/lib/Target/ARM/ARMConstantIslandPass.cpp",
    "llvm/lib/Target/ARM/ARMConstantPoolValue.cpp",
    "llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp",
    "llvm/lib/Target/ARM/ARMFastISel.cpp",
    "llvm/lib/Target/ARM/ARMFrameLowering.cpp",
    "llvm/lib/Target/ARM/ARMHazardRecognizer.cpp",
    "llvm/lib/Target/ARM/ARMInstrInfo.cpp",
    "llvm/lib/Target/ARM/ARMInstructionSelector.cpp",
    "llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp",
    "llvm/lib/Target/ARM/ARMISelLowering.cpp",
    "llvm/lib/Target/ARM/ARMLegalizerInfo.cpp",
    "llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp",
    "llvm/lib/Target/ARM/ARMMachineFunctionInfo.cpp",
    "llvm/lib/Target/ARM/ARMMacroFusion.cpp",
    "llvm/lib/Target/ARM/ARMMCInstLower.cpp",
    "llvm/lib/Target/ARM/ARMOptimizeBarriersPass.cpp",
    "llvm/lib/Target/ARM/ARMParallelDSP.cpp",
    "llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp",
    "llvm/lib/Target/ARM/ARMRegisterInfo.cpp",
    "llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp",
    "llvm/lib/Target/ARM/ARMSubtarget.cpp",
    "llvm/lib/Target/ARM/ARMTargetMachine.cpp",
    "llvm/lib/Target/ARM/ARMTargetObjectFile.cpp",
    "llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp",
    "llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp",
    "llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp",
    "llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMMachORelocationInfo.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMMCExpr.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMUnwindOpAsm.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp",
    "llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp",
    "llvm/lib/Target/ARM/MLxExpansionPass.cpp",
    "llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp",
    "llvm/lib/Target/ARM/Thumb1FrameLowering.cpp",
    "llvm/lib/Target/ARM/Thumb1InstrInfo.cpp",
    "llvm/lib/Target/ARM/Thumb2InstrInfo.cpp",
    "llvm/lib/Target/ARM/Thumb2ITBlockPass.cpp",
    "llvm/lib/Target/ARM/Thumb2SizeReduction.cpp",
    "llvm/lib/Target/ARM/ThumbRegisterInfo.cpp",
    "llvm/lib/Target/ARM/Utils/ARMBaseInfo.cpp",
  ]

  # When is_ubsan_vptr is true, this file is added to swiftshader_llvm instead.
  if (!is_ubsan_vptr) {
    sources += [ "llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp" ]
  }

  configs = [ ":swiftshader_llvm_private_config" ]

  include_dirs = llvm_include_dirs
}

swiftshader_source_set("swiftshader_llvm_aarch64") {
  sources = [
    "llvm/lib/Target/AArch64/AArch64A53Fix835769.cpp",
    "llvm/lib/Target/AArch64/AArch64A57FPLoadBalancing.cpp",
    "llvm/lib/Target/AArch64/AArch64AdvSIMDScalarPass.cpp",
    "llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp",
    "llvm/lib/Target/AArch64/AArch64CallLowering.cpp",
    "llvm/lib/Target/AArch64/AArch64CleanupLocalDynamicTLSPass.cpp",
    "llvm/lib/Target/AArch64/AArch64CollectLOH.cpp",
    "llvm/lib/Target/AArch64/AArch64CondBrTuning.cpp",
    "llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp",
    "llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp",
    "llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp",
    "llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp",
    "llvm/lib/Target/AArch64/AArch64FalkorHWPFFix.cpp",
    "llvm/lib/Target/AArch64/AArch64FastISel.cpp",
    "llvm/lib/Target/AArch64/AArch64FrameLowering.cpp",
    "llvm/lib/Target/AArch64/AArch64InstrInfo.cpp",
    "llvm/lib/Target/AArch64/AArch64InstructionSelector.cpp",
    "llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp",
    "llvm/lib/Target/AArch64/AArch64ISelLowering.cpp",
    "llvm/lib/Target/AArch64/AArch64LegalizerInfo.cpp",
    "llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp",
    "llvm/lib/Target/AArch64/AArch64MacroFusion.cpp",
    "llvm/lib/Target/AArch64/AArch64MCInstLower.cpp",
    "llvm/lib/Target/AArch64/AArch64PBQPRegAlloc.cpp",
    "llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp",
    "llvm/lib/Target/AArch64/AArch64RedundantCopyElimination.cpp",
    "llvm/lib/Target/AArch64/AArch64RegisterBankInfo.cpp",
    "llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp",
    "llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp",
    "llvm/lib/Target/AArch64/AArch64SIMDInstrOpt.cpp",
    "llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp",
    "llvm/lib/Target/AArch64/AArch64Subtarget.cpp",
    "llvm/lib/Target/AArch64/AArch64TargetMachine.cpp",
    "llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp",
    "llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp",
    "llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp",
    "llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp",
    "llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp",
    "llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp",
    "llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp",
    "llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp",
    "llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp",
    "llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp",
    "llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp",
    "llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCCodeEmitter.cpp",
    "llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp",
    "llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp",
    "llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp",
    "llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp",
    "llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp",
    "llvm/lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp",
    "llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp",
  ]

  configs = [ ":swiftshader_llvm_private_config" ]

  include_dirs = llvm_include_dirs
}

swiftshader_source_set("swiftshader_llvm_mips") {
  sources = [
    "llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp",
    "llvm/lib/Target/Mips/InstPrinter/MipsInstPrinter.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsABIInfo.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsNaClELFStreamer.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsOptionRecord.cpp",
    "llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp",
    "llvm/lib/Target/Mips/MicroMipsSizeReduction.cpp",
    "llvm/lib/Target/Mips/Mips16FrameLowering.cpp",
    "llvm/lib/Target/Mips/Mips16HardFloat.cpp",
    "llvm/lib/Target/Mips/Mips16HardFloatInfo.cpp",
    "llvm/lib/Target/Mips/Mips16InstrInfo.cpp",
    "llvm/lib/Target/Mips/Mips16ISelDAGToDAG.cpp",
    "llvm/lib/Target/Mips/Mips16ISelLowering.cpp",
    "llvm/lib/Target/Mips/Mips16RegisterInfo.cpp",
    "llvm/lib/Target/Mips/MipsAnalyzeImmediate.cpp",
    "llvm/lib/Target/Mips/MipsAsmPrinter.cpp",
    "llvm/lib/Target/Mips/MipsBranchExpansion.cpp",
    "llvm/lib/Target/Mips/MipsCallLowering.cpp",
    "llvm/lib/Target/Mips/MipsCCState.cpp",
    "llvm/lib/Target/Mips/MipsConstantIslandPass.cpp",
    "llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp",
    "llvm/lib/Target/Mips/MipsExpandPseudo.cpp",
    "llvm/lib/Target/Mips/MipsFastISel.cpp",
    "llvm/lib/Target/Mips/MipsFrameLowering.cpp",
    "llvm/lib/Target/Mips/MipsInstrInfo.cpp",
    "llvm/lib/Target/Mips/MipsInstructionSelector.cpp",
    "llvm/lib/Target/Mips/MipsISelDAGToDAG.cpp",
    "llvm/lib/Target/Mips/MipsISelLowering.cpp",
    "llvm/lib/Target/Mips/MipsLegalizerInfo.cpp",
    "llvm/lib/Target/Mips/MipsMachineFunction.cpp",
    "llvm/lib/Target/Mips/MipsMCInstLower.cpp",
    "llvm/lib/Target/Mips/MipsModuleISelDAGToDAG.cpp",
    "llvm/lib/Target/Mips/MipsOptimizePICCall.cpp",
    "llvm/lib/Target/Mips/MipsOs16.cpp",
    "llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp",
    "llvm/lib/Target/Mips/MipsRegisterInfo.cpp",
    "llvm/lib/Target/Mips/MipsSEFrameLowering.cpp",
    "llvm/lib/Target/Mips/MipsSEInstrInfo.cpp",
    "llvm/lib/Target/Mips/MipsSEISelDAGToDAG.cpp",
    "llvm/lib/Target/Mips/MipsSEISelLowering.cpp",
    "llvm/lib/Target/Mips/MipsSERegisterInfo.cpp",
    "llvm/lib/Target/Mips/MipsSubtarget.cpp",
    "llvm/lib/Target/Mips/MipsTargetMachine.cpp",
    "llvm/lib/Target/Mips/MipsTargetObjectFile.cpp",
    "llvm/lib/Target/Mips/TargetInfo/MipsTargetInfo.cpp",
  ]

  configs = [ ":swiftshader_llvm_private_config" ]

  include_dirs = llvm_include_dirs
}

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/AccelTable.cpp",
    "llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp",
    "llvm/lib/CodeGen/AsmPrinter/ARMException.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/DbgValueHistoryCalculator.cpp",
    "llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp",
    "llvm/lib/CodeGen/AsmPrinter/DebugLocStream.cpp",
    "llvm/lib/CodeGen/AsmPrinter/DIE.cpp",
    "llvm/lib/CodeGen/AsmPrinter/DIEHash.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/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/CalcSpillWeights.cpp",
    "llvm/lib/CodeGen/CallingConvLower.cpp",
    "llvm/lib/CodeGen/CFIInstrInserter.cpp",
    "llvm/lib/CodeGen/CodeGen.cpp",
    "llvm/lib/CodeGen/CodeGenPrepare.cpp",
    "llvm/lib/CodeGen/CriticalAntiDepBreaker.cpp",
    "llvm/lib/CodeGen/DeadMachineInstructionElim.cpp",
    "llvm/lib/CodeGen/DetectDeadLanes.cpp",
    "llvm/lib/CodeGen/DFAPacketizer.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/FaultMaps.cpp",
    "llvm/lib/CodeGen/FEntryInserter.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/GlobalISel.cpp",
    "llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp",
    "llvm/lib/CodeGen/GlobalISel/InstructionSelector.cpp",
    "llvm/lib/CodeGen/GlobalISel/IRTranslator.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/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/LiveIntervals.cpp",
    "llvm/lib/CodeGen/LiveIntervalUnion.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/LLVMTargetMachine.cpp",
    "llvm/lib/CodeGen/LocalStackSlotAllocation.cpp",
    "llvm/lib/CodeGen/LoopTraversal.cpp",
    "llvm/lib/CodeGen/LowerEmuTLS.cpp",
    "llvm/lib/CodeGen/LowLevelType.cpp",
    "llvm/lib/CodeGen/MachineBasicBlock.cpp",
    "llvm/lib/CodeGen/MachineBlockFrequencyInfo.cpp",
    "llvm/lib/CodeGen/MachineBlockPlacement.cpp",
    "llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp",
    "llvm/lib/CodeGen/MachineCombiner.cpp",
    "llvm/lib/CodeGen/MachineCopyPropagation.cpp",
    "llvm/lib/CodeGen/MachineCSE.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/MachineScheduler.cpp",
    "llvm/lib/CodeGen/MachineSink.cpp",
    "llvm/lib/CodeGen/MachineSSAUpdater.cpp",
    "llvm/lib/CodeGen/MachineTraceMetrics.cpp",
    "llvm/lib/CodeGen/MachineVerifier.cpp",
    "llvm/lib/CodeGen/MacroFusion.cpp",
    "llvm/lib/CodeGen/MIRCanonicalizerPass.cpp",
    "llvm/lib/CodeGen/MIRPrinter.cpp",
    "llvm/lib/CodeGen/MIRPrintingPass.cpp",
    "llvm/lib/CodeGen/OptimizePHIs.cpp",
    "llvm/lib/CodeGen/PatchableFunction.cpp",
    "llvm/lib/CodeGen/PeepholeOptimizer.cpp",
    "llvm/lib/CodeGen/PHIElimination.cpp",
    "llvm/lib/CodeGen/PHIEliminationUtils.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/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/RegUsageInfoCollector.cpp",
    "llvm/lib/CodeGen/RegUsageInfoPropagate.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/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/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/DIBuilder.cpp",
    "llvm/lib/IR/Dominators.cpp",
    "llvm/lib/IR/Function.cpp",
    "llvm/lib/IR/Globals.cpp",
    "llvm/lib/IR/GVMaterializer.cpp",
    "llvm/lib/IR/InlineAsm.cpp",
    "llvm/lib/IR/Instruction.cpp",
    "llvm/lib/IR/Instructions.cpp",
    "llvm/lib/IR/IntrinsicInst.cpp",
    "llvm/lib/IR/IRBuilder.cpp",
    "llvm/lib/IR/IRPrintingPasses.cpp",
    "llvm/lib/IR/LegacyPassManager.cpp",
    "llvm/lib/IR/LLVMContext.cpp",
    "llvm/lib/IR/LLVMContextImpl.cpp",
    "llvm/lib/IR/Mangler.cpp",
    "llvm/lib/IR/MDBuilder.cpp",
    "llvm/lib/IR/Metadata.cpp",
    "llvm/lib/IR/Module.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/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/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/Chrono.cpp",
    "llvm/lib/Support/circular_raw_ostream.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/DataExtractor.cpp",
    "llvm/lib/Support/Debug.cpp",
    "llvm/lib/Support/DebugCounter.cpp",
    "llvm/lib/Support/DJB.cpp",
    "llvm/lib/Support/DynamicLibrary.cpp",
    "llvm/lib/Support/Errno.cpp",
    "llvm/lib/Support/Error.cpp",
    "llvm/lib/Support/ErrorHandling.cpp",
    "llvm/lib/Support/FoldingSet.cpp",
    "llvm/lib/Support/FormattedStream.cpp",
    "llvm/lib/Support/FormatVariadic.cpp",
    "llvm/lib/Support/GraphWriter.cpp",
    "llvm/lib/Support/Hashing.cpp",
    "llvm/lib/Support/Host.cpp",
    "llvm/lib/Support/IntEqClasses.cpp",
    "llvm/lib/Support/IntervalMap.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/LowLevelType.cpp",
    "llvm/lib/Support/ManagedStatic.cpp",
    "llvm/lib/Support/MathExtras.cpp",
    "llvm/lib/Support/MD5.cpp",
    "llvm/lib/Support/Memory.cpp",
    "llvm/lib/Support/MemoryBuffer.cpp",
    "llvm/lib/Support/Mutex.cpp",
    "llvm/lib/Support/NativeFormatting.cpp",
    "llvm/lib/Support/Path.cpp",
    "llvm/lib/Support/PrettyStackTrace.cpp",
    "llvm/lib/Support/Process.cpp",
    "llvm/lib/Support/Program.cpp",
    "llvm/lib/Support/RandomNumberGenerator.cpp",
    "llvm/lib/Support/raw_ostream.cpp",
    "llvm/lib/Support/regcomp.c",
    "llvm/lib/Support/regerror.c",
    "llvm/lib/Support/Regex.cpp",
    "llvm/lib/Support/regexec.c",
    "llvm/lib/Support/regfree.c",
    "llvm/lib/Support/regstrlcpy.c",
    "llvm/lib/Support/RWMutex.cpp",
    "llvm/lib/Support/ScaledNumber.cpp",
    "llvm/lib/Support/ScopedPrinter.cpp",
    "llvm/lib/Support/SHA1.cpp",
    "llvm/lib/Support/Signals.cpp",
    "llvm/lib/Support/SmallPtrSet.cpp",
    "llvm/lib/Support/SmallVector.cpp",
    "llvm/lib/Support/SourceMgr.cpp",
    "llvm/lib/Support/Statistic.cpp",
    "llvm/lib/Support/StringExtras.cpp",
    "llvm/lib/Support/StringMap.cpp",
    "llvm/lib/Support/StringRef.cpp",
    "llvm/lib/Support/StringSaver.cpp",
    "llvm/lib/Support/TargetParser.cpp",
    "llvm/lib/Support/TargetRegistry.cpp",
    "llvm/lib/Support/Threading.cpp",
    "llvm/lib/Support/Timer.cpp",
    "llvm/lib/Support/ToolOutputFile.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/YAMLParser.cpp",
    "llvm/lib/Support/YAMLTraits.cpp",
  ]

  configs = [ ":swiftshader_llvm_private_config" ]

  include_dirs = llvm_include_dirs
}

swiftshader_source_set("swiftshader_llvm_transforms") {
  sources = [
    "llvm/lib/Transforms/Coroutines/CoroCleanup.cpp",
    "llvm/lib/Transforms/Coroutines/CoroEarly.cpp",
    "llvm/lib/Transforms/Coroutines/CoroElide.cpp",
    "llvm/lib/Transforms/Coroutines/CoroFrame.cpp",
    "llvm/lib/Transforms/Coroutines/CoroSplit.cpp",
    "llvm/lib/Transforms/Coroutines/Coroutines.cpp",
    "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/IPO/BarrierNoopPass.cpp",
    "llvm/lib/Transforms/Scalar/ADCE.cpp",
    "llvm/lib/Transforms/Scalar/ConstantHoisting.cpp",
    "llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp",
    "llvm/lib/Transforms/Scalar/EarlyCSE.cpp",
    "llvm/lib/Transforms/Scalar/GVN.cpp",
    "llvm/lib/Transforms/Scalar/LICM.cpp",
    "llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp",
    "llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp",
    "llvm/lib/Transforms/Scalar/MergeICmps.cpp",
    "llvm/lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp",
    "llvm/lib/Transforms/Scalar/Reassociate.cpp",
    "llvm/lib/Transforms/Scalar/SCCP.cpp",
    "llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp",
    "llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp",
    "llvm/lib/Transforms/Scalar/SROA.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/CloneFunction.cpp",
    "llvm/lib/Transforms/Utils/DemoteRegToStack.cpp",
    "llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp",
    "llvm/lib/Transforms/Utils/EscapeEnumerator.cpp",
    "llvm/lib/Transforms/Utils/InlineFunction.cpp",
    "llvm/lib/Transforms/Utils/LCSSA.cpp",
    "llvm/lib/Transforms/Utils/Local.cpp",
    "llvm/lib/Transforms/Utils/LoopSimplify.cpp",
    "llvm/lib/Transforms/Utils/LoopUtils.cpp",
    "llvm/lib/Transforms/Utils/LowerInvoke.cpp",
    "llvm/lib/Transforms/Utils/OrderedInstructions.cpp",
    "llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp",
    "llvm/lib/Transforms/Utils/SimplifyCFG.cpp",
    "llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp",
    "llvm/lib/Transforms/Utils/SSAUpdater.cpp",
    "llvm/lib/Transforms/Utils/SymbolRewriter.cpp",
    "llvm/lib/Transforms/Utils/ValueMapper.cpp",
    "llvm/lib/Transforms/Utils/VNCoercion.cpp",
  ]

  configs = [ ":swiftshader_llvm_private_config" ]

  include_dirs = llvm_include_dirs
}
