Home | History | Annotate | Download | only in LLVM
      1 # Copyright 2016 The SwiftShader Authors. All Rights Reserved.
      2 #
      3 # Licensed under the Apache License, Version 2.0 (the "License");
      4 # you may not use this file except in compliance with the License.
      5 # You may obtain a copy of the License at
      6 #
      7 #    http://www.apache.org/licenses/LICENSE-2.0
      8 #
      9 # Unless required by applicable law or agreed to in writing, software
     10 # distributed under the License is distributed on an "AS IS" BASIS,
     11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     12 # See the License for the specific language governing permissions and
     13 # limitations under the License.
     14 
     15 import("../../src/swiftshader.gni")
     16 
     17 # Need a separate config to ensure the warnings are added to the end.
     18 config("swiftshader_llvm_private_config") {
     19   cflags = []
     20 
     21   if (is_win) {
     22     cflags += [
     23       "/wd4005",
     24       "/wd4065",
     25       "/wd4146",
     26       "/wd4245",
     27       "/wd4267",
     28       "/wd4310",
     29       "/wd4319",
     30       "/wd4334",
     31       "/wd4389",
     32       "/wd4624",
     33       "/wd4701",
     34       "/wd4702",
     35       "/wd4703",
     36       "/wd4706",
     37       "/wd4800",
     38     ]
     39 
     40     if (!is_debug) {
     41       cflags += [ "/wd4324" ]
     42     }
     43 
     44     if (is_clang) {
     45       cflags += [
     46         "-Wno-format",
     47         "-Wno-sign-compare",
     48         "-Wno-macro-redefined",
     49       ]
     50     }
     51   }
     52 
     53   if (is_fuchsia) {
     54     cflags += [ "-Wno-error" ]
     55   }
     56 
     57   if (is_clang && (target_cpu == "x86" || target_cpu == "x64")) {
     58     cflags += [
     59       "-msse2",
     60       "-Wno-header-hygiene",
     61       "-Wno-null-dereference",
     62     ]
     63   } else {
     64     cflags += [ "-Wno-unused-but-set-variable" ]
     65   }
     66   cflags += [
     67     "-Wno-attributes",
     68     "-Wno-deprecated-declarations",
     69     "-Wno-enum-compare",
     70     "-Wno-unused-function",
     71     "-Wno-unused-local-typedef",
     72     "-Wno-unused-private-field",
     73     "-Wno-unused-result",
     74     "-Wno-unused-variable",
     75   ]
     76   defines = [
     77     "__STDC_CONSTANT_MACROS",
     78     "__STDC_LIMIT_MACROS",
     79   ]
     80 }
     81 
     82 swiftshader_source_set("swiftshader_llvm") {
     83   sources = [
     84     "lib/Analysis/AliasAnalysis.cpp",
     85     "lib/Analysis/AliasSetTracker.cpp",
     86     "lib/Analysis/BasicAliasAnalysis.cpp",
     87     "lib/Analysis/BranchProbabilityInfo.cpp",
     88     "lib/Analysis/CaptureTracking.cpp",
     89     "lib/Analysis/ConstantFolding.cpp",
     90     "lib/Analysis/DIBuilder.cpp",
     91     "lib/Analysis/DebugInfo.cpp",
     92     "lib/Analysis/IVUsers.cpp",
     93     "lib/Analysis/InstructionSimplify.cpp",
     94     "lib/Analysis/Loads.cpp",
     95     "lib/Analysis/LoopInfo.cpp",
     96     "lib/Analysis/LoopPass.cpp",
     97     "lib/Analysis/MemoryBuiltins.cpp",
     98     "lib/Analysis/MemoryDependenceAnalysis.cpp",
     99     "lib/Analysis/NoAliasAnalysis.cpp",
    100     "lib/Analysis/PHITransAddr.cpp",
    101     "lib/Analysis/PathNumbering.cpp",
    102     "lib/Analysis/ProfileInfo.cpp",
    103     "lib/Analysis/ScalarEvolution.cpp",
    104     "lib/Analysis/ScalarEvolutionExpander.cpp",
    105     "lib/Analysis/ScalarEvolutionNormalization.cpp",
    106     "lib/Analysis/TypeBasedAliasAnalysis.cpp",
    107     "lib/Analysis/ValueTracking.cpp",
    108     "lib/CodeGen/AggressiveAntiDepBreaker.cpp",
    109     "lib/CodeGen/AllocationOrder.cpp",
    110     "lib/CodeGen/Analysis.cpp",
    111     "lib/CodeGen/BranchFolding.cpp",
    112     "lib/CodeGen/CalcSpillWeights.cpp",
    113     "lib/CodeGen/CallingConvLower.cpp",
    114     "lib/CodeGen/CodeGen.cpp",
    115     "lib/CodeGen/CodePlacementOpt.cpp",
    116     "lib/CodeGen/CriticalAntiDepBreaker.cpp",
    117     "lib/CodeGen/DeadMachineInstructionElim.cpp",
    118     "lib/CodeGen/DwarfEHPrepare.cpp",
    119     "lib/CodeGen/ELFCodeEmitter.cpp",
    120     "lib/CodeGen/ELFWriter.cpp",
    121     "lib/CodeGen/EdgeBundles.cpp",
    122     "lib/CodeGen/ExecutionDepsFix.cpp",
    123     "lib/CodeGen/ExpandISelPseudos.cpp",
    124     "lib/CodeGen/ExpandPostRAPseudos.cpp",
    125     "lib/CodeGen/GCMetadata.cpp",
    126     "lib/CodeGen/GCStrategy.cpp",
    127     "lib/CodeGen/IfConversion.cpp",
    128     "lib/CodeGen/InlineSpiller.cpp",
    129     "lib/CodeGen/InterferenceCache.cpp",
    130     "lib/CodeGen/IntrinsicLowering.cpp",
    131     "lib/CodeGen/LLVMTargetMachine.cpp",
    132     "lib/CodeGen/LatencyPriorityQueue.cpp",
    133     "lib/CodeGen/LexicalScopes.cpp",
    134     "lib/CodeGen/LiveDebugVariables.cpp",
    135     "lib/CodeGen/LiveInterval.cpp",
    136     "lib/CodeGen/LiveIntervalAnalysis.cpp",
    137     "lib/CodeGen/LiveIntervalUnion.cpp",
    138     "lib/CodeGen/LiveRangeCalc.cpp",
    139     "lib/CodeGen/LiveRangeEdit.cpp",
    140     "lib/CodeGen/LiveStackAnalysis.cpp",
    141     "lib/CodeGen/LiveVariables.cpp",
    142     "lib/CodeGen/LocalStackSlotAllocation.cpp",
    143     "lib/CodeGen/MachineBasicBlock.cpp",
    144     "lib/CodeGen/MachineBlockFrequencyInfo.cpp",
    145     "lib/CodeGen/MachineBranchProbabilityInfo.cpp",
    146     "lib/CodeGen/MachineCSE.cpp",
    147     "lib/CodeGen/MachineDominators.cpp",
    148     "lib/CodeGen/MachineFunction.cpp",
    149     "lib/CodeGen/MachineFunctionAnalysis.cpp",
    150     "lib/CodeGen/MachineFunctionPass.cpp",
    151     "lib/CodeGen/MachineFunctionPrinterPass.cpp",
    152     "lib/CodeGen/MachineInstr.cpp",
    153     "lib/CodeGen/MachineLICM.cpp",
    154     "lib/CodeGen/MachineLoopInfo.cpp",
    155     "lib/CodeGen/MachineLoopRanges.cpp",
    156     "lib/CodeGen/MachineModuleInfo.cpp",
    157     "lib/CodeGen/MachineModuleInfoImpls.cpp",
    158     "lib/CodeGen/MachinePassRegistry.cpp",
    159     "lib/CodeGen/MachineRegisterInfo.cpp",
    160     "lib/CodeGen/MachineSSAUpdater.cpp",
    161     "lib/CodeGen/MachineSink.cpp",
    162     "lib/CodeGen/MachineVerifier.cpp",
    163     "lib/CodeGen/ObjectCodeEmitter.cpp",
    164     "lib/CodeGen/OcamlGC.cpp",
    165     "lib/CodeGen/OptimizePHIs.cpp",
    166     "lib/CodeGen/PHIElimination.cpp",
    167     "lib/CodeGen/PHIEliminationUtils.cpp",
    168     "lib/CodeGen/Passes.cpp",
    169     "lib/CodeGen/PeepholeOptimizer.cpp",
    170     "lib/CodeGen/PostRASchedulerList.cpp",
    171     "lib/CodeGen/ProcessImplicitDefs.cpp",
    172     "lib/CodeGen/PrologEpilogInserter.cpp",
    173     "lib/CodeGen/PseudoSourceValue.cpp",
    174     "lib/CodeGen/RegAllocBasic.cpp",
    175     "lib/CodeGen/RegAllocFast.cpp",
    176     "lib/CodeGen/RegAllocGreedy.cpp",
    177     "lib/CodeGen/RegAllocLinearScan.cpp",
    178     "lib/CodeGen/RegAllocPBQP.cpp",
    179     "lib/CodeGen/RegisterClassInfo.cpp",
    180     "lib/CodeGen/RegisterCoalescer.cpp",
    181     "lib/CodeGen/RegisterScavenging.cpp",
    182     "lib/CodeGen/RenderMachineFunction.cpp",
    183     "lib/CodeGen/ScheduleDAG.cpp",
    184     "lib/CodeGen/ScheduleDAGEmit.cpp",
    185     "lib/CodeGen/ScheduleDAGInstrs.cpp",
    186     "lib/CodeGen/ScheduleDAGPrinter.cpp",
    187     "lib/CodeGen/ScoreboardHazardRecognizer.cpp",
    188     "lib/CodeGen/SelectionDAG/DAGCombiner.cpp",
    189     "lib/CodeGen/SelectionDAG/FastISel.cpp",
    190     "lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp",
    191     "lib/CodeGen/SelectionDAG/InstrEmitter.cpp",
    192     "lib/CodeGen/SelectionDAG/LegalizeDAG.cpp",
    193     "lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp",
    194     "lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp",
    195     "lib/CodeGen/SelectionDAG/LegalizeTypes.cpp",
    196     "lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp",
    197     "lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp",
    198     "lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp",
    199     "lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp",
    200     "lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp",
    201     "lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp",
    202     "lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp",
    203     "lib/CodeGen/SelectionDAG/SelectionDAG.cpp",
    204     "lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp",
    205     "lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp",
    206     "lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp",
    207     "lib/CodeGen/SelectionDAG/TargetLowering.cpp",
    208     "lib/CodeGen/SelectionDAG/TargetSelectionDAGInfo.cpp",
    209     "lib/CodeGen/ShadowStackGC.cpp",
    210     "lib/CodeGen/ShrinkWrapping.cpp",
    211     "lib/CodeGen/SjLjEHPrepare.cpp",
    212     "lib/CodeGen/SlotIndexes.cpp",
    213     "lib/CodeGen/SpillPlacement.cpp",
    214     "lib/CodeGen/Spiller.cpp",
    215     "lib/CodeGen/SplitKit.cpp",
    216     "lib/CodeGen/Splitter.cpp",
    217     "lib/CodeGen/StackProtector.cpp",
    218     "lib/CodeGen/StackSlotColoring.cpp",
    219     "lib/CodeGen/StrongPHIElimination.cpp",
    220     "lib/CodeGen/TailDuplication.cpp",
    221     "lib/CodeGen/TargetInstrInfoImpl.cpp",
    222     "lib/CodeGen/TargetLoweringObjectFileImpl.cpp",
    223     "lib/CodeGen/TwoAddressInstructionPass.cpp",
    224     "lib/CodeGen/UnreachableBlockElim.cpp",
    225     "lib/CodeGen/VirtRegMap.cpp",
    226     "lib/CodeGen/VirtRegRewriter.cpp",
    227     "lib/ExecutionEngine/ExecutionEngine.cpp",
    228     "lib/ExecutionEngine/JIT/Intercept.cpp",
    229     "lib/ExecutionEngine/JIT/JIT.cpp",
    230     "lib/ExecutionEngine/JIT/JITDebugRegisterer.cpp",
    231     "lib/ExecutionEngine/JIT/JITDwarfEmitter.cpp",
    232     "lib/ExecutionEngine/JIT/JITEmitter.cpp",
    233     "lib/ExecutionEngine/JIT/JITMemoryManager.cpp",
    234     "lib/ExecutionEngine/JIT/OProfileJITEventListener.cpp",
    235     "lib/ExecutionEngine/TargetSelect.cpp",
    236     "lib/MC/ELFObjectWriter.cpp",
    237     "lib/MC/MCAsmBackend.cpp",
    238     "lib/MC/MCAsmInfo.cpp",
    239     "lib/MC/MCAsmInfoCOFF.cpp",
    240     "lib/MC/MCAsmInfoDarwin.cpp",
    241     "lib/MC/MCAsmStreamer.cpp",
    242     "lib/MC/MCAssembler.cpp",
    243     "lib/MC/MCAtom.cpp",
    244     "lib/MC/MCCodeEmitter.cpp",
    245     "lib/MC/MCCodeGenInfo.cpp",
    246     "lib/MC/MCContext.cpp",
    247     "lib/MC/MCDisassembler.cpp",
    248     "lib/MC/MCDwarf.cpp",
    249     "lib/MC/MCELF.cpp",
    250     "lib/MC/MCELFObjectTargetWriter.cpp",
    251     "lib/MC/MCELFStreamer.cpp",
    252     "lib/MC/MCExpr.cpp",
    253     "lib/MC/MCInst.cpp",
    254     "lib/MC/MCInstPrinter.cpp",
    255     "lib/MC/MCInstrAnalysis.cpp",
    256     "lib/MC/MCLabel.cpp",
    257     "lib/MC/MCLoggingStreamer.cpp",
    258     "lib/MC/MCMachOStreamer.cpp",
    259     "lib/MC/MCMachObjectTargetWriter.cpp",
    260     "lib/MC/MCModule.cpp",
    261     "lib/MC/MCNullStreamer.cpp",
    262     "lib/MC/MCObjectFileInfo.cpp",
    263     "lib/MC/MCObjectStreamer.cpp",
    264     "lib/MC/MCObjectWriter.cpp",
    265     "lib/MC/MCPureStreamer.cpp",
    266     "lib/MC/MCSection.cpp",
    267     "lib/MC/MCSectionCOFF.cpp",
    268     "lib/MC/MCSectionELF.cpp",
    269     "lib/MC/MCSectionMachO.cpp",
    270     "lib/MC/MCStreamer.cpp",
    271     "lib/MC/MCSubtargetInfo.cpp",
    272     "lib/MC/MCSymbol.cpp",
    273     "lib/MC/MCTargetAsmLexer.cpp",
    274     "lib/MC/MCValue.cpp",
    275     "lib/MC/MCWin64EH.cpp",
    276     "lib/MC/MachObjectWriter.cpp",
    277     "lib/MC/SubtargetFeature.cpp",
    278     "lib/MC/WinCOFFObjectWriter.cpp",
    279     "lib/MC/WinCOFFStreamer.cpp",
    280     "lib/Support/APFloat.cpp",
    281     "lib/Support/APInt.cpp",
    282     "lib/Support/APSInt.cpp",
    283     "lib/Support/Allocator.cpp",
    284     "lib/Support/Atomic.cpp",
    285     "lib/Support/BlockFrequency.cpp",
    286     "lib/Support/BranchProbability.cpp",
    287     "lib/Support/CommandLine.cpp",
    288     "lib/Support/ConstantRange.cpp",
    289     "lib/Support/CrashRecoveryContext.cpp",
    290     "lib/Support/DAGDeltaAlgorithm.cpp",
    291     "lib/Support/DataExtractor.cpp",
    292     "lib/Support/Debug.cpp",
    293     "lib/Support/DeltaAlgorithm.cpp",
    294     "lib/Support/Disassembler.cpp",
    295     "lib/Support/Dwarf.cpp",
    296     "lib/Support/DynamicLibrary.cpp",
    297     "lib/Support/Errno.cpp",
    298     "lib/Support/ErrorHandling.cpp",
    299     "lib/Support/FileUtilities.cpp",
    300     "lib/Support/FoldingSet.cpp",
    301     "lib/Support/FormattedStream.cpp",
    302     "lib/Support/GraphWriter.cpp",
    303     "lib/Support/Host.cpp",
    304     "lib/Support/IncludeFile.cpp",
    305     "lib/Support/IntEqClasses.cpp",
    306     "lib/Support/IntervalMap.cpp",
    307     "lib/Support/IsInf.cpp",
    308     "lib/Support/IsNAN.cpp",
    309     "lib/Support/ManagedStatic.cpp",
    310     "lib/Support/Memory.cpp",
    311     "lib/Support/MemoryBuffer.cpp",
    312     "lib/Support/MemoryObject.cpp",
    313     "lib/Support/Mutex.cpp",
    314     "lib/Support/Path.cpp",
    315     "lib/Support/PathV2.cpp",
    316     "lib/Support/PluginLoader.cpp",
    317     "lib/Support/PrettyStackTrace.cpp",
    318     "lib/Support/Process.cpp",
    319     "lib/Support/Program.cpp",
    320     "lib/Support/RWMutex.cpp",
    321     "lib/Support/SearchForAddressOfSpecialSymbol.cpp",
    322     "lib/Support/Signals.cpp",
    323     "lib/Support/SmallPtrSet.cpp",
    324     "lib/Support/SmallVector.cpp",
    325     "lib/Support/SourceMgr.cpp",
    326     "lib/Support/Statistic.cpp",
    327     "lib/Support/StringExtras.cpp",
    328     "lib/Support/StringMap.cpp",
    329     "lib/Support/StringPool.cpp",
    330     "lib/Support/StringRef.cpp",
    331     "lib/Support/SystemUtils.cpp",
    332     "lib/Support/TargetRegistry.cpp",
    333     "lib/Support/ThreadLocal.cpp",
    334     "lib/Support/Threading.cpp",
    335     "lib/Support/TimeValue.cpp",
    336     "lib/Support/Timer.cpp",
    337     "lib/Support/ToolOutputFile.cpp",
    338     "lib/Support/Triple.cpp",
    339     "lib/Support/Twine.cpp",
    340     "lib/Support/Valgrind.cpp",
    341     "lib/Support/circular_raw_ostream.cpp",
    342     "lib/Support/raw_os_ostream.cpp",
    343     "lib/Support/raw_ostream.cpp",
    344     "lib/Support/system_error.cpp",
    345     "lib/Target/Mangler.cpp",
    346     "lib/Target/Target.cpp",
    347     "lib/Target/TargetData.cpp",
    348     "lib/Target/TargetELFWriterInfo.cpp",
    349     "lib/Target/TargetFrameLowering.cpp",
    350     "lib/Target/TargetInstrInfo.cpp",
    351     "lib/Target/TargetLibraryInfo.cpp",
    352     "lib/Target/TargetLoweringObjectFile.cpp",
    353     "lib/Target/TargetMachine.cpp",
    354     "lib/Target/TargetRegisterInfo.cpp",
    355     "lib/Target/TargetSubtargetInfo.cpp",
    356     "lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp",
    357     "lib/Target/X86/InstPrinter/X86InstComments.cpp",
    358     "lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp",
    359     "lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp",
    360     "lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp",
    361     "lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp",
    362     "lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp",
    363     "lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp",
    364     "lib/Target/X86/TargetInfo/X86TargetInfo.cpp",
    365     "lib/Target/X86/Utils/X86ShuffleDecode.cpp",
    366     "lib/Target/X86/X86CodeEmitter.cpp",
    367     "lib/Target/X86/X86ELFWriterInfo.cpp",
    368     "lib/Target/X86/X86FastISel.cpp",
    369     "lib/Target/X86/X86FloatingPoint.cpp",
    370     "lib/Target/X86/X86FrameLowering.cpp",
    371     "lib/Target/X86/X86ISelDAGToDAG.cpp",
    372     "lib/Target/X86/X86ISelLowering.cpp",
    373     "lib/Target/X86/X86InstrInfo.cpp",
    374     "lib/Target/X86/X86JITInfo.cpp",
    375     "lib/Target/X86/X86RegisterInfo.cpp",
    376     "lib/Target/X86/X86SelectionDAGInfo.cpp",
    377     "lib/Target/X86/X86Subtarget.cpp",
    378     "lib/Target/X86/X86TargetMachine.cpp",
    379     "lib/Target/X86/X86TargetObjectFile.cpp",
    380     "lib/Target/X86/X86VZeroUpper.cpp",
    381     "lib/Transforms/InstCombine/InstCombineAddSub.cpp",
    382     "lib/Transforms/InstCombine/InstCombineAndOrXor.cpp",
    383     "lib/Transforms/InstCombine/InstCombineCalls.cpp",
    384     "lib/Transforms/InstCombine/InstCombineCasts.cpp",
    385     "lib/Transforms/InstCombine/InstCombineCompares.cpp",
    386     "lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp",
    387     "lib/Transforms/InstCombine/InstCombineMulDivRem.cpp",
    388     "lib/Transforms/InstCombine/InstCombinePHI.cpp",
    389     "lib/Transforms/InstCombine/InstCombineSelect.cpp",
    390     "lib/Transforms/InstCombine/InstCombineShifts.cpp",
    391     "lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp",
    392     "lib/Transforms/InstCombine/InstCombineVectorOps.cpp",
    393     "lib/Transforms/InstCombine/InstructionCombining.cpp",
    394     "lib/Transforms/Scalar/ADCE.cpp",
    395     "lib/Transforms/Scalar/CodeGenPrepare.cpp",
    396     "lib/Transforms/Scalar/DeadStoreElimination.cpp",
    397     "lib/Transforms/Scalar/GVN.cpp",
    398     "lib/Transforms/Scalar/LICM.cpp",
    399     "lib/Transforms/Scalar/LoopStrengthReduce.cpp",
    400     "lib/Transforms/Scalar/Reassociate.cpp",
    401     "lib/Transforms/Scalar/Reg2Mem.cpp",
    402     "lib/Transforms/Scalar/SCCP.cpp",
    403     "lib/Transforms/Scalar/ScalarReplAggregates.cpp",
    404     "lib/Transforms/Scalar/SimplifyCFGPass.cpp",
    405     "lib/Transforms/Utils/AddrModeMatcher.cpp",
    406     "lib/Transforms/Utils/BasicBlockUtils.cpp",
    407     "lib/Transforms/Utils/BreakCriticalEdges.cpp",
    408     "lib/Transforms/Utils/BuildLibCalls.cpp",
    409     "lib/Transforms/Utils/DemoteRegToStack.cpp",
    410     "lib/Transforms/Utils/InstructionNamer.cpp",
    411     "lib/Transforms/Utils/LCSSA.cpp",
    412     "lib/Transforms/Utils/Local.cpp",
    413     "lib/Transforms/Utils/LoopSimplify.cpp",
    414     "lib/Transforms/Utils/LowerInvoke.cpp",
    415     "lib/Transforms/Utils/LowerSwitch.cpp",
    416     "lib/Transforms/Utils/Mem2Reg.cpp",
    417     "lib/Transforms/Utils/PromoteMemoryToRegister.cpp",
    418     "lib/Transforms/Utils/SSAUpdater.cpp",
    419     "lib/Transforms/Utils/SimplifyCFG.cpp",
    420     "lib/Transforms/Utils/UnifyFunctionExitNodes.cpp",
    421     "lib/VMCore/AsmWriter.cpp",
    422     "lib/VMCore/Attributes.cpp",
    423     "lib/VMCore/AutoUpgrade.cpp",
    424     "lib/VMCore/BasicBlock.cpp",
    425     "lib/VMCore/ConstantFold.cpp",
    426     "lib/VMCore/Constants.cpp",
    427     "lib/VMCore/Core.cpp",
    428     "lib/VMCore/DebugInfoProbe.cpp",
    429     "lib/VMCore/DebugLoc.cpp",
    430     "lib/VMCore/Dominators.cpp",
    431     "lib/VMCore/Function.cpp",
    432     "lib/VMCore/GCOV.cpp",
    433     "lib/VMCore/GVMaterializer.cpp",
    434     "lib/VMCore/Globals.cpp",
    435     "lib/VMCore/IRBuilder.cpp",
    436     "lib/VMCore/InlineAsm.cpp",
    437     "lib/VMCore/Instruction.cpp",
    438     "lib/VMCore/Instructions.cpp",
    439     "lib/VMCore/IntrinsicInst.cpp",
    440     "lib/VMCore/LLVMContext.cpp",
    441     "lib/VMCore/LLVMContextImpl.cpp",
    442     "lib/VMCore/LeakDetector.cpp",
    443     "lib/VMCore/Metadata.cpp",
    444     "lib/VMCore/Module.cpp",
    445     "lib/VMCore/Pass.cpp",
    446     "lib/VMCore/PassManager.cpp",
    447     "lib/VMCore/PassRegistry.cpp",
    448     "lib/VMCore/PrintModulePass.cpp",
    449     "lib/VMCore/Type.cpp",
    450     "lib/VMCore/Use.cpp",
    451     "lib/VMCore/User.cpp",
    452     "lib/VMCore/Value.cpp",
    453     "lib/VMCore/ValueSymbolTable.cpp",
    454     "lib/VMCore/ValueTypes.cpp",
    455     "lib/VMCore/Verifier.cpp",
    456   ]
    457 
    458   configs = [ ":swiftshader_llvm_private_config" ]
    459 
    460   include_dirs = [ "lib/Target/X86" ]
    461 
    462   # The "include" directory includes common files and the Windows specific config file.
    463   # The "include-<platform>" directory includes the <platform> specific config file.
    464   # Non-Windows platforms must add their platform specific include directory before the "include" directory
    465   # is added, otherwise, the Windows specific config file will be used and compilation will fail.
    466   if (is_linux) {
    467     include_dirs += [ "include-linux" ]
    468   } else if (is_mac) {
    469     include_dirs += [ "include-osx" ]
    470   } else if (is_fuchsia) {
    471     include_dirs += [ "include-fuchsia" ]
    472   }
    473 
    474   include_dirs += [ "include" ]
    475 }
    476