From b86aaa733ce2042447857baf096ccc58b4ec430a Mon Sep 17 00:00:00 2001 From: Tim Murray Date: Wed, 15 Oct 2014 14:05:57 -0700 Subject: [PATCH] add ARM codegen for x86 LLVM if specified bug 17765171 Change-Id: Id1135f5804d2738c7de5c264079e0a61d161f997 --- device/include/llvm/Config/AsmParsers.def | 5 +++++ device/include/llvm/Config/AsmPrinters.def | 5 +++++ device/include/llvm/Config/Disassemblers.def | 5 +++++ device/include/llvm/Config/Targets.def | 5 +++++ shared_llvm.mk | 5 +++++ 5 files changed, 25 insertions(+) diff --git a/device/include/llvm/Config/AsmParsers.def b/device/include/llvm/Config/AsmParsers.def index b2cfbe2b4c0..a0cdc199607 100644 --- a/device/include/llvm/Config/AsmParsers.def +++ b/device/include/llvm/Config/AsmParsers.def @@ -30,6 +30,11 @@ LLVM_ASM_PARSER(Mips) #elif defined(__i386__) || defined(__x86_64__) LLVM_ASM_PARSER(X86) + +#if defined(FORCE_BUILD_ARM) + LLVM_ASM_PARSER(ARM) +#endif + #elif defined(__aarch64__) LLVM_ASM_PARSER(ARM) LLVM_ASM_PARSER(AArch64) diff --git a/device/include/llvm/Config/AsmPrinters.def b/device/include/llvm/Config/AsmPrinters.def index 96e2f56d95d..103c2a5cd8f 100644 --- a/device/include/llvm/Config/AsmPrinters.def +++ b/device/include/llvm/Config/AsmPrinters.def @@ -30,6 +30,11 @@ LLVM_ASM_PRINTER(Mips) #elif defined(__i386__) || defined(__x86_64__) LLVM_ASM_PRINTER(X86) + +#if defined(FORCE_BUILD_ARM) + LLVM_ASM_PRINTER(ARM) +#endif + #elif defined(__aarch64__) LLVM_ASM_PRINTER(ARM) LLVM_ASM_PRINTER(AArch64) diff --git a/device/include/llvm/Config/Disassemblers.def b/device/include/llvm/Config/Disassemblers.def index 0761902802a..2ec382eef38 100644 --- a/device/include/llvm/Config/Disassemblers.def +++ b/device/include/llvm/Config/Disassemblers.def @@ -30,6 +30,11 @@ LLVM_DISASSEMBLER(Mips) #elif defined(__i386__) || defined(__x86_64__) LLVM_DISASSEMBLER(X86) + +#if defined(FORCE_BUILD_ARM) + LLVM_DISASSEMBLER(ARM) +#endif + #elif defined(__aarch64__) LLVM_DISASSEMBLER(ARM) LLVM_DISASSEMBLER(AArch64) diff --git a/device/include/llvm/Config/Targets.def b/device/include/llvm/Config/Targets.def index 014ef146ab7..1b67f95cd44 100644 --- a/device/include/llvm/Config/Targets.def +++ b/device/include/llvm/Config/Targets.def @@ -29,6 +29,11 @@ LLVM_TARGET(Mips) #elif defined(__i386__) || defined(__x86_64__) LLVM_TARGET(X86) + +#if defined(FORCE_BUILD_ARM) + LLVM_TARGET(ARM) +#endif + #elif defined(__aarch64__) LLVM_TARGET(ARM) LLVM_TARGET(AArch64) diff --git a/shared_llvm.mk b/shared_llvm.mk index bd886fe2184..d244a45ed13 100644 --- a/shared_llvm.mk +++ b/shared_llvm.mk @@ -123,6 +123,11 @@ LOCAL_WHOLE_STATIC_LIBRARIES_mips64 += $(llvm_mips_static_libraries) LOCAL_WHOLE_STATIC_LIBRARIES_arm64 += $(llvm_aarch64_static_libraries) LOCAL_WHOLE_STATIC_LIBRARIES_arm64 += $(llvm_arm_static_libraries) +ifeq ($(BUILD_ARM_FOR_X86),true) +LOCAL_WHOLE_STATIC_LIBRARIES_x86 += $(llvm_arm_static_libraries) +LOCAL_WHOLE_STATIC_LIBRARIES_x86_64 += $(llvm_arm_static_libraries) +endif + LOCAL_WHOLE_STATIC_LIBRARIES += $(llvm_post_static_libraries) #LOCAL_LDLIBS := -ldl -lpthread -- 2.11.0