1LOCAL_PATH := $(call my-dir)
2
3arm_codegen_TBLGEN_TABLES := \
4  ARMGenRegisterInfo.inc \
5  ARMGenInstrInfo.inc \
6  ARMGenCodeEmitter.inc \
7  ARMGenMCCodeEmitter.inc \
8  ARMGenMCPseudoLowering.inc \
9  ARMGenAsmWriter.inc \
10  ARMGenAsmMatcher.inc \
11  ARMGenDAGISel.inc \
12  ARMGenFastISel.inc \
13  ARMGenCallingConv.inc \
14  ARMGenSubtargetInfo.inc \
15  ARMGenDisassemblerTables.inc
16
17arm_codegen_SRC_FILES := \
18  A15SDOptimizer.cpp \
19  ARMAsmPrinter.cpp \
20  ARMBaseInstrInfo.cpp \
21  ARMBaseRegisterInfo.cpp \
22  ARMCodeEmitter.cpp \
23  ARMConstantIslandPass.cpp \
24  ARMConstantPoolValue.cpp \
25  ARMExpandPseudoInsts.cpp \
26  ARMFastISel.cpp \
27  ARMFrameLowering.cpp \
28  ARMHazardRecognizer.cpp \
29  ARMISelDAGToDAG.cpp \
30  ARMISelLowering.cpp \
31  ARMInstrInfo.cpp \
32  ARMJITInfo.cpp \
33  ARMLoadStoreOptimizer.cpp \
34  ARMMCInstLower.cpp \
35  ARMMachineFunctionInfo.cpp \
36  ARMOptimizeBarriersPass.cpp \
37  ARMRegisterInfo.cpp \
38  ARMSelectionDAGInfo.cpp \
39  ARMSubtarget.cpp \
40  ARMTargetMachine.cpp \
41  ARMTargetObjectFile.cpp \
42  ARMTargetTransformInfo.cpp \
43  MLxExpansionPass.cpp \
44  Thumb1FrameLowering.cpp \
45  Thumb1InstrInfo.cpp \
46  Thumb1RegisterInfo.cpp \
47  Thumb2ITBlockPass.cpp \
48  Thumb2InstrInfo.cpp \
49  Thumb2RegisterInfo.cpp \
50  Thumb2SizeReduction.cpp
51
52# For the host
53# =====================================================
54include $(CLEAR_VARS)
55include $(CLEAR_TBLGEN_VARS)
56
57LOCAL_MODULE:= libLLVMARMCodeGen
58LOCAL_MODULE_TAGS := optional
59
60LOCAL_SRC_FILES := $(arm_codegen_SRC_FILES)
61LOCAL_C_INCLUDES := $(LOCAL_PATH)/MCTargetDesc
62TBLGEN_TABLES := $(arm_codegen_TBLGEN_TABLES)
63
64include $(LLVM_HOST_BUILD_MK)
65include $(LLVM_TBLGEN_RULES_MK)
66include $(LLVM_GEN_INTRINSICS_MK)
67include $(BUILD_HOST_STATIC_LIBRARY)
68
69# For the device only
70# =====================================================
71ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
72include $(CLEAR_VARS)
73include $(CLEAR_TBLGEN_VARS)
74
75LOCAL_MODULE:= libLLVMARMCodeGen
76LOCAL_MODULE_TAGS := optional
77
78LOCAL_SRC_FILES := $(arm_codegen_SRC_FILES)
79LOCAL_C_INCLUDES := $(LOCAL_PATH)/MCTargetDesc
80TBLGEN_TABLES := $(arm_codegen_TBLGEN_TABLES)
81
82include $(LLVM_DEVICE_BUILD_MK)
83include $(LLVM_TBLGEN_RULES_MK)
84include $(LLVM_GEN_INTRINSICS_MK)
85include $(BUILD_STATIC_LIBRARY)
86endif
87