83 lines · plain
1# Basic utilities which is the strict minimum needed to build2# llvm-min-tblgen.3add_subdirectory(Basic)4# Common utilities are all of the reusable components and helper5# code needed by the backends.6add_subdirectory(Common)7 8set(LLVM_LINK_COMPONENTS Support)9 10# llvm-min-tablegen only contains a subset of backends necessary to11# build llvm/include. It must not depend on TableGenCommon, as12# TableGenCommon depends on this already to generate things such as13# ValueType definitions.14# Sources included in both, llvm-min-tblgen and llvm-tblgen, must be included15# into LLVMTableGenBasic to avoid redundant compilation and problems with build16# caches.17# At least one source file must be included directly to avoid CMake problems.18# E.g. CMake derives which linker to use from the types of sources added.19add_tablegen(llvm-min-tblgen LLVM_HEADERS20 llvm-min-tblgen.cpp21 $<TARGET_OBJECTS:obj.LLVMTableGenBasic>22 23 PARTIAL_SOURCES_INTENDED24 )25 26set(LLVM_LINK_COMPONENTS27 CodeGenTypes28 Support29 )30 31add_tablegen(llvm-tblgen LLVM32 DESTINATION "${LLVM_TOOLS_INSTALL_DIR}"33 EXPORT LLVM34 AsmMatcherEmitter.cpp35 AsmWriterEmitter.cpp36 CallingConvEmitter.cpp37 CodeEmitterGen.cpp38 CodeGenMapTable.cpp39 CompressInstEmitter.cpp40 CTagsEmitter.cpp41 DAGISelEmitter.cpp42 DAGISelMatcherEmitter.cpp43 DAGISelMatcherGen.cpp44 DAGISelMatcherOpt.cpp45 DecoderEmitter.cpp46 DecoderTableEmitter.cpp47 DecoderTree.cpp48 DFAEmitter.cpp49 DFAPacketizerEmitter.cpp50 DisassemblerEmitter.cpp51 DXILEmitter.cpp52 ExegesisEmitter.cpp53 FastISelEmitter.cpp54 GlobalISelCombinerEmitter.cpp55 GlobalISelEmitter.cpp56 InstrDocsEmitter.cpp57 InstrInfoEmitter.cpp58 llvm-tblgen.cpp59 MacroFusionPredicatorEmitter.cpp60 OptionParserEmitter.cpp61 OptionRSTEmitter.cpp62 PseudoLoweringEmitter.cpp63 RegisterBankEmitter.cpp64 RegisterInfoEmitter.cpp65 SDNodeInfoEmitter.cpp66 SearchableTableEmitter.cpp67 SubtargetEmitter.cpp68 WebAssemblyDisassemblerEmitter.cpp69 X86InstrMappingEmitter.cpp70 X86DisassemblerTables.cpp71 X86FoldTablesEmitter.cpp72 X86MnemonicTables.cpp73 X86ModRMFilters.cpp74 X86RecognizableInstr.cpp75 $<TARGET_OBJECTS:obj.LLVMTableGenBasic>76 $<TARGET_OBJECTS:obj.LLVMTableGenCommon>77 78 PARTIAL_SOURCES_INTENDED79 80 DEPENDS81 intrinsics_gen # via llvm-min-tablegen82 )83