blob: 3cde43967568b69971b6c64069f217e37e48320c [file] [log] [blame]
Oscar Fuentescdc95492008-09-26 04:40:32 +00001set(LLVM_TARGET_DEFINITIONS ARM.td)
2
Diana Picus8abcbbb2017-05-02 09:40:49 +00003if(LLVM_BUILD_GLOBAL_ISEL)
4 tablegen(LLVM ARMGenRegisterBank.inc -gen-register-bank)
5 tablegen(LLVM ARMGenGlobalISel.inc -gen-global-isel)
6endif()
Daniel Dunbar4a9c6422011-11-04 19:04:23 +00007tablegen(LLVM ARMGenRegisterInfo.inc -gen-register-info)
8tablegen(LLVM ARMGenInstrInfo.inc -gen-instr-info)
Eric Christopher79cc1e32014-09-02 22:28:02 +00009tablegen(LLVM ARMGenMCCodeEmitter.inc -gen-emitter)
Daniel Dunbar4a9c6422011-11-04 19:04:23 +000010tablegen(LLVM ARMGenMCPseudoLowering.inc -gen-pseudo-lowering)
11tablegen(LLVM ARMGenAsmWriter.inc -gen-asm-writer)
12tablegen(LLVM ARMGenAsmMatcher.inc -gen-asm-matcher)
13tablegen(LLVM ARMGenDAGISel.inc -gen-dag-isel)
14tablegen(LLVM ARMGenFastISel.inc -gen-fast-isel)
15tablegen(LLVM ARMGenCallingConv.inc -gen-callingconv)
16tablegen(LLVM ARMGenSubtargetInfo.inc -gen-subtarget)
Daniel Dunbar4a9c6422011-11-04 19:04:23 +000017tablegen(LLVM ARMGenDisassemblerTables.inc -gen-disassembler)
Chandler Carruth97c069c2011-07-26 00:09:08 +000018add_public_tablegen_target(ARMCommonTableGen)
Oscar Fuentescdc95492008-09-26 04:40:32 +000019
Diana Picus22274932016-11-11 08:27:37 +000020# Add GlobalISel files if the user wants to build it.
21set(GLOBAL_ISEL_FILES
22 ARMCallLowering.cpp
23 ARMInstructionSelector.cpp
24 ARMLegalizerInfo.cpp
25 ARMRegisterBankInfo.cpp
26 )
27
28if(LLVM_BUILD_GLOBAL_ISEL)
29 set(GLOBAL_ISEL_BUILD_FILES ${GLOBAL_ISEL_FILES})
30else()
31 set(GLOBAL_ISEL_BUILD_FILES "")
32 set(LLVM_OPTIONAL_SOURCES LLVMGlobalISel ${GLOBAL_ISEL_FILES})
33endif()
34
Oscar Fuentesf3c03b02008-10-22 02:51:53 +000035add_llvm_target(ARMCodeGen
Silviu Baranga82dd6ac2013-03-15 18:28:25 +000036 A15SDOptimizer.cpp
Daniel Dunbar0aff8032010-07-20 00:08:13 +000037 ARMAsmPrinter.cpp
David Goodwinaf7451b2009-07-08 16:09:28 +000038 ARMBaseInstrInfo.cpp
Xerxes Ranbyb0099802009-07-08 20:13:41 +000039 ARMBaseRegisterInfo.cpp
Oscar Fuentescdc95492008-09-26 04:40:32 +000040 ARMConstantIslandPass.cpp
41 ARMConstantPoolValue.cpp
Ted Kremenek50dddc82009-11-07 03:26:59 +000042 ARMExpandPseudoInsts.cpp
Owen Anderson14646cc2010-07-22 06:00:01 +000043 ARMFastISel.cpp
Anton Korobeynikov441ae5b2011-01-10 12:39:23 +000044 ARMFrameLowering.cpp
Evan Cheng62c7b5b2010-12-05 22:04:16 +000045 ARMHazardRecognizer.cpp
Oscar Fuentescdc95492008-09-26 04:40:32 +000046 ARMISelDAGToDAG.cpp
47 ARMISelLowering.cpp
Ted Kremenek187cb4f2009-11-03 04:14:12 +000048 ARMInstrInfo.cpp
Oscar Fuentescdc95492008-09-26 04:40:32 +000049 ARMLoadStoreOptimizer.cpp
Daniel Dunbar0aff8032010-07-20 00:08:13 +000050 ARMMCInstLower.cpp
Chandler Carruthe805b162011-12-20 08:42:11 +000051 ARMMachineFunctionInfo.cpp
Oscar Fuentescdc95492008-09-26 04:40:32 +000052 ARMRegisterInfo.cpp
Renato Golind93295e2014-04-02 09:03:43 +000053 ARMOptimizeBarriersPass.cpp
Daniel Dunbar0aff8032010-07-20 00:08:13 +000054 ARMSelectionDAGInfo.cpp
Oscar Fuentescdc95492008-09-26 04:40:32 +000055 ARMSubtarget.cpp
Oscar Fuentescdc95492008-09-26 04:40:32 +000056 ARMTargetMachine.cpp
Bill Wendling94811812010-03-09 18:31:07 +000057 ARMTargetObjectFile.cpp
Chandler Carruth664e3542013-01-07 01:37:14 +000058 ARMTargetTransformInfo.cpp
NAKAMURA Takumi70fbbf52010-12-05 23:08:57 +000059 MLxExpansionPass.cpp
Anton Korobeynikov441ae5b2011-01-10 12:39:23 +000060 Thumb1FrameLowering.cpp
Ted Kremeneke3e36f82011-09-27 23:29:59 +000061 Thumb1InstrInfo.cpp
Eric Christopherae326492015-03-12 22:48:50 +000062 ThumbRegisterInfo.cpp
Duncan Sands00063492009-07-10 08:31:50 +000063 Thumb2ITBlockPass.cpp
David Goodwinade05a32009-07-02 22:18:33 +000064 Thumb2InstrInfo.cpp
Daniel Dunbar028f6dc2009-08-08 17:03:13 +000065 Thumb2SizeReduction.cpp
Sjoerd Meijer5c0ef832016-07-22 08:39:12 +000066 ARMComputeBlockSize.cpp
Diana Picus22274932016-11-11 08:27:37 +000067 ${GLOBAL_ISEL_BUILD_FILES}
Oscar Fuentescdc95492008-09-26 04:40:32 +000068 )
NAKAMURA Takumide8fda82010-12-29 03:59:27 +000069
Oscar Fuentesba1186c2011-02-20 02:55:27 +000070add_subdirectory(TargetInfo)
71add_subdirectory(AsmParser)
72add_subdirectory(Disassembler)
73add_subdirectory(InstPrinter)
Evan Cheng928ce722011-07-06 22:02:34 +000074add_subdirectory(MCTargetDesc)