Initial pass at adding X86 target support
Add some Makefile support for using X86 as a target as in "full_x86-eng"
However, this is not enough. More changes will be coming in future
changelists.
Change-Id: Id2765c9ba15404ebce09168738cebf5d00a2e15d
diff --git a/lib/Target/X86/Android.mk b/lib/Target/X86/Android.mk
index f2604cd..8dbca01 100644
--- a/lib/Target/X86/Android.mk
+++ b/lib/Target/X86/Android.mk
@@ -1,44 +1,45 @@
LOCAL_PATH := $(call my-dir)
-# For the host only
+x86_codegen_TBLGEN_TABLES := \
+ X86GenRegisterInfo.h.inc \
+ X86GenRegisterNames.inc \
+ X86GenRegisterInfo.inc \
+ X86GenInstrNames.inc \
+ X86GenInstrInfo.inc \
+ X86GenDAGISel.inc \
+ X86GenFastISel.inc \
+ X86GenSubtarget.inc \
+ X86GenCallingConv.inc
+
+x86_codegen_SRC_FILES := \
+ SSEDomainFix.cpp \
+ X86AsmBackend.cpp \
+ X86COFFMachineModuleInfo.cpp \
+ X86CodeEmitter.cpp \
+ X86ELFWriterInfo.cpp \
+ X86FastISel.cpp \
+ X86FloatingPoint.cpp \
+ X86ISelDAGToDAG.cpp \
+ X86ISelLowering.cpp \
+ X86InstrInfo.cpp \
+ X86JITInfo.cpp \
+ X86MCAsmInfo.cpp \
+ X86MCCodeEmitter.cpp \
+ X86MCInstLower.cpp \
+ X86RegisterInfo.cpp \
+ X86SelectionDAGInfo.cpp \
+ X86Subtarget.cpp \
+ X86TargetMachine.cpp \
+ X86TargetObjectFile.cpp
+
+# For the host
# =====================================================
include $(CLEAR_VARS)
include $(CLEAR_TBLGEN_VARS)
-TBLGEN_TABLES := \
- X86GenRegisterInfo.h.inc \
- X86GenRegisterNames.inc \
- X86GenRegisterInfo.inc \
- X86GenInstrNames.inc \
- X86GenInstrInfo.inc \
- X86GenAsmMatcher.inc \
- X86GenDAGISel.inc \
- X86GenDisassemblerTables.inc \
- X86GenFastISel.inc \
- X86GenCallingConv.inc \
- X86GenSubtarget.inc \
- X86GenEDInfo.inc
+TBLGEN_TABLES := $(x86_codegen_TBLGEN_TABLES)
-LOCAL_SRC_FILES := \
- SSEDomainFix.cpp \
- X86AsmBackend.cpp \
- X86COFFMachineModuleInfo.cpp \
- X86CodeEmitter.cpp \
- X86ELFWriterInfo.cpp \
- X86FastISel.cpp \
- X86FloatingPoint.cpp \
- X86ISelDAGToDAG.cpp \
- X86ISelLowering.cpp \
- X86InstrInfo.cpp \
- X86JITInfo.cpp \
- X86MCAsmInfo.cpp \
- X86MCCodeEmitter.cpp \
- X86MCInstLower.cpp \
- X86RegisterInfo.cpp \
- X86SelectionDAGInfo.cpp \
- X86Subtarget.cpp \
- X86TargetMachine.cpp \
- X86TargetObjectFile.cpp
+LOCAL_SRC_FILES := $(x86_codegen_SRC_FILES)
LOCAL_MODULE:= libLLVMX86CodeGen
@@ -48,3 +49,23 @@
include $(LLVM_TBLGEN_RULES_MK)
include $(LLVM_GEN_INTRINSICS_MK)
include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifeq ($(TARGET_ARCH),x86)
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(x86_codegen_TBLGEN_TABLES)
+
+LOCAL_SRC_FILES := $(x86_codegen_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMX86CodeGen
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif