From ca95c159402c89aff7dab5a29f3ea3b54c5a77a4 Mon Sep 17 00:00:00 2001
From: Tim Murray <timmurray@google.com>
Date: Thu, 27 Mar 2014 15:10:30 -0700
Subject: [PATCH 4/5] Add Android makefiles for LLVM.

Change-Id: I4f561d517605569e11af40bb191d056d7e7196de
---
 Android.mk                                 |  90 +++++++++++++
 CleanSpec.mk                               |  54 ++++++++
 clear_tblgen_vars.mk                       |   2 +
 lib/Analysis/Android.mk                    |  80 +++++++++++
 lib/Analysis/IPA/Android.mk                |  40 ++++++
 lib/AsmParser/Android.mk                   |  34 +++++
 lib/Bitcode/Reader/Android.mk              |  36 +++++
 lib/Bitcode/Writer/Android.mk              |  37 +++++
 lib/CodeGen/Android.mk                     | 143 ++++++++++++++++++++
 lib/CodeGen/AsmPrinter/Android.mk          |  62 +++++++++
 lib/CodeGen/SelectionDAG/Android.mk        |  56 ++++++++
 lib/ExecutionEngine/Android.mk             |  18 +++
 lib/ExecutionEngine/JIT/Android.mk         |  17 +++
 lib/ExecutionEngine/MCJIT/Android.mk       |  16 +++
 lib/ExecutionEngine/RuntimeDyld/Android.mk |  18 +++
 lib/IR/Android.mk                          |  79 +++++++++++
 lib/IRReader/Android.mk                    |  38 ++++++
 lib/Linker/Android.mk                      |  32 +++++
 lib/MC/Android.mk                          |  78 +++++++++++
 lib/MC/MCDisassembler/Android.mk           |  15 +++
 lib/MC/MCParser/Android.mk                 |  40 ++++++
 lib/Object/Android.mk                      |  45 +++++++
 lib/Option/Android.mk                      |  42 ++++++
 lib/Support/Android.mk                     | 120 +++++++++++++++++
 lib/TableGen/Android.mk                    |  39 ++++++
 lib/Target/AArch64/Android.mk              |  67 ++++++++++
 lib/Target/AArch64/AsmParser/Android.mk    |  63 +++++++++
 lib/Target/AArch64/Disassembler/Android.mk |  55 ++++++++
 lib/Target/AArch64/InstPrinter/Android.mk  |  57 ++++++++
 lib/Target/AArch64/MCTargetDesc/Android.mk |  57 ++++++++
 lib/Target/AArch64/TargetInfo/Android.mk   |  55 ++++++++
 lib/Target/AArch64/Utils/Android.mk        |  36 +++++
 lib/Target/ARM/Android.mk                  |  87 ++++++++++++
 lib/Target/ARM/AsmParser/Android.mk        |  63 +++++++++
 lib/Target/ARM/Disassembler/Android.mk     |  55 ++++++++
 lib/Target/ARM/InstPrinter/Android.mk      |  57 ++++++++
 lib/Target/ARM/MCTargetDesc/Android.mk     |  61 +++++++++
 lib/Target/ARM/TargetInfo/Android.mk       |  55 ++++++++
 lib/Target/Android.mk                      |  39 ++++++
 lib/Target/Mips/Android.mk                 |  85 ++++++++++++
 lib/Target/Mips/AsmParser/Android.mk       |  56 ++++++++
 lib/Target/Mips/Disassembler/Android.mk    |  48 +++++++
 lib/Target/Mips/InstPrinter/Android.mk     |  48 +++++++
 lib/Target/Mips/MCTargetDesc/Android.mk    |  58 ++++++++
 lib/Target/Mips/TargetInfo/Android.mk      |  47 +++++++
 lib/Target/X86/Android.mk                  |  72 ++++++++++
 lib/Target/X86/AsmParser/Android.mk        |  59 ++++++++
 lib/Target/X86/Disassembler/Android.mk     |  56 ++++++++
 lib/Target/X86/InstPrinter/Android.mk      |  57 ++++++++
 lib/Target/X86/MCTargetDesc/Android.mk     |  56 ++++++++
 lib/Target/X86/TargetInfo/Android.mk       |  55 ++++++++
 lib/Target/X86/Utils/Android.mk            |  36 +++++
 lib/Transforms/IPO/Android.mk              |  52 ++++++++
 lib/Transforms/InstCombine/Android.mk      |  44 ++++++
 lib/Transforms/Instrumentation/Android.mk  |  37 +++++
 lib/Transforms/ObjCARC/Android.mk          |  40 ++++++
 lib/Transforms/Scalar/Android.mk           |  73 ++++++++++
 lib/Transforms/Utils/Android.mk            |  66 +++++++++
 lib/Transforms/Vectorize/Android.mk        |  35 +++++
 llvm-device-build.mk                       |  79 +++++++++++
 llvm-gen-intrinsics.mk                     |  19 +++
 llvm-host-build.mk                         |  64 +++++++++
 llvm-tblgen-rules.mk                       | 208 +++++++++++++++++++++++++++++
 llvm.mk                                    |  11 ++
 shared_llvm.mk                             | 137 +++++++++++++++++++
 tools/llc/Android.mk                       | 136 +++++++++++++++++++
 tools/llvm-as/Android.mk                   |  28 ++++
 tools/llvm-dis/Android.mk                  |  25 ++++
 tools/llvm-link/Android.mk                 |  50 +++++++
 tools/opt/Android.mk                       |  81 +++++++++++
 utils/FileCheck/Android.mk                 |  23 ++++
 utils/TableGen/Android.mk                  |  58 ++++++++
 72 files changed, 4037 insertions(+)
 create mode 100644 Android.mk
 create mode 100644 CleanSpec.mk
 create mode 100644 clear_tblgen_vars.mk
 create mode 100644 lib/Analysis/Android.mk
 create mode 100644 lib/Analysis/IPA/Android.mk
 create mode 100644 lib/AsmParser/Android.mk
 create mode 100644 lib/Bitcode/Reader/Android.mk
 create mode 100644 lib/Bitcode/Writer/Android.mk
 create mode 100644 lib/CodeGen/Android.mk
 create mode 100644 lib/CodeGen/AsmPrinter/Android.mk
 create mode 100644 lib/CodeGen/SelectionDAG/Android.mk
 create mode 100644 lib/ExecutionEngine/Android.mk
 create mode 100644 lib/ExecutionEngine/JIT/Android.mk
 create mode 100644 lib/ExecutionEngine/MCJIT/Android.mk
 create mode 100644 lib/ExecutionEngine/RuntimeDyld/Android.mk
 create mode 100644 lib/IR/Android.mk
 create mode 100644 lib/IRReader/Android.mk
 create mode 100644 lib/Linker/Android.mk
 create mode 100644 lib/MC/Android.mk
 create mode 100644 lib/MC/MCDisassembler/Android.mk
 create mode 100644 lib/MC/MCParser/Android.mk
 create mode 100644 lib/Object/Android.mk
 create mode 100644 lib/Option/Android.mk
 create mode 100644 lib/Support/Android.mk
 create mode 100644 lib/TableGen/Android.mk
 create mode 100644 lib/Target/AArch64/Android.mk
 create mode 100644 lib/Target/AArch64/AsmParser/Android.mk
 create mode 100644 lib/Target/AArch64/Disassembler/Android.mk
 create mode 100644 lib/Target/AArch64/InstPrinter/Android.mk
 create mode 100644 lib/Target/AArch64/MCTargetDesc/Android.mk
 create mode 100644 lib/Target/AArch64/TargetInfo/Android.mk
 create mode 100644 lib/Target/AArch64/Utils/Android.mk
 create mode 100644 lib/Target/ARM/Android.mk
 create mode 100644 lib/Target/ARM/AsmParser/Android.mk
 create mode 100644 lib/Target/ARM/Disassembler/Android.mk
 create mode 100644 lib/Target/ARM/InstPrinter/Android.mk
 create mode 100644 lib/Target/ARM/MCTargetDesc/Android.mk
 create mode 100644 lib/Target/ARM/TargetInfo/Android.mk
 create mode 100644 lib/Target/Android.mk
 create mode 100644 lib/Target/Mips/Android.mk
 create mode 100644 lib/Target/Mips/AsmParser/Android.mk
 create mode 100644 lib/Target/Mips/Disassembler/Android.mk
 create mode 100644 lib/Target/Mips/InstPrinter/Android.mk
 create mode 100644 lib/Target/Mips/MCTargetDesc/Android.mk
 create mode 100644 lib/Target/Mips/TargetInfo/Android.mk
 create mode 100644 lib/Target/X86/Android.mk
 create mode 100644 lib/Target/X86/AsmParser/Android.mk
 create mode 100644 lib/Target/X86/Disassembler/Android.mk
 create mode 100644 lib/Target/X86/InstPrinter/Android.mk
 create mode 100644 lib/Target/X86/MCTargetDesc/Android.mk
 create mode 100644 lib/Target/X86/TargetInfo/Android.mk
 create mode 100644 lib/Target/X86/Utils/Android.mk
 create mode 100644 lib/Transforms/IPO/Android.mk
 create mode 100644 lib/Transforms/InstCombine/Android.mk
 create mode 100644 lib/Transforms/Instrumentation/Android.mk
 create mode 100644 lib/Transforms/ObjCARC/Android.mk
 create mode 100644 lib/Transforms/Scalar/Android.mk
 create mode 100644 lib/Transforms/Utils/Android.mk
 create mode 100644 lib/Transforms/Vectorize/Android.mk
 create mode 100644 llvm-device-build.mk
 create mode 100644 llvm-gen-intrinsics.mk
 create mode 100644 llvm-host-build.mk
 create mode 100644 llvm-tblgen-rules.mk
 create mode 100644 llvm.mk
 create mode 100644 shared_llvm.mk
 create mode 100644 tools/llc/Android.mk
 create mode 100644 tools/llvm-as/Android.mk
 create mode 100644 tools/llvm-dis/Android.mk
 create mode 100644 tools/llvm-link/Android.mk
 create mode 100644 tools/opt/Android.mk
 create mode 100644 utils/FileCheck/Android.mk
 create mode 100644 utils/TableGen/Android.mk

diff --git a/Android.mk b/Android.mk
new file mode 100644
index 0000000..9f6e8a5
--- /dev/null
+++ b/Android.mk
@@ -0,0 +1,90 @@
+LOCAL_PATH := $(call my-dir)
+LLVM_ROOT_PATH := $(LOCAL_PATH)
+LLVM_ENABLE_ASSERTION := false
+
+include $(CLEAR_VARS)
+
+# LLVM Libraries
+subdirs := \
+  lib/Analysis \
+  lib/Analysis/IPA \
+  lib/AsmParser \
+  lib/Bitcode/Reader \
+  lib/Bitcode/Writer \
+  lib/ExecutionEngine \
+  lib/ExecutionEngine/RuntimeDyld \
+  lib/ExecutionEngine/JIT \
+  lib/ExecutionEngine/MCJIT \
+  lib/CodeGen \
+  lib/CodeGen/AsmPrinter \
+  lib/CodeGen/SelectionDAG \
+  lib/IR \
+  lib/IRReader \
+  lib/Linker \
+  lib/MC \
+  lib/MC/MCDisassembler \
+  lib/MC/MCParser \
+  lib/Object \
+  lib/Option \
+  lib/Support \
+  lib/TableGen \
+  lib/Target \
+  lib/Transforms/IPO \
+  lib/Transforms/InstCombine \
+  lib/Transforms/Instrumentation \
+  lib/Transforms/ObjCARC \
+  lib/Transforms/Scalar \
+  lib/Transforms/Utils \
+  lib/Transforms/Vectorize \
+  utils/FileCheck \
+  utils/TableGen
+
+# ARM Code Generation Libraries
+subdirs += \
+  lib/Target/ARM \
+  lib/Target/ARM/AsmParser \
+  lib/Target/ARM/InstPrinter \
+  lib/Target/ARM/Disassembler \
+  lib/Target/ARM/MCTargetDesc \
+  lib/Target/ARM/TargetInfo
+
+# ARM64 Code Generation Libraries
+subdirs += \
+  lib/Target/AArch64  \
+  lib/Target/AArch64/AsmParser \
+  lib/Target/AArch64/InstPrinter \
+  lib/Target/AArch64/Disassembler \
+  lib/Target/AArch64/MCTargetDesc \
+  lib/Target/AArch64/TargetInfo \
+  lib/Target/AArch64/Utils
+
+# MIPS Code Generation Libraries
+subdirs += \
+  lib/Target/Mips \
+  lib/Target/Mips/AsmParser \
+  lib/Target/Mips/InstPrinter \
+  lib/Target/Mips/Disassembler \
+  lib/Target/Mips/MCTargetDesc \
+  lib/Target/Mips/TargetInfo
+
+# X86 Code Generation Libraries
+subdirs += \
+  lib/Target/X86 \
+  lib/Target/X86/AsmParser \
+  lib/Target/X86/InstPrinter \
+  lib/Target/X86/Disassembler \
+  lib/Target/X86/MCTargetDesc \
+  lib/Target/X86/TargetInfo \
+  lib/Target/X86/Utils
+
+# LLVM Command Line Tools
+subdirs += tools/llc
+subdirs += tools/llvm-as
+subdirs += tools/llvm-dis
+subdirs += tools/llvm-link
+#subdirs += tools/opt
+
+include $(LOCAL_PATH)/llvm.mk
+include $(LOCAL_PATH)/shared_llvm.mk
+
+include $(addprefix $(LOCAL_PATH)/,$(addsuffix /Android.mk, $(subdirs)))
diff --git a/CleanSpec.mk b/CleanSpec.mk
new file mode 100644
index 0000000..f756f04
--- /dev/null
+++ b/CleanSpec.mk
@@ -0,0 +1,54 @@
+# Copyright (C) 2007 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# If you don't need to do a full clean build but would like to touch
+# a file or delete some intermediate files, add a clean step to the end
+# of the list.  These steps will only be run once, if they haven't been
+# run before.
+#
+# E.g.:
+#     $(call add-clean-step, touch -c external/sqlite/sqlite3.h)
+#     $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libz_intermediates)
+#
+# Always use "touch -c" and "rm -f" or "rm -rf" to gracefully deal with
+# files that are missing or have been moved.
+#
+# Use $(PRODUCT_OUT) to get to the "out/target/product/blah/" directory.
+# Use $(OUT_DIR) to refer to the "out" directory.
+#
+# If you need to re-do something that's already mentioned, just copy
+# the command and add it to the bottom of the list.  E.g., if a change
+# that you made last week required touching a file and a change you
+# made today requires touching the same file, just copy the old
+# touch step and add it to the end of the list.
+#
+# ************************************************
+# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
+# ************************************************
+
+# For example:
+#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/AndroidTests_intermediates)
+#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates)
+#$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f)
+#$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*)
+
+# ************************************************
+# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
+# ************************************************
+$(call add-clean-step, rm -rf $(OUT_DIR)/target/product/stingray/obj/STATIC_LIBRARIES/libLLVM*)
+$(call add-clean-step, rm -rf $(OUT_DIR)/target/product/stingray/obj/STATIC_LIBRARIES/libLLVMARMCodeGen_intermediates*)
+$(call add-clean-step, rm -rf $(OUT_DIR)/host/$(HOST_PREBUILT_TAG)/obj/STATIC_LIBRARIES/libLLVMARM*)
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libLLVMARM*)
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/EXECUTABLES/app_process__asan_intermediates*)
diff --git a/clear_tblgen_vars.mk b/clear_tblgen_vars.mk
new file mode 100644
index 0000000..6c9623e
--- /dev/null
+++ b/clear_tblgen_vars.mk
@@ -0,0 +1,2 @@
+TBLGEN_TABLES :=
+TBLGEN_TD_DIR :=
diff --git a/lib/Analysis/Android.mk b/lib/Analysis/Android.mk
new file mode 100644
index 0000000..76eee74
--- /dev/null
+++ b/lib/Analysis/Android.mk
@@ -0,0 +1,80 @@
+LOCAL_PATH:= $(call my-dir)
+
+analysis_SRC_FILES := \
+  AliasAnalysis.cpp \
+  AliasAnalysisCounter.cpp \
+  AliasAnalysisEvaluator.cpp \
+  AliasDebugger.cpp \
+  AliasSetTracker.cpp \
+  Analysis.cpp \
+  BasicAliasAnalysis.cpp \
+  BlockFrequencyInfo.cpp \
+  BranchProbabilityInfo.cpp \
+  CFG.cpp \
+  CFGPrinter.cpp \
+  CaptureTracking.cpp \
+  CodeMetrics.cpp \
+  ConstantFolding.cpp \
+  CostModel.cpp \
+  Delinearization.cpp \
+  DependenceAnalysis.cpp \
+  DomPrinter.cpp \
+  DominanceFrontier.cpp \
+  IVUsers.cpp \
+  InstCount.cpp \
+  InstructionSimplify.cpp \
+  Interval.cpp \
+  IntervalPartition.cpp \
+  LazyValueInfo.cpp \
+  LibCallAliasAnalysis.cpp \
+  LibCallSemantics.cpp \
+  Lint.cpp \
+  Loads.cpp \
+  LoopInfo.cpp \
+  LoopPass.cpp \
+  MemDepPrinter.cpp \
+  MemoryBuiltins.cpp \
+  MemoryDependenceAnalysis.cpp \
+  ModuleDebugInfoPrinter.cpp \
+  NoAliasAnalysis.cpp \
+  PHITransAddr.cpp \
+  PostDominators.cpp \
+  PtrUseVisitor.cpp \
+  RegionInfo.cpp \
+  RegionPass.cpp \
+  RegionPrinter.cpp \
+  ScalarEvolution.cpp \
+  ScalarEvolutionAliasAnalysis.cpp \
+  ScalarEvolutionExpander.cpp \
+  ScalarEvolutionNormalization.cpp \
+  SparsePropagation.cpp \
+  TargetTransformInfo.cpp \
+  Trace.cpp \
+  TypeBasedAliasAnalysis.cpp \
+  ValueTracking.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE:= libLLVMAnalysis
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(analysis_SRC_FILES)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_MODULE:= libLLVMAnalysis
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(analysis_SRC_FILES)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Analysis/IPA/Android.mk b/lib/Analysis/IPA/Android.mk
new file mode 100644
index 0000000..d56d931
--- /dev/null
+++ b/lib/Analysis/IPA/Android.mk
@@ -0,0 +1,40 @@
+LOCAL_PATH:= $(call my-dir)
+
+analysis_ipa_SRC_FILES := \
+  CallGraph.cpp \
+  CallGraphSCCPass.cpp \
+  CallPrinter.cpp \
+  FindUsedTypes.cpp \
+  GlobalsModRef.cpp \
+  IPA.cpp \
+  InlineCost.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(analysis_ipa_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMipa
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(analysis_ipa_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMipa
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/AsmParser/Android.mk b/lib/AsmParser/Android.mk
new file mode 100644
index 0000000..7bd29a7
--- /dev/null
+++ b/lib/AsmParser/Android.mk
@@ -0,0 +1,34 @@
+LOCAL_PATH:= $(call my-dir)
+
+asm_parser_SRC_FILES := \
+  LLLexer.cpp \
+  LLParser.cpp \
+  Parser.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(asm_parser_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMAsmParser
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LOCAL_PATH)/../../llvm-host-build.mk
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(asm_parser_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMAsmParser
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LOCAL_PATH)/../../llvm-device-build.mk
+include $(BUILD_STATIC_LIBRARY)
+endif
\ No newline at end of file
diff --git a/lib/Bitcode/Reader/Android.mk b/lib/Bitcode/Reader/Android.mk
new file mode 100644
index 0000000..3bdcdda
--- /dev/null
+++ b/lib/Bitcode/Reader/Android.mk
@@ -0,0 +1,36 @@
+LOCAL_PATH:= $(call my-dir)
+
+bitcode_reader_SRC_FILES := \
+	BitReader.cpp	\
+	BitcodeReader.cpp \
+	BitstreamReader.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(bitcode_reader_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMBitReader
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+include $(CLEAR_VARS)
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+
+LOCAL_SRC_FILES := $(bitcode_reader_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMBitReader
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Bitcode/Writer/Android.mk b/lib/Bitcode/Writer/Android.mk
new file mode 100644
index 0000000..6aa208c
--- /dev/null
+++ b/lib/Bitcode/Writer/Android.mk
@@ -0,0 +1,37 @@
+LOCAL_PATH:= $(call my-dir)
+
+bitcode_writer_SRC_FILES := \
+	BitWriter.cpp	\
+	BitcodeWriter.cpp	\
+	BitcodeWriterPass.cpp	\
+	ValueEnumerator.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(bitcode_writer_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMBitWriter
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+include $(CLEAR_VARS)
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+
+LOCAL_SRC_FILES := $(bitcode_writer_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMBitWriter
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/CodeGen/Android.mk b/lib/CodeGen/Android.mk
new file mode 100644
index 0000000..26f04d0
--- /dev/null
+++ b/lib/CodeGen/Android.mk
@@ -0,0 +1,143 @@
+LOCAL_PATH:= $(call my-dir)
+
+codegen_SRC_FILES := \
+  AggressiveAntiDepBreaker.cpp \
+  AllocationOrder.cpp \
+  Analysis.cpp \
+  BasicTargetTransformInfo.cpp \
+  BranchFolding.cpp \
+  CalcSpillWeights.cpp \
+  CallingConvLower.cpp \
+  CodeGen.cpp \
+  CodeGenPrepare.cpp \
+  CriticalAntiDepBreaker.cpp \
+  DeadMachineInstructionElim.cpp \
+  DFAPacketizer.cpp \
+  DwarfEHPrepare.cpp \
+  EarlyIfConversion.cpp \
+  EdgeBundles.cpp \
+  ErlangGC.cpp \
+  ExecutionDepsFix.cpp \
+  ExpandISelPseudos.cpp \
+  ExpandPostRAPseudos.cpp \
+  GCMetadata.cpp \
+  GCMetadataPrinter.cpp \
+  GCStrategy.cpp \
+  IfConversion.cpp \
+  InlineSpiller.cpp \
+  InterferenceCache.cpp \
+  IntrinsicLowering.cpp \
+  JITCodeEmitter.cpp \
+  LatencyPriorityQueue.cpp \
+  LexicalScopes.cpp \
+  LiveDebugVariables.cpp \
+  LiveIntervalAnalysis.cpp \
+  LiveInterval.cpp \
+  LiveIntervalUnion.cpp \
+  LivePhysRegs.cpp \
+  LiveRangeCalc.cpp \
+  LiveRangeEdit.cpp \
+  LiveRegMatrix.cpp \
+  LiveStackAnalysis.cpp \
+  LiveVariables.cpp \
+  LLVMTargetMachine.cpp \
+  LocalStackSlotAllocation.cpp \
+  MachineBasicBlock.cpp \
+  MachineBlockFrequencyInfo.cpp \
+  MachineBlockPlacement.cpp \
+  MachineBranchProbabilityInfo.cpp \
+  MachineCodeEmitter.cpp \
+  MachineCopyPropagation.cpp \
+  MachineCSE.cpp \
+  MachineDominators.cpp \
+  MachineFunctionAnalysis.cpp \
+  MachineFunction.cpp \
+  MachineFunctionPass.cpp \
+  MachineFunctionPrinterPass.cpp \
+  MachineInstrBundle.cpp \
+  MachineInstr.cpp \
+  MachineLICM.cpp \
+  MachineLoopInfo.cpp \
+  MachineModuleInfo.cpp \
+  MachineModuleInfoImpls.cpp \
+  MachinePassRegistry.cpp \
+  MachinePostDominators.cpp \
+  MachineRegisterInfo.cpp \
+  MachineScheduler.cpp \
+  MachineSink.cpp \
+  MachineSSAUpdater.cpp \
+  MachineTraceMetrics.cpp \
+  MachineVerifier.cpp \
+  OcamlGC.cpp \
+  OptimizePHIs.cpp \
+  Passes.cpp \
+  PeepholeOptimizer.cpp \
+  PHIElimination.cpp \
+  PHIEliminationUtils.cpp \
+  PostRASchedulerList.cpp \
+  ProcessImplicitDefs.cpp \
+  PrologEpilogInserter.cpp \
+  PseudoSourceValue.cpp \
+  RegAllocBase.cpp \
+  RegAllocBasic.cpp \
+  RegAllocFast.cpp \
+  RegAllocGreedy.cpp \
+  RegAllocPBQP.cpp \
+  RegisterClassInfo.cpp \
+  RegisterCoalescer.cpp \
+  RegisterPressure.cpp \
+  RegisterScavenging.cpp \
+  ScheduleDAG.cpp \
+  ScheduleDAGInstrs.cpp \
+  ScheduleDAGPrinter.cpp \
+  ScoreboardHazardRecognizer.cpp \
+  ShadowStackGC.cpp \
+  SjLjEHPrepare.cpp \
+  SlotIndexes.cpp \
+  Spiller.cpp \
+  SpillPlacement.cpp \
+  SplitKit.cpp \
+  StackColoring.cpp \
+  StackMapLivenessAnalysis.cpp \
+  StackMaps.cpp \
+  StackProtector.cpp \
+  StackSlotColoring.cpp \
+  TailDuplication.cpp \
+  TargetFrameLoweringImpl.cpp \
+  TargetInstrInfo.cpp \
+  TargetLoweringBase.cpp \
+  TargetLoweringObjectFileImpl.cpp \
+  TargetOptionsImpl.cpp \
+  TargetRegisterInfo.cpp \
+  TargetSchedule.cpp \
+  TwoAddressInstructionPass.cpp \
+  UnreachableBlockElim.cpp \
+  VirtRegMap.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(codegen_SRC_FILES)
+LOCAL_MODULE:= libLLVMCodeGen
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(codegen_SRC_FILES)
+LOCAL_MODULE:= libLLVMCodeGen
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/CodeGen/AsmPrinter/Android.mk b/lib/CodeGen/AsmPrinter/Android.mk
new file mode 100644
index 0000000..1e403ee
--- /dev/null
+++ b/lib/CodeGen/AsmPrinter/Android.mk
@@ -0,0 +1,62 @@
+LOCAL_PATH := $(call my-dir)
+
+codegen_asmprinter_SRC_FILES := \
+  AsmPrinter.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES :=	\
+	AsmPrinter.cpp	\
+	AsmPrinterDwarf.cpp	\
+	AsmPrinterInlineAsm.cpp	\
+	ARMException.cpp	\
+	DIE.cpp	\
+	DIEHash.cpp \
+	DwarfAccelTable.cpp \
+	DwarfCFIException.cpp \
+	DwarfDebug.cpp	\
+	DwarfException.cpp	\
+	DwarfUnit.cpp \
+	ErlangGCPrinter.cpp \
+	OcamlGCPrinter.cpp \
+	Win64Exception.cpp \
+	WinCodeViewLineTables.cpp
+
+LOCAL_MODULE:= libLLVMAsmPrinter
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES :=	\
+	AsmPrinter.cpp \
+	AsmPrinterDwarf.cpp \
+	AsmPrinterInlineAsm.cpp \
+	ARMException.cpp        \
+	DIE.cpp \
+	DIEHash.cpp \
+	DwarfAccelTable.cpp \
+	DwarfCFIException.cpp \
+	DwarfDebug.cpp  \
+	DwarfException.cpp      \
+	ErlangGCPrinter.cpp \
+	Win64Exception.cpp \
+	$(LOCAL_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMAsmPrinter
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/CodeGen/SelectionDAG/Android.mk b/lib/CodeGen/SelectionDAG/Android.mk
new file mode 100644
index 0000000..0e52ee3
--- /dev/null
+++ b/lib/CodeGen/SelectionDAG/Android.mk
@@ -0,0 +1,56 @@
+LOCAL_PATH:= $(call my-dir)
+
+codegen_selectiondag_SRC_FILES := \
+  DAGCombiner.cpp \
+  FastISel.cpp \
+  FunctionLoweringInfo.cpp \
+  InstrEmitter.cpp \
+  LegalizeDAG.cpp \
+  LegalizeFloatTypes.cpp \
+  LegalizeIntegerTypes.cpp \
+  LegalizeTypes.cpp \
+  LegalizeTypesGeneric.cpp \
+  LegalizeVectorOps.cpp \
+  LegalizeVectorTypes.cpp \
+  ResourcePriorityQueue.cpp \
+  ScheduleDAGFast.cpp \
+  ScheduleDAGRRList.cpp \
+  ScheduleDAGSDNodes.cpp \
+  ScheduleDAGVLIW.cpp \
+  SelectionDAG.cpp \
+  SelectionDAGBuilder.cpp \
+  SelectionDAGDumper.cpp \
+  SelectionDAGISel.cpp \
+  SelectionDAGPrinter.cpp \
+  TargetLowering.cpp \
+  TargetSelectionDAGInfo.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(codegen_selectiondag_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMSelectionDAG
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(codegen_selectiondag_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMSelectionDAG
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/ExecutionEngine/Android.mk b/lib/ExecutionEngine/Android.mk
new file mode 100644
index 0000000..9f1befd
--- /dev/null
+++ b/lib/ExecutionEngine/Android.mk
@@ -0,0 +1,18 @@
+LOCAL_PATH:= $(call my-dir)
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+	ExecutionEngineBindings.cpp \
+	ExecutionEngine.cpp \
+	RTDyldMemoryManager.cpp \
+	TargetSelect.cpp
+
+LOCAL_MODULE:= libLLVMExecutionEngine
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
diff --git a/lib/ExecutionEngine/JIT/Android.mk b/lib/ExecutionEngine/JIT/Android.mk
new file mode 100644
index 0000000..0466ba0
--- /dev/null
+++ b/lib/ExecutionEngine/JIT/Android.mk
@@ -0,0 +1,17 @@
+LOCAL_PATH:= $(call my-dir)
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES :=	\
+	JIT.cpp	\
+	JITEmitter.cpp	\
+	JITMemoryManager.cpp
+
+LOCAL_MODULE:= libLLVMJIT
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
diff --git a/lib/ExecutionEngine/MCJIT/Android.mk b/lib/ExecutionEngine/MCJIT/Android.mk
new file mode 100644
index 0000000..0314958
--- /dev/null
+++ b/lib/ExecutionEngine/MCJIT/Android.mk
@@ -0,0 +1,16 @@
+LOCAL_PATH:= $(call my-dir)
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES :=	\
+	MCJIT.cpp \
+	SectionMemoryManager.cpp
+
+LOCAL_MODULE:= libLLVMMCJIT
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
diff --git a/lib/ExecutionEngine/RuntimeDyld/Android.mk b/lib/ExecutionEngine/RuntimeDyld/Android.mk
new file mode 100644
index 0000000..e98e80a
--- /dev/null
+++ b/lib/ExecutionEngine/RuntimeDyld/Android.mk
@@ -0,0 +1,18 @@
+LOCAL_PATH:= $(call my-dir)
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES :=	\
+	GDBRegistrar.cpp \
+	RuntimeDyld.cpp \
+	RuntimeDyldELF.cpp \
+	RuntimeDyldMachO.cpp
+
+LOCAL_MODULE:= libLLVMRuntimeDyld
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
diff --git a/lib/IR/Android.mk b/lib/IR/Android.mk
new file mode 100644
index 0000000..071bb04
--- /dev/null
+++ b/lib/IR/Android.mk
@@ -0,0 +1,79 @@
+LOCAL_PATH:= $(call my-dir)
+
+vmcore_SRC_FILES := \
+  AsmWriter.cpp \
+  Attributes.cpp \
+  AutoUpgrade.cpp \
+  BasicBlock.cpp \
+  ConstantFold.cpp \
+  ConstantRange.cpp \
+  Constants.cpp \
+  Core.cpp \
+  DataLayout.cpp \
+  DebugInfo.cpp \
+  DebugLoc.cpp \
+  DiagnosticInfo.cpp \
+  DiagnosticPrinter.cpp \
+  DIBuilder.cpp \
+  Dominators.cpp \
+  Function.cpp \
+  GVMaterializer.cpp \
+  Globals.cpp \
+  IRBuilder.cpp \
+  IRPrintingPasses.cpp \
+  InlineAsm.cpp \
+  Instruction.cpp \
+  Instructions.cpp \
+  IntrinsicInst.cpp \
+  LLVMContext.cpp \
+  LLVMContextImpl.cpp \
+  LeakDetector.cpp \
+  LegacyPassManager.cpp \
+  Mangler.cpp \
+  Metadata.cpp \
+  Module.cpp \
+  Pass.cpp \
+  PassManager.cpp \
+  PassRegistry.cpp \
+  Type.cpp \
+  TypeFinder.cpp \
+  Use.cpp \
+  User.cpp \
+  Value.cpp \
+  ValueSymbolTable.cpp \
+  ValueTypes.cpp \
+  Verifier.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+REQUIRES_RTTI := 1
+
+LOCAL_SRC_FILES := $(vmcore_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMCore
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+include $(CLEAR_VARS)
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+
+REQUIRES_RTTI := 1
+
+LOCAL_SRC_FILES := $(vmcore_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMCore
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/IRReader/Android.mk b/lib/IRReader/Android.mk
new file mode 100644
index 0000000..d620521
--- /dev/null
+++ b/lib/IRReader/Android.mk
@@ -0,0 +1,38 @@
+LOCAL_PATH:= $(call my-dir)
+
+irreader_SRC_FILES := \
+  IRReader.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+REQUIRES_RTTI := 1
+
+LOCAL_SRC_FILES := $(irreader_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMIRReader
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+REQUIRES_RTTI := 1
+
+LOCAL_SRC_FILES := $(irreader_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMIRReader
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
\ No newline at end of file
diff --git a/lib/Linker/Android.mk b/lib/Linker/Android.mk
new file mode 100644
index 0000000..161b2ae
--- /dev/null
+++ b/lib/Linker/Android.mk
@@ -0,0 +1,32 @@
+LOCAL_PATH:= $(call my-dir)
+
+linker_SRC_FILES := \
+  LinkModules.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_SRC_FILES := $(linker_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMLinker
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(linker_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMLinker
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/MC/Android.mk b/lib/MC/Android.mk
new file mode 100644
index 0000000..abf346b
--- /dev/null
+++ b/lib/MC/Android.mk
@@ -0,0 +1,78 @@
+LOCAL_PATH:= $(call my-dir)
+
+mc_SRC_FILES := \
+  ELFObjectWriter.cpp \
+  MachObjectWriter.cpp \
+  MCAsmBackend.cpp \
+  MCAsmInfo.cpp \
+  MCAsmInfoCOFF.cpp \
+  MCAsmInfoDarwin.cpp \
+  MCAsmInfoELF.cpp \
+  MCAsmStreamer.cpp \
+  MCAssembler.cpp \
+  MCCodeEmitter.cpp \
+  MCCodeGenInfo.cpp \
+  MCContext.cpp \
+  MCDisassembler.cpp \
+  MCDwarf.cpp \
+  MCELF.cpp \
+  MCELFObjectTargetWriter.cpp \
+  MCELFStreamer.cpp \
+  MCExpr.cpp \
+  MCExternalSymbolizer.cpp \
+  MCFixup.cpp \
+  MCInst.cpp \
+  MCInstPrinter.cpp \
+  MCInstrAnalysis.cpp \
+  MCLabel.cpp \
+  MCLinkerOptimizationHint.cpp \
+  MCMachObjectTargetWriter.cpp \
+  MCMachOStreamer.cpp \
+  MCNullStreamer.cpp \
+  MCObjectFileInfo.cpp \
+  MCObjectStreamer.cpp \
+  MCObjectWriter.cpp \
+  MCRegisterInfo.cpp \
+  MCRelocationInfo.cpp \
+  MCSection.cpp \
+  MCSectionCOFF.cpp	\
+  MCSectionELF.cpp \
+  MCSectionMachO.cpp \
+  MCStreamer.cpp \
+  MCSubtargetInfo.cpp \
+  MCSymbol.cpp \
+  MCSymbolizer.cpp \
+  MCValue.cpp \
+  MCWin64EH.cpp \
+  WinCOFFObjectWriter.cpp \
+  WinCOFFStreamer.cpp \
+  SubtargetFeature.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(mc_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMMC
+
+LOCAL_MODULE_TAGS := optional
+
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+include $(CLEAR_VARS)
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+
+LOCAL_SRC_FILES := $(mc_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMMC
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/MC/MCDisassembler/Android.mk b/lib/MC/MCDisassembler/Android.mk
new file mode 100644
index 0000000..7f73df3
--- /dev/null
+++ b/lib/MC/MCDisassembler/Android.mk
@@ -0,0 +1,15 @@
+LOCAL_PATH:= $(call my-dir)
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES :=	\
+	Disassembler.cpp
+
+LOCAL_MODULE:= libLLVMMCDisassembler
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
diff --git a/lib/MC/MCParser/Android.mk b/lib/MC/MCParser/Android.mk
new file mode 100644
index 0000000..505a12b
--- /dev/null
+++ b/lib/MC/MCParser/Android.mk
@@ -0,0 +1,40 @@
+LOCAL_PATH:= $(call my-dir)
+
+mc_parser_SRC_FILES := \
+  AsmLexer.cpp \
+  AsmParser.cpp \
+  COFFAsmParser.cpp \
+  DarwinAsmParser.cpp \
+  ELFAsmParser.cpp \
+  MCAsmLexer.cpp \
+  MCAsmParser.cpp \
+  MCAsmParserExtension.cpp \
+  MCTargetAsmParser.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(mc_parser_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMMCParser
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+include $(CLEAR_VARS)
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+
+LOCAL_SRC_FILES := $(mc_parser_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMMCParser
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Object/Android.mk b/lib/Object/Android.mk
new file mode 100644
index 0000000..7dfa44f
--- /dev/null
+++ b/lib/Object/Android.mk
@@ -0,0 +1,45 @@
+LOCAL_PATH := $(call my-dir)
+
+object_SRC_FILES := \
+  Archive.cpp \
+  Binary.cpp \
+  COFFObjectFile.cpp \
+  ELF.cpp \
+  ELFObjectFile.cpp \
+  Error.cpp \
+  IRObjectFile.cpp \
+  MachOObjectFile.cpp \
+  MachOUniversal.cpp \
+  Object.cpp \
+  ObjectFile.cpp \
+  SymbolicFile.cpp
+
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMObject
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(object_SRC_FILES)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_MODULE:= libLLVMObject
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(object_SRC_FILES)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Option/Android.mk b/lib/Option/Android.mk
new file mode 100644
index 0000000..8680ce4
--- /dev/null
+++ b/lib/Option/Android.mk
@@ -0,0 +1,42 @@
+LOCAL_PATH:= $(call my-dir)
+
+option_SRC_FILES := \
+    Arg.cpp \
+    ArgList.cpp \
+    Option.cpp \
+    OptTable.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+# FIXME: This only requires RTTI because tblgen uses it.  Fix that.
+REQUIRES_RTTI := 1
+
+LOCAL_SRC_FILES := $(option_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMOption
+
+LOCAL_CFLAGS := -D__android__
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+include $(CLEAR_VARS)
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+
+LOCAL_SRC_FILES := $(option_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMOption
+
+LOCAL_CFLAGS := -D__android__
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Support/Android.mk b/lib/Support/Android.mk
new file mode 100644
index 0000000..165305e
--- /dev/null
+++ b/lib/Support/Android.mk
@@ -0,0 +1,120 @@
+LOCAL_PATH:= $(call my-dir)
+
+support_SRC_FILES := \
+  Allocator.cpp \
+  APFloat.cpp \
+  APInt.cpp \
+  APSInt.cpp \
+  ARMBuildAttrs.cpp \
+  Atomic.cpp \
+  BlockFrequency.cpp \
+  BranchProbability.cpp \
+  CommandLine.cpp \
+  Compression.cpp \
+  ConvertUTF.c \
+  ConvertUTFWrapper.cpp \
+  CrashRecoveryContext.cpp \
+  DAGDeltaAlgorithm.cpp \
+  DataStream.cpp \
+  DataExtractor.cpp \
+  Debug.cpp \
+  DeltaAlgorithm.cpp \
+  Dwarf.cpp \
+  DynamicLibrary.cpp \
+  Errno.cpp \
+  ErrorHandling.cpp \
+  FileUtilities.cpp \
+  FoldingSet.cpp \
+  FormattedStream.cpp \
+  GraphWriter.cpp \
+  Hashing.cpp \
+  Host.cpp \
+  IntervalMap.cpp \
+  IntEqClasses.cpp \
+  IntrusiveRefCntPtr.cpp \
+  IsInf.cpp \
+  IsNAN.cpp \
+  LEB128.cpp \
+  LineIterator.cpp \
+  Locale.cpp \
+  LockFileManager.cpp \
+  MD5.cpp \
+  ManagedStatic.cpp \
+  Memory.cpp \
+  MemoryBuffer.cpp \
+  MemoryObject.cpp \
+  Mutex.cpp \
+  Path.cpp \
+  PluginLoader.cpp \
+  PrettyStackTrace.cpp \
+  Process.cpp \
+  Program.cpp \
+  Regex.cpp \
+  RWMutex.cpp \
+  SearchForAddressOfSpecialSymbol.cpp \
+  Signals.cpp \
+  SmallPtrSet.cpp \
+  SmallVector.cpp \
+  SourceMgr.cpp \
+  Statistic.cpp \
+  StreamableMemoryObject.cpp \
+  StringExtras.cpp \
+  StringMap.cpp \
+  StringPool.cpp \
+  StringRef.cpp \
+  SystemUtils.cpp \
+  TargetRegistry.cpp \
+  Threading.cpp \
+  ThreadLocal.cpp \
+  Timer.cpp \
+  TimeValue.cpp \
+  ToolOutputFile.cpp \
+  Triple.cpp \
+  Twine.cpp \
+  Unicode.cpp \
+  Valgrind.cpp \
+  Watchdog.cpp \
+  circular_raw_ostream.cpp \
+  raw_os_ostream.cpp \
+  raw_ostream.cpp \
+  regcomp.c \
+  regerror.c \
+  regexec.c \
+  regfree.c \
+  regstrlcpy.c \
+  system_error.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+# FIXME: This only requires RTTI because tblgen uses it.  Fix that.
+REQUIRES_RTTI := 1
+
+LOCAL_SRC_FILES := $(support_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMSupport
+
+LOCAL_CFLAGS := -D__android__
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(support_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMSupport
+
+LOCAL_CFLAGS := -D__android__
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/TableGen/Android.mk b/lib/TableGen/Android.mk
new file mode 100644
index 0000000..1f01ef7
--- /dev/null
+++ b/lib/TableGen/Android.mk
@@ -0,0 +1,39 @@
+LOCAL_PATH:= $(call my-dir)
+
+libtablegen_SRC_FILES := \
+  Error.cpp \
+  Main.cpp \
+  Record.cpp \
+  StringMatcher.cpp \
+  TableGenBackend.cpp \
+  TGLexer.cpp \
+  TGParser.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(libtablegen_SRC_FILES)
+LOCAL_MODULE:= libLLVMTableGen
+
+LOCAL_MODULE_TAGS := optional
+
+REQUIRES_EH := 1
+REQUIRES_RTTI := 1
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+## For the device
+## =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+#include $(CLEAR_VARS)
+#
+#LOCAL_SRC_FILES := $(libtablegen_SRC_FILES)
+#LOCAL_MODULE:= libLLVMTableGen
+#
+#LOCAL_MODULE_TAGS := optional
+#
+#include $(LLVM_DEVICE_BUILD_MK)
+#include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/AArch64/Android.mk b/lib/Target/AArch64/Android.mk
new file mode 100644
index 0000000..144c2d3
--- /dev/null
+++ b/lib/Target/AArch64/Android.mk
@@ -0,0 +1,67 @@
+LOCAL_PATH := $(call my-dir)
+
+arm64_codegen_TBLGEN_TABLES := \
+  AArch64GenRegisterInfo.inc \
+  AArch64GenInstrInfo.inc \
+  AArch64GenCodeEmitter.inc \
+  AArch64GenMCCodeEmitter.inc \
+  AArch64GenMCPseudoLowering.inc \
+  AArch64GenAsmWriter.inc \
+  AArch64GenAsmMatcher.inc \
+  AArch64GenDAGISel.inc \
+  AArch64GenFastISel.inc \
+  AArch64GenCallingConv.inc \
+  AArch64GenSubtargetInfo.inc \
+  AArch64GenDisassemblerTables.inc
+
+arm64_codegen_SRC_FILES := \
+  AArch64AsmPrinter.cpp \
+  AArch64FrameLowering.cpp \
+  AArch64ISelDAGToDAG.cpp \
+  AArch64MachineFunctionInfo.cpp \
+  AArch64RegisterInfo.cpp \
+  AArch64Subtarget.cpp \
+  AArch64TargetObjectFile.cpp \
+  AArch64BranchFixupPass.cpp \
+  AArch64InstrInfo.cpp \
+  AArch64ISelLowering.cpp \
+  AArch64MCInstLower.cpp \
+  AArch64SelectionDAGInfo.cpp \
+  AArch64TargetMachine.cpp \
+  AArch64TargetTransformInfo.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMARM64CodeGen
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(arm64_codegen_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/MCTargetDesc
+TBLGEN_TABLES := $(arm64_codegen_TBLGEN_TABLES)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMARM64CodeGen
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(arm64_codegen_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/MCTargetDesc
+TBLGEN_TABLES := $(arm64_codegen_TBLGEN_TABLES)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/AArch64/AsmParser/Android.mk b/lib/Target/AArch64/AsmParser/Android.mk
new file mode 100644
index 0000000..0588511
--- /dev/null
+++ b/lib/Target/AArch64/AsmParser/Android.mk
@@ -0,0 +1,63 @@
+LOCAL_PATH := $(call my-dir)
+
+#===---------------------------------------------------------------===
+# libARMAsmParser (common)
+#===---------------------------------------------------------------===
+
+arm64_asm_parser_SRC_FILES := \
+  AArch64AsmParser.cpp
+
+arm64_asm_parser_TBLGEN_TABLES := \
+  AArch64GenInstrInfo.inc \
+  AArch64GenRegisterInfo.inc \
+  AArch64GenAsmMatcher.inc \
+  AArch64GenSubtargetInfo.inc
+
+arm64_asm_parser_TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+arm64_asm_parser_C_INCLUDES := $(LOCAL_PATH)/..
+
+
+#===---------------------------------------------------------------===
+# libARM64AsmParser (host)
+#===---------------------------------------------------------------===
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMARM64AsmParser
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(arm64_asm_parser_SRC_FILES)
+LOCAL_C_INCLUDES += $(arm64_asm_parser_C_INCLUDES)
+TBLGEN_TABLES := $(arm64_asm_parser_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(arm64_asm_parser_TBLGEN_TD_DIR)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+ifneq (,$(filter windows darwin,$(HOST_OS)))
+# Override the default optimization level to work around taking forever (~50m)
+# to compile ARM64AsmParser.cpp on Mac with gcc 4.2,
+# or on Linux with mingw32msvc-gcc 4.2, which is used to cross-compile
+# the win_sdk.
+LOCAL_CFLAGS += -O0
+endif
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+
+#===---------------------------------------------------------------===
+# libARM64AsmParser (target)
+#===---------------------------------------------------------------===
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMARM64AsmParser
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(arm64_asm_parser_SRC_FILES)
+LOCAL_C_INCLUDES += $(arm64_asm_parser_C_INCLUDES)
+TBLGEN_TABLES := $(arm64_asm_parser_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(arm64_asm_parser_TBLGEN_TD_DIR)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/AArch64/Disassembler/Android.mk b/lib/Target/AArch64/Disassembler/Android.mk
new file mode 100644
index 0000000..fcc53ad
--- /dev/null
+++ b/lib/Target/AArch64/Disassembler/Android.mk
@@ -0,0 +1,55 @@
+LOCAL_PATH := $(call my-dir)
+
+arm64_disassembler_TBLGEN_TABLES := \
+  AArch64GenDisassemblerTables.inc \
+  AArch64GenInstrInfo.inc \
+  AArch64GenSubtargetInfo.inc \
+  AArch64GenRegisterInfo.inc
+
+arm64_disassembler_SRC_FILES := \
+  AArch64Disassembler.cpp
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm64_disassembler_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm64_disassembler_SRC_FILES)
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARM64Disassembler
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm64_disassembler_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm64_disassembler_SRC_FILES)
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARM64Disassembler
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
diff --git a/lib/Target/AArch64/InstPrinter/Android.mk b/lib/Target/AArch64/InstPrinter/Android.mk
new file mode 100644
index 0000000..ac9b0df
--- /dev/null
+++ b/lib/Target/AArch64/InstPrinter/Android.mk
@@ -0,0 +1,57 @@
+LOCAL_PATH := $(call my-dir)
+
+arm64_asm_printer_TBLGEN_TABLES := \
+  AArch64GenAsmWriter.inc \
+  AArch64GenRegisterInfo.inc \
+  AArch64GenSubtargetInfo.inc \
+  AArch64GenInstrInfo.inc
+
+arm64_asm_printer_SRC_FILES := \
+  AArch64InstPrinter.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm64_asm_printer_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm64_asm_printer_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMARM64AsmPrinter
+
+LOCAL_C_INCLUDES += \
+    $(LOCAL_PATH)/..
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm64_asm_printer_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm64_asm_printer_SRC_FILES)
+
+LOCAL_C_INCLUDES+= \
+    $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARM64AsmPrinter
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
+
diff --git a/lib/Target/AArch64/MCTargetDesc/Android.mk b/lib/Target/AArch64/MCTargetDesc/Android.mk
new file mode 100644
index 0000000..edcf1f2
--- /dev/null
+++ b/lib/Target/AArch64/MCTargetDesc/Android.mk
@@ -0,0 +1,57 @@
+LOCAL_PATH := $(call my-dir)
+
+arm64_mc_desc_TBLGEN_TABLES := \
+  AArch64GenRegisterInfo.inc \
+  AArch64GenInstrInfo.inc \
+  AArch64GenMCCodeEmitter.inc \
+  AArch64GenSubtargetInfo.inc
+
+arm64_mc_desc_SRC_FILES := \
+  AArch64AsmBackend.cpp \
+  AArch64ELFObjectWriter.cpp \
+  AArch64ELFStreamer.cpp \
+  AArch64MCAsmInfo.cpp \
+  AArch64MCCodeEmitter.cpp \
+  AArch64MCExpr.cpp \
+  AArch64MCTargetDesc.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+
+LOCAL_MODULE:= libLLVMARM64Desc
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(arm64_mc_desc_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/..
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+TBLGEN_TABLES := $(arm64_mc_desc_TBLGEN_TABLES)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMARM64Desc
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(arm64_mc_desc_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/..
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+TBLGEN_TABLES := $(arm64_mc_desc_TBLGEN_TABLES)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/AArch64/TargetInfo/Android.mk b/lib/Target/AArch64/TargetInfo/Android.mk
new file mode 100644
index 0000000..cc650f6
--- /dev/null
+++ b/lib/Target/AArch64/TargetInfo/Android.mk
@@ -0,0 +1,55 @@
+LOCAL_PATH := $(call my-dir)
+
+arm64_target_info_TBLGEN_TABLES := \
+  AArch64GenSubtargetInfo.inc \
+  AArch64GenRegisterInfo.inc \
+  AArch64GenInstrInfo.inc
+
+arm64_target_info_SRC_FILES := \
+  AArch64TargetInfo.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm64_target_info_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm64_target_info_SRC_FILES)
+
+LOCAL_C_INCLUDES +=	\
+	$(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARM64Info
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm64_target_info_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm64_target_info_SRC_FILES)
+
+LOCAL_C_INCLUDES +=	\
+	$(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARM64Info
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/AArch64/Utils/Android.mk b/lib/Target/AArch64/Utils/Android.mk
new file mode 100644
index 0000000..b8bf795
--- /dev/null
+++ b/lib/Target/AArch64/Utils/Android.mk
@@ -0,0 +1,36 @@
+LOCAL_PATH := $(call my-dir)
+
+arm64_utils_SRC_FILES := \
+  AArch64BaseInfo.cpp
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(arm64_utils_SRC_FILES)
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARM64Utils
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(arm64_utils_SRC_FILES)
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARM64Utils
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
diff --git a/lib/Target/ARM/Android.mk b/lib/Target/ARM/Android.mk
new file mode 100644
index 0000000..4be95aa
--- /dev/null
+++ b/lib/Target/ARM/Android.mk
@@ -0,0 +1,87 @@
+LOCAL_PATH := $(call my-dir)
+
+arm_codegen_TBLGEN_TABLES := \
+  ARMGenRegisterInfo.inc \
+  ARMGenInstrInfo.inc \
+  ARMGenCodeEmitter.inc \
+  ARMGenMCCodeEmitter.inc \
+  ARMGenMCPseudoLowering.inc \
+  ARMGenAsmWriter.inc \
+  ARMGenAsmMatcher.inc \
+  ARMGenDAGISel.inc \
+  ARMGenFastISel.inc \
+  ARMGenCallingConv.inc \
+  ARMGenSubtargetInfo.inc \
+  ARMGenDisassemblerTables.inc
+
+arm_codegen_SRC_FILES := \
+  A15SDOptimizer.cpp \
+  ARMAsmPrinter.cpp \
+  ARMAtomicExpandPass.cpp \
+  ARMBaseInstrInfo.cpp \
+  ARMBaseRegisterInfo.cpp \
+  ARMCodeEmitter.cpp \
+  ARMConstantIslandPass.cpp \
+  ARMConstantPoolValue.cpp \
+  ARMExpandPseudoInsts.cpp \
+  ARMFastISel.cpp \
+  ARMFrameLowering.cpp \
+  ARMHazardRecognizer.cpp \
+  ARMISelDAGToDAG.cpp \
+  ARMISelLowering.cpp \
+  ARMInstrInfo.cpp \
+  ARMJITInfo.cpp \
+  ARMLoadStoreOptimizer.cpp \
+  ARMMCInstLower.cpp \
+  ARMMachineFunctionInfo.cpp \
+  ARMOptimizeBarriersPass.cpp \
+  ARMRegisterInfo.cpp \
+  ARMSelectionDAGInfo.cpp \
+  ARMSubtarget.cpp \
+  ARMTargetMachine.cpp \
+  ARMTargetObjectFile.cpp \
+  ARMTargetTransformInfo.cpp \
+  MLxExpansionPass.cpp \
+  Thumb1FrameLowering.cpp \
+  Thumb1InstrInfo.cpp \
+  Thumb1RegisterInfo.cpp \
+  Thumb2ITBlockPass.cpp \
+  Thumb2InstrInfo.cpp \
+  Thumb2RegisterInfo.cpp \
+  Thumb2SizeReduction.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMARMCodeGen
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(arm_codegen_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/MCTargetDesc
+TBLGEN_TABLES := $(arm_codegen_TBLGEN_TABLES)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMARMCodeGen
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(arm_codegen_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/MCTargetDesc
+TBLGEN_TABLES := $(arm_codegen_TBLGEN_TABLES)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/ARM/AsmParser/Android.mk b/lib/Target/ARM/AsmParser/Android.mk
new file mode 100644
index 0000000..5f88cc3
--- /dev/null
+++ b/lib/Target/ARM/AsmParser/Android.mk
@@ -0,0 +1,63 @@
+LOCAL_PATH := $(call my-dir)
+
+#===---------------------------------------------------------------===
+# libARMAsmParser (common)
+#===---------------------------------------------------------------===
+
+arm_asm_parser_SRC_FILES := \
+  ARMAsmParser.cpp
+
+arm_asm_parser_TBLGEN_TABLES := \
+  ARMGenInstrInfo.inc \
+  ARMGenRegisterInfo.inc \
+  ARMGenAsmMatcher.inc \
+  ARMGenSubtargetInfo.inc
+
+arm_asm_parser_TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+arm_asm_parser_C_INCLUDES := $(LOCAL_PATH)/..
+
+
+#===---------------------------------------------------------------===
+# libARMAsmParser (host)
+#===---------------------------------------------------------------===
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMARMAsmParser
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(arm_asm_parser_SRC_FILES)
+LOCAL_C_INCLUDES += $(arm_asm_parser_C_INCLUDES)
+TBLGEN_TABLES := $(arm_asm_parser_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(arm_asm_parser_TBLGEN_TD_DIR)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+ifneq (,$(filter windows darwin,$(HOST_OS)))
+# Override the default optimization level to work around taking forever (~50m)
+# to compile ARMAsmParser.cpp on Mac with gcc 4.2,
+# or on Linux with mingw32msvc-gcc 4.2, which is used to cross-compile
+# the win_sdk.
+LOCAL_CFLAGS += -O0
+endif
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+
+#===---------------------------------------------------------------===
+# libARMAsmParser (target)
+#===---------------------------------------------------------------===
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMARMAsmParser
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(arm_asm_parser_SRC_FILES)
+LOCAL_C_INCLUDES += $(arm_asm_parser_C_INCLUDES)
+TBLGEN_TABLES := $(arm_asm_parser_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(arm_asm_parser_TBLGEN_TD_DIR)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/ARM/Disassembler/Android.mk b/lib/Target/ARM/Disassembler/Android.mk
new file mode 100644
index 0000000..3db61a5
--- /dev/null
+++ b/lib/Target/ARM/Disassembler/Android.mk
@@ -0,0 +1,55 @@
+LOCAL_PATH := $(call my-dir)
+
+arm_disassembler_TBLGEN_TABLES := \
+  ARMGenDisassemblerTables.inc \
+  ARMGenInstrInfo.inc \
+  ARMGenSubtargetInfo.inc \
+  ARMGenRegisterInfo.inc
+
+arm_disassembler_SRC_FILES := \
+  ARMDisassembler.cpp
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm_disassembler_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm_disassembler_SRC_FILES)
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARMDisassembler
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm_disassembler_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm_disassembler_SRC_FILES)
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARMDisassembler
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
diff --git a/lib/Target/ARM/InstPrinter/Android.mk b/lib/Target/ARM/InstPrinter/Android.mk
new file mode 100644
index 0000000..cefed76
--- /dev/null
+++ b/lib/Target/ARM/InstPrinter/Android.mk
@@ -0,0 +1,57 @@
+LOCAL_PATH := $(call my-dir)
+
+arm_asm_printer_TBLGEN_TABLES := \
+  ARMGenAsmWriter.inc \
+  ARMGenRegisterInfo.inc \
+  ARMGenSubtargetInfo.inc \
+  ARMGenInstrInfo.inc
+
+arm_asm_printer_SRC_FILES := \
+  ARMInstPrinter.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm_asm_printer_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm_asm_printer_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMARMAsmPrinter
+
+LOCAL_C_INCLUDES += \
+    $(LOCAL_PATH)/..
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm_asm_printer_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm_asm_printer_SRC_FILES)
+
+LOCAL_C_INCLUDES+= \
+    $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARMAsmPrinter
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
+
diff --git a/lib/Target/ARM/MCTargetDesc/Android.mk b/lib/Target/ARM/MCTargetDesc/Android.mk
new file mode 100644
index 0000000..074d29e
--- /dev/null
+++ b/lib/Target/ARM/MCTargetDesc/Android.mk
@@ -0,0 +1,61 @@
+LOCAL_PATH := $(call my-dir)
+
+arm_mc_desc_TBLGEN_TABLES := \
+  ARMGenRegisterInfo.inc \
+  ARMGenInstrInfo.inc \
+  ARMGenMCCodeEmitter.inc \
+  ARMGenSubtargetInfo.inc
+
+arm_mc_desc_SRC_FILES := \
+  ARMAsmBackend.cpp \
+  ARMELFObjectWriter.cpp \
+  ARMELFStreamer.cpp \
+  ARMMCAsmInfo.cpp \
+  ARMMCCodeEmitter.cpp \
+  ARMMCExpr.cpp \
+  ARMMCTargetDesc.cpp \
+  ARMMachObjectWriter.cpp \
+  ARMMachORelocationInfo.cpp \
+  ARMTargetStreamer.cpp \
+  ARMUnwindOpAsm.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+
+LOCAL_MODULE:= libLLVMARMDesc
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(arm_mc_desc_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/..
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+TBLGEN_TABLES := $(arm_mc_desc_TBLGEN_TABLES)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMARMDesc
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(arm_mc_desc_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/..
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+TBLGEN_TABLES := $(arm_mc_desc_TBLGEN_TABLES)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/ARM/TargetInfo/Android.mk b/lib/Target/ARM/TargetInfo/Android.mk
new file mode 100644
index 0000000..e31c2b8
--- /dev/null
+++ b/lib/Target/ARM/TargetInfo/Android.mk
@@ -0,0 +1,55 @@
+LOCAL_PATH := $(call my-dir)
+
+arm_target_info_TBLGEN_TABLES := \
+  ARMGenSubtargetInfo.inc \
+  ARMGenRegisterInfo.inc \
+  ARMGenInstrInfo.inc
+
+arm_target_info_SRC_FILES := \
+  ARMTargetInfo.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm_target_info_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm_target_info_SRC_FILES)
+
+LOCAL_C_INCLUDES +=	\
+	$(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARMInfo
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(arm_target_info_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(arm_target_info_SRC_FILES)
+
+LOCAL_C_INCLUDES +=	\
+	$(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMARMInfo
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/Android.mk b/lib/Target/Android.mk
new file mode 100644
index 0000000..1b43ce4
--- /dev/null
+++ b/lib/Target/Android.mk
@@ -0,0 +1,39 @@
+LOCAL_PATH:= $(call my-dir)
+
+target_SRC_FILES := \
+  Target.cpp \
+  TargetIntrinsicInfo.cpp \
+  TargetJITInfo.cpp \
+  TargetLibraryInfo.cpp \
+  TargetLoweringObjectFile.cpp \
+  TargetMachineC.cpp \
+  TargetMachine.cpp \
+  TargetSubtargetInfo.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(target_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMTarget
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(target_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMTarget
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/Mips/Android.mk b/lib/Target/Mips/Android.mk
new file mode 100644
index 0000000..74b8a3b
--- /dev/null
+++ b/lib/Target/Mips/Android.mk
@@ -0,0 +1,85 @@
+LOCAL_PATH := $(call my-dir)
+
+mips_codegen_TBLGEN_TABLES := \
+  MipsGenRegisterInfo.inc \
+  MipsGenInstrInfo.inc \
+  MipsGenCodeEmitter.inc \
+  MipsGenMCCodeEmitter.inc \
+  MipsGenMCPseudoLowering.inc \
+  MipsGenAsmWriter.inc \
+  MipsGenDAGISel.inc \
+  MipsGenCallingConv.inc \
+  MipsGenSubtargetInfo.inc
+
+mips_codegen_SRC_FILES := \
+  Mips16FrameLowering.cpp \
+  Mips16HardFloat.cpp \
+  Mips16HardFloatInfo.cpp \
+  Mips16ISelDAGToDAG.cpp \
+  Mips16ISelLowering.cpp \
+  Mips16InstrInfo.cpp \
+  Mips16RegisterInfo.cpp \
+  MipsAnalyzeImmediate.cpp \
+  MipsAsmPrinter.cpp \
+  MipsCodeEmitter.cpp \
+  MipsConstantIslandPass.cpp \
+  MipsDelaySlotFiller.cpp \
+  MipsFrameLowering.cpp \
+  MipsInstrInfo.cpp \
+  MipsISelDAGToDAG.cpp \
+  MipsISelLowering.cpp \
+  MipsJITInfo.cpp \
+  MipsLongBranch.cpp \
+  MipsMachineFunction.cpp \
+  MipsMCInstLower.cpp \
+  MipsModuleISelDAGToDAG.cpp \
+  MipsOs16.cpp \
+  MipsOptimizePICCall.cpp \
+  MipsRegisterInfo.cpp \
+  MipsSEFrameLowering.cpp \
+  MipsSEISelDAGToDAG.cpp \
+  MipsSEISelLowering.cpp \
+  MipsSEInstrInfo.cpp \
+  MipsSERegisterInfo.cpp \
+  MipsSelectionDAGInfo.cpp \
+  MipsSubtarget.cpp \
+  MipsTargetMachine.cpp \
+  MipsTargetObjectFile.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsCodeGen
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(mips_codegen_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/MCTargetDesc
+
+TBLGEN_TABLES := $(mips_codegen_TBLGEN_TABLES)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsCodeGen
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(mips_codegen_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/MCTargetDesc
+
+TBLGEN_TABLES := $(mips_codegen_TBLGEN_TABLES)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/Mips/AsmParser/Android.mk b/lib/Target/Mips/AsmParser/Android.mk
new file mode 100644
index 0000000..7d8eec1
--- /dev/null
+++ b/lib/Target/Mips/AsmParser/Android.mk
@@ -0,0 +1,56 @@
+LOCAL_PATH := $(call my-dir)
+
+#===---------------------------------------------------------------===
+# libLLVMMipsAsmParser (common)
+#===---------------------------------------------------------------===
+
+mips_asm_parser_SRC_FILES := \
+  MipsAsmParser.cpp
+
+mips_asm_parser_C_INCLUDES := $(LOCAL_PATH)/..
+
+mips_asm_parser_TBLGEN_TABLES := \
+  MipsGenAsmMatcher.inc \
+  MipsGenInstrInfo.inc \
+  MipsGenRegisterInfo.inc \
+  MipsGenSubtargetInfo.inc
+
+mips_asm_parser_TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+
+#===---------------------------------------------------------------===
+# libLLVMMipsAsmParser (host)
+#===---------------------------------------------------------------===
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsAsmParser
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(mips_asm_parser_SRC_FILES)
+LOCAL_C_INCLUDES += $(mips_asm_parser_C_INCLUDES)
+TBLGEN_TABLES := $(mips_asm_parser_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+
+#===---------------------------------------------------------------===
+# libLLVMMipsAsmParser (target)
+#===---------------------------------------------------------------===
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsAsmParser
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(mips_asm_parser_SRC_FILES)
+LOCAL_C_INCLUDES += $(mips_asm_parser_C_INCLUDES)
+TBLGEN_TABLES := $(mips_asm_parser_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/Mips/Disassembler/Android.mk b/lib/Target/Mips/Disassembler/Android.mk
new file mode 100644
index 0000000..20fd87a
--- /dev/null
+++ b/lib/Target/Mips/Disassembler/Android.mk
@@ -0,0 +1,48 @@
+LOCAL_PATH := $(call my-dir)
+
+mips_disassembler_TBLGEN_TABLES := \
+  MipsGenDisassemblerTables.inc \
+  MipsGenInstrInfo.inc \
+  MipsGenRegisterInfo.inc \
+  MipsGenSubtargetInfo.inc
+
+mips_disassembler_SRC_FILES := \
+  MipsDisassembler.cpp
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsDisassembler
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(mips_disassembler_SRC_FILES)
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+TBLGEN_TABLES := $(mips_disassembler_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsDisassembler
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(mips_disassembler_SRC_FILES)
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+TBLGEN_TABLES := $(mips_disassembler_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
diff --git a/lib/Target/Mips/InstPrinter/Android.mk b/lib/Target/Mips/InstPrinter/Android.mk
new file mode 100644
index 0000000..f4f3a4f
--- /dev/null
+++ b/lib/Target/Mips/InstPrinter/Android.mk
@@ -0,0 +1,48 @@
+LOCAL_PATH := $(call my-dir)
+
+mips_asm_printer_TBLGEN_TABLES := \
+  MipsGenAsmWriter.inc \
+  MipsGenRegisterInfo.inc \
+  MipsGenSubtargetInfo.inc \
+  MipsGenInstrInfo.inc
+
+mips_asm_printer_SRC_FILES := \
+  MipsInstPrinter.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsAsmPrinter
+LOCAL_MODULE_TAGS := optional
+
+TBLGEN_TABLES := $(mips_asm_printer_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(mips_asm_printer_SRC_FILES)
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsAsmPrinter
+LOCAL_MODULE_TAGS := optional
+
+TBLGEN_TABLES := $(mips_asm_printer_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(mips_asm_printer_SRC_FILES)
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/Mips/MCTargetDesc/Android.mk b/lib/Target/Mips/MCTargetDesc/Android.mk
new file mode 100644
index 0000000..7ee11a1
--- /dev/null
+++ b/lib/Target/Mips/MCTargetDesc/Android.mk
@@ -0,0 +1,58 @@
+LOCAL_PATH := $(call my-dir)
+
+mips_mc_desc_TBLGEN_TABLES := \
+  MipsGenRegisterInfo.inc \
+  MipsGenInstrInfo.inc \
+  MipsGenMCCodeEmitter.inc \
+  MipsGenSubtargetInfo.inc
+
+mips_mc_desc_SRC_FILES := \
+  MipsAsmBackend.cpp \
+  MipsELFObjectWriter.cpp \
+  MipsELFStreamer.cpp \
+  MipsMCAsmInfo.cpp \
+  MipsMCCodeEmitter.cpp \
+  MipsMCExpr.cpp \
+  MipsMCTargetDesc.cpp \
+  MipsNaClELFStreamer.cpp \
+  MipsTargetStreamer.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsDesc
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(mips_mc_desc_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/..
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+TBLGEN_TABLES := $(mips_mc_desc_TBLGEN_TABLES)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsDesc
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(mips_mc_desc_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/..
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+TBLGEN_TABLES := $(mips_mc_desc_TBLGEN_TABLES)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/Mips/TargetInfo/Android.mk b/lib/Target/Mips/TargetInfo/Android.mk
new file mode 100644
index 0000000..173d05b
--- /dev/null
+++ b/lib/Target/Mips/TargetInfo/Android.mk
@@ -0,0 +1,47 @@
+LOCAL_PATH := $(call my-dir)
+
+mips_target_info_TBLGEN_TABLES := \
+  MipsGenInstrInfo.inc \
+  MipsGenRegisterInfo.inc \
+  MipsGenSubtargetInfo.inc
+
+mips_target_info_SRC_FILES := \
+  MipsTargetInfo.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsInfo
+LOCAL_MODULE_TAGS := optional
+
+TBLGEN_TABLES := $(mips_target_info_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(mips_target_info_SRC_FILES)
+LOCAL_C_INCLUDES +=	$(LOCAL_PATH)/..
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMMipsInfo
+LOCAL_MODULE_TAGS := optional
+
+TBLGEN_TABLES := $(mips_target_info_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(mips_target_info_SRC_FILES)
+LOCAL_C_INCLUDES +=	$(LOCAL_PATH)/..
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
\ No newline at end of file
diff --git a/lib/Target/X86/Android.mk b/lib/Target/X86/Android.mk
new file mode 100644
index 0000000..73031de
--- /dev/null
+++ b/lib/Target/X86/Android.mk
@@ -0,0 +1,72 @@
+LOCAL_PATH := $(call my-dir)
+
+x86_codegen_TBLGEN_TABLES := \
+  X86GenAsmWriter.inc \
+  X86GenAsmWriter1.inc \
+  X86GenRegisterInfo.inc \
+  X86GenInstrInfo.inc \
+  X86GenDAGISel.inc \
+  X86GenFastISel.inc \
+  X86GenSubtargetInfo.inc \
+  X86GenCallingConv.inc
+
+x86_codegen_SRC_FILES := \
+  X86AsmPrinter.cpp \
+  X86COFFMachineModuleInfo.cpp \
+  X86CodeEmitter.cpp \
+  X86FastISel.cpp \
+  X86FixupLEAs.cpp \
+  X86FloatingPoint.cpp \
+  X86FrameLowering.cpp \
+  X86ISelDAGToDAG.cpp \
+  X86ISelLowering.cpp \
+  X86InstrInfo.cpp \
+  X86JITInfo.cpp \
+  X86MachineFunctionInfo.cpp \
+  X86MCInstLower.cpp \
+  X86PadShortFunction.cpp \
+  X86RegisterInfo.cpp \
+  X86SelectionDAGInfo.cpp \
+  X86Subtarget.cpp \
+  X86TargetMachine.cpp \
+  X86TargetObjectFile.cpp \
+  X86TargetTransformInfo.cpp \
+  X86VZeroUpper.cpp
+
+# For the host
+# =====================================================
+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_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+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
diff --git a/lib/Target/X86/AsmParser/Android.mk b/lib/Target/X86/AsmParser/Android.mk
new file mode 100644
index 0000000..4235cb1
--- /dev/null
+++ b/lib/Target/X86/AsmParser/Android.mk
@@ -0,0 +1,59 @@
+LOCAL_PATH := $(call my-dir)
+
+# For the device only
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+x86_asm_parser_SRC_FILES :=	\
+	X86AsmInstrumentation.cpp \
+	X86AsmParser.cpp
+
+x86_asm_parser_TBLGEN_TABLES :=	\
+	X86GenAsmMatcher.inc	\
+	X86GenInstrInfo.inc	\
+	X86GenRegisterInfo.inc \
+	X86GenSubtargetInfo.inc
+
+x86_asm_parser_TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+x86_asm_parser_C_INCLUDES +=	\
+	$(LOCAL_PATH)/..
+
+
+#===---------------------------------------------------------------===
+# libX86AsmParser (host)
+#===---------------------------------------------------------------===
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMX86AsmParser
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(x86_asm_parser_SRC_FILES)
+LOCAL_C_INCLUDES += $(x86_asm_parser_C_INCLUDES)
+TBLGEN_TABLES := $(x86_asm_parser_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(x86_asm_parser_TBLGEN_TD_DIR)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+
+#===---------------------------------------------------------------===
+# libX86AsmParser (target)
+#===---------------------------------------------------------------===
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMX86AsmParser
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(x86_asm_parser_SRC_FILES)
+LOCAL_C_INCLUDES += $(x86_asm_parser_C_INCLUDES)
+TBLGEN_TABLES := $(x86_asm_parser_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(x86_asm_parser_TBLGEN_TD_DIR)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/X86/Disassembler/Android.mk b/lib/Target/X86/Disassembler/Android.mk
new file mode 100644
index 0000000..3984266
--- /dev/null
+++ b/lib/Target/X86/Disassembler/Android.mk
@@ -0,0 +1,56 @@
+LOCAL_PATH := $(call my-dir)
+
+x86_disassembler_TBLGEN_TABLES := \
+  X86GenDisassemblerTables.inc \
+  X86GenInstrInfo.inc \
+  X86GenRegisterInfo.inc \
+  X86GenSubtargetInfo.inc
+
+x86_disassembler_SRC_FILES := \
+  X86Disassembler.cpp \
+  X86DisassemblerDecoder.c
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(x86_disassembler_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(x86_disassembler_SRC_FILES)
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMX86Disassembler
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(x86_disassembler_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(x86_disassembler_SRC_FILES)
+
+LOCAL_C_INCLUDES +=	\
+	$(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMX86Disassembler
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
diff --git a/lib/Target/X86/InstPrinter/Android.mk b/lib/Target/X86/InstPrinter/Android.mk
new file mode 100644
index 0000000..9881beb
--- /dev/null
+++ b/lib/Target/X86/InstPrinter/Android.mk
@@ -0,0 +1,57 @@
+LOCAL_PATH := $(call my-dir)
+
+x86_instprinter_TBLGEN_TABLES := \
+  X86GenAsmWriter.inc \
+  X86GenAsmWriter1.inc \
+  X86GenInstrInfo.inc \
+  X86GenRegisterInfo.inc \
+  X86GenSubtargetInfo.inc
+
+x86_instprinter_SRC_FILES := \
+  X86ATTInstPrinter.cpp \
+  X86IntelInstPrinter.cpp \
+  X86InstComments.cpp
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(x86_instprinter_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(x86_instprinter_SRC_FILES)
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMX86AsmPrinter
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(x86_instprinter_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(x86_instprinter_SRC_FILES)
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE := libLLVMX86AsmPrinter
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
diff --git a/lib/Target/X86/MCTargetDesc/Android.mk b/lib/Target/X86/MCTargetDesc/Android.mk
new file mode 100644
index 0000000..ee37c27
--- /dev/null
+++ b/lib/Target/X86/MCTargetDesc/Android.mk
@@ -0,0 +1,56 @@
+LOCAL_PATH := $(call my-dir)
+
+x86_mc_desc_TBLGEN_TABLES := \
+  X86GenRegisterInfo.inc \
+  X86GenInstrInfo.inc \
+  X86GenSubtargetInfo.inc
+
+x86_mc_desc_SRC_FILES := \
+  X86AsmBackend.cpp \
+  X86ELFObjectWriter.cpp \
+  X86ELFRelocationInfo.cpp \
+  X86MCTargetDesc.cpp \
+  X86MCAsmInfo.cpp \
+  X86MCCodeEmitter.cpp \
+  X86MachORelocationInfo.cpp \
+  X86MachObjectWriter.cpp \
+  X86WinCOFFObjectWriter.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+LOCAL_MODULE:= libLLVMX86Desc
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(x86_mc_desc_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/..
+TBLGEN_TABLES := $(x86_mc_desc_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device only
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+
+LOCAL_MODULE:= libLLVMX86Desc
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(x86_mc_desc_SRC_FILES)
+LOCAL_C_INCLUDES := $(LOCAL_PATH)/..
+TBLGEN_TABLES := $(x86_mc_desc_TBLGEN_TABLES)
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/X86/TargetInfo/Android.mk b/lib/Target/X86/TargetInfo/Android.mk
new file mode 100644
index 0000000..1a6c902
--- /dev/null
+++ b/lib/Target/X86/TargetInfo/Android.mk
@@ -0,0 +1,55 @@
+LOCAL_PATH := $(call my-dir)
+
+x86_target_info_TBLGEN_TABLES := \
+  X86GenRegisterInfo.inc \
+  X86GenSubtargetInfo.inc \
+  X86GenInstrInfo.inc
+
+x86_target_info_SRC_FILES := \
+  X86TargetInfo.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(x86_target_info_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(x86_target_info_SRC_FILES)
+
+LOCAL_C_INCLUDES +=	\
+	$(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMX86Info
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := $(x86_target_info_TBLGEN_TABLES)
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := $(x86_target_info_SRC_FILES)
+
+LOCAL_C_INCLUDES +=     \
+        $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMX86Info
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Target/X86/Utils/Android.mk b/lib/Target/X86/Utils/Android.mk
new file mode 100644
index 0000000..e0c4797
--- /dev/null
+++ b/lib/Target/X86/Utils/Android.mk
@@ -0,0 +1,36 @@
+LOCAL_PATH := $(call my-dir)
+
+x86_utils_SRC_FILES := \
+  X86ShuffleDecode.cpp
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(x86_utils_SRC_FILES)
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMX86Utils
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(x86_utils_SRC_FILES)
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMX86Utils
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
diff --git a/lib/Transforms/IPO/Android.mk b/lib/Transforms/IPO/Android.mk
new file mode 100644
index 0000000..1fe7d63
--- /dev/null
+++ b/lib/Transforms/IPO/Android.mk
@@ -0,0 +1,52 @@
+LOCAL_PATH:= $(call my-dir)
+
+transforms_ipo_SRC_FILES := \
+  ArgumentPromotion.cpp \
+  BarrierNoopPass.cpp \
+  ConstantMerge.cpp \
+  DeadArgumentElimination.cpp \
+  ExtractGV.cpp \
+  FunctionAttrs.cpp \
+  GlobalDCE.cpp \
+  GlobalOpt.cpp \
+  IPConstantPropagation.cpp \
+  IPO.cpp \
+  InlineAlways.cpp \
+  InlineSimple.cpp \
+  Inliner.cpp \
+  Internalize.cpp \
+  LoopExtractor.cpp \
+  MergeFunctions.cpp \
+  PartialInlining.cpp \
+  PassManagerBuilder.cpp \
+  PruneEH.cpp \
+  StripDeadPrototypes.cpp \
+  StripSymbols.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(transforms_ipo_SRC_FILES)
+LOCAL_MODULE:= libLLVMipo
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(transforms_ipo_SRC_FILES)
+LOCAL_MODULE:= libLLVMipo
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Transforms/InstCombine/Android.mk b/lib/Transforms/InstCombine/Android.mk
new file mode 100644
index 0000000..62dc7d9
--- /dev/null
+++ b/lib/Transforms/InstCombine/Android.mk
@@ -0,0 +1,44 @@
+LOCAL_PATH:= $(call my-dir)
+
+transforms_inst_combine_SRC_FILES := \
+  InstCombineAddSub.cpp \
+  InstCombineAndOrXor.cpp \
+  InstCombineCalls.cpp \
+  InstCombineCasts.cpp \
+  InstCombineCompares.cpp \
+  InstCombineLoadStoreAlloca.cpp \
+  InstCombineMulDivRem.cpp \
+  InstCombinePHI.cpp \
+  InstCombineSelect.cpp \
+  InstCombineShifts.cpp \
+  InstCombineSimplifyDemanded.cpp \
+  InstCombineVectorOps.cpp \
+  InstructionCombining.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(transforms_inst_combine_SRC_FILES)
+LOCAL_MODULE:= libLLVMInstCombine
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(transforms_inst_combine_SRC_FILES)
+LOCAL_MODULE:= libLLVMInstCombine
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Transforms/Instrumentation/Android.mk b/lib/Transforms/Instrumentation/Android.mk
new file mode 100644
index 0000000..f9a55c7
--- /dev/null
+++ b/lib/Transforms/Instrumentation/Android.mk
@@ -0,0 +1,37 @@
+LOCAL_PATH:= $(call my-dir)
+
+instrumentation_SRC_FILES := \
+  AddressSanitizer.cpp \
+  BoundsChecking.cpp \
+  DataFlowSanitizer.cpp \
+  DebugIR.cpp \
+  GCOVProfiling.cpp \
+  Instrumentation.cpp \
+  MemorySanitizer.cpp \
+  ThreadSanitizer.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE:= libLLVMInstrumentation
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(instrumentation_SRC_FILES)
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the target
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_MODULE:= libLLVMInstrumentation
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(instrumentation_SRC_FILES)
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Transforms/ObjCARC/Android.mk b/lib/Transforms/ObjCARC/Android.mk
new file mode 100644
index 0000000..226e9e1
--- /dev/null
+++ b/lib/Transforms/ObjCARC/Android.mk
@@ -0,0 +1,40 @@
+LOCAL_PATH:= $(call my-dir)
+
+transforms_objcarc_SRC_FILES := \
+  DependencyAnalysis.cpp \
+  ObjCARCAliasAnalysis.cpp \
+  ObjCARCAPElim.cpp \
+  ObjCARCContract.cpp \
+  ObjCARC.cpp \
+  ObjCARCExpand.cpp \
+  ObjCARCOpts.cpp \
+  ObjCARCUtil.cpp \
+  ProvenanceAnalysis.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(transforms_objcarc_SRC_FILES)
+LOCAL_MODULE:= libLLVMTransformObjCARC
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(transforms_objcarc_SRC_FILES)
+LOCAL_MODULE:= libLLVMTransformObjCARC
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Transforms/Scalar/Android.mk b/lib/Transforms/Scalar/Android.mk
new file mode 100644
index 0000000..3894f93
--- /dev/null
+++ b/lib/Transforms/Scalar/Android.mk
@@ -0,0 +1,73 @@
+LOCAL_PATH:= $(call my-dir)
+
+transforms_scalar_SRC_FILES := \
+  ADCE.cpp \
+  ConstantProp.cpp \
+  ConstantHoisting.cpp \
+  CorrelatedValuePropagation.cpp \
+  DCE.cpp \
+  DeadStoreElimination.cpp \
+  EarlyCSE.cpp \
+  GlobalMerge.cpp \
+  GVN.cpp \
+  IndVarSimplify.cpp \
+  JumpThreading.cpp \
+  LICM.cpp \
+  LoopDeletion.cpp \
+  LoopIdiomRecognize.cpp \
+  LoopInstSimplify.cpp \
+  LoopRerollPass.cpp \
+  LoopRotation.cpp \
+  LoopStrengthReduce.cpp \
+  LoopUnrollPass.cpp \
+  LoopUnswitch.cpp \
+  LowerAtomic.cpp \
+  MemCpyOptimizer.cpp \
+  PartiallyInlineLibCalls.cpp \
+  Reassociate.cpp \
+  Reg2Mem.cpp \
+  SCCP.cpp \
+  SROA.cpp \
+  SampleProfile.cpp \
+  Scalar.cpp \
+  Scalarizer.cpp \
+  ScalarReplAggregates.cpp \
+  SimplifyCFGPass.cpp \
+  Sink.cpp \
+  StructurizeCFG.cpp \
+  TailRecursionElimination.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES :=	\
+	$(transforms_scalar_SRC_FILES)
+
+LOCAL_MODULE:= libLLVMScalarOpts
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(transforms_scalar_SRC_FILES)
+LOCAL_MODULE:= libLLVMScalarOpts
+
+# Override the default optimization level to work around a SIGSEGV
+# on x86 target builds for SROA.cpp.
+# Bug: 8047767
+LOCAL_CFLAGS_x86 += -O1
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Transforms/Utils/Android.mk b/lib/Transforms/Utils/Android.mk
new file mode 100644
index 0000000..ab4d8a8
--- /dev/null
+++ b/lib/Transforms/Utils/Android.mk
@@ -0,0 +1,66 @@
+LOCAL_PATH:= $(call my-dir)
+
+transforms_utils_SRC_FILES := \
+  AddDiscriminators.cpp \
+  ASanStackFrameLayout.cpp \
+  BasicBlockUtils.cpp \
+  BreakCriticalEdges.cpp \
+  BuildLibCalls.cpp \
+  BypassSlowDivision.cpp \
+  CloneFunction.cpp \
+  CloneModule.cpp \
+  CmpInstAnalysis.cpp \
+  CodeExtractor.cpp \
+  DemoteRegToStack.cpp \
+  GlobalStatus.cpp \
+  InlineFunction.cpp \
+  InstructionNamer.cpp \
+  LCSSA.cpp \
+  Local.cpp \
+  LoopSimplify.cpp \
+  LoopUnroll.cpp \
+  LoopUnrollRuntime.cpp \
+  LowerExpectIntrinsic.cpp \
+  LowerInvoke.cpp \
+  LowerSwitch.cpp \
+  Mem2Reg.cpp \
+  MetaRenamer.cpp \
+  ModuleUtils.cpp \
+  PromoteMemoryToRegister.cpp \
+  SSAUpdater.cpp \
+  SimplifyCFG.cpp \
+  SimplifyIndVar.cpp \
+  SimplifyInstructions.cpp \
+  SimplifyLibCalls.cpp \
+  SpecialCaseList.cpp \
+  UnifyFunctionExitNodes.cpp \
+  Utils.cpp \
+  ValueMapper.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(transforms_utils_SRC_FILES)
+LOCAL_MODULE:= libLLVMTransformUtils
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(transforms_utils_SRC_FILES)
+LOCAL_MODULE:= libLLVMTransformUtils
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/lib/Transforms/Vectorize/Android.mk b/lib/Transforms/Vectorize/Android.mk
new file mode 100644
index 0000000..ea090c0
--- /dev/null
+++ b/lib/Transforms/Vectorize/Android.mk
@@ -0,0 +1,35 @@
+LOCAL_PATH:= $(call my-dir)
+
+transforms_vectorize_SRC_FILES := \
+  BBVectorize.cpp \
+  LoopVectorize.cpp \
+  SLPVectorizer.cpp \
+  Vectorize.cpp
+
+# For the host
+# =====================================================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(transforms_vectorize_SRC_FILES)
+LOCAL_MODULE:= libLLVMVectorize
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
+
+# For the device
+# =====================================================
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := $(transforms_vectorize_SRC_FILES)
+LOCAL_MODULE:= libLLVMVectorize
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_STATIC_LIBRARY)
+endif
diff --git a/llvm-device-build.mk b/llvm-device-build.mk
new file mode 100644
index 0000000..7464c98
--- /dev/null
+++ b/llvm-device-build.mk
@@ -0,0 +1,79 @@
+LOCAL_MODULE_TARGET_ARCH := $(LLVM_SUPPORTED_ARCH)
+
+LOCAL_CLANG := true
+
+LOCAL_CFLAGS :=	\
+	-D_GNU_SOURCE	\
+	-D__STDC_LIMIT_MACROS	\
+	-D__STDC_CONSTANT_MACROS	\
+	-D__STDC_FORMAT_MACROS	\
+	-O2	\
+	-fomit-frame-pointer	\
+	-Wall	\
+	-W	\
+	-Wno-unused-parameter	\
+	-Wwrite-strings	\
+        -Dsprintf=sprintf \
+	$(LOCAL_CFLAGS)
+
+# The three inline options together reduce libbcc.so almost 1MB.
+# We move them from global build/core/combo/TARGET_linux-arm.mk
+# to here.
+LOCAL_CFLAGS := -DANDROID_TARGET_BUILD \
+		-finline-functions \
+		$(LOCAL_CFLAGS)
+
+ifeq ($(TARGET_BUILD_VARIANT),eng)
+LOCAL_CFLAGS := -DANDROID_ENGINEERING_BUILD \
+                $(LOCAL_CFLAGS)
+endif
+
+ifeq ($(LLVM_ENABLE_ASSERTION),true)
+LOCAL_CFLAGS :=	\
+	$(LOCAL_CFLAGS) \
+	-D_DEBUG	\
+	-UNDEBUG
+endif
+
+ifneq ($(REQUIRES_EH),1)
+LOCAL_CFLAGS +=	-fno-exceptions
+else
+# No action. The device target should not have exception enabled since bionic
+# doesn't support it
+REQUIRES_EH := 0
+endif
+
+ifneq ($(REQUIRES_RTTI),1)
+LOCAL_CPPFLAGS +=	-fno-rtti
+else
+REQUIRES_RTTI := 0
+endif
+
+LOCAL_CPPFLAGS :=	\
+	$(LOCAL_CPPFLAGS)	\
+	-Woverloaded-virtual	\
+	-Wno-sign-promo
+
+# Make sure bionic is first so we can include system headers.
+LOCAL_C_INCLUDES :=	\
+	bionic \
+	external/stlport/stlport \
+	$(LLVM_ROOT_PATH)	\
+	$(LLVM_ROOT_PATH)/include	\
+	$(LLVM_ROOT_PATH)/device/include	\
+	$(LOCAL_C_INCLUDES)
+
+###########################################################
+## Commands for running tblgen to compile a td file
+###########################################################
+define transform-device-td-to-out
+@mkdir -p $(dir $@)
+@echo "Device TableGen (gen-$(1)): $(TBLGEN_LOCAL_MODULE) <= $<"
+$(hide) $(TBLGEN) \
+	-I $(dir $<)	\
+	-I $(LLVM_ROOT_PATH)/include	\
+	-I $(LLVM_ROOT_PATH)/device/include	\
+	-I $(LLVM_ROOT_PATH)/lib/Target	\
+    -gen-$(strip $(1)) \
+    -o $@ $<
+endef
diff --git a/llvm-gen-intrinsics.mk b/llvm-gen-intrinsics.mk
new file mode 100644
index 0000000..358027b
--- /dev/null
+++ b/llvm-gen-intrinsics.mk
@@ -0,0 +1,19 @@
+# We treat Intrinsics.td as a very special target just like what lib/VMCore/Makefile does
+INTRINSICTD := $(LLVM_ROOT_PATH)/include/llvm/IR/Intrinsics.td
+INTRINSICTDS := $(wildcard $(dir $(INTRINSICTD))/Intrinsics*.td)
+
+LOCAL_SRC_FILES := $(INTRINSICTD) $(LOCAL_SRC_FILES)
+
+ifeq ($(LOCAL_MODULE_CLASS),)
+	LOCAL_MODULE_CLASS := STATIC_LIBRARIES
+endif
+
+GENFILE := $(addprefix $(call local-generated-sources-dir)/llvm/IR/,Intrinsics.gen)
+LOCAL_GENERATED_SOURCES += $(GENFILE)
+$(GENFILE): TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(GENFILE): $(INTRINSICTD) $(INTRINSICTDS) | $(TBLGEN)
+ifeq ($(LOCAL_IS_HOST_MODULE),true)
+	$(call transform-host-td-to-out,intrinsic)
+else
+	$(call transform-device-td-to-out,intrinsic)
+endif
diff --git a/llvm-host-build.mk b/llvm-host-build.mk
new file mode 100644
index 0000000..7e96615
--- /dev/null
+++ b/llvm-host-build.mk
@@ -0,0 +1,64 @@
+LOCAL_CLANG := true
+
+LOCAL_CFLAGS +=	\
+	-D_GNU_SOURCE	\
+	-D__STDC_LIMIT_MACROS	\
+	-O2	\
+	-fomit-frame-pointer	\
+	-Wall	\
+	-W	\
+	-Wno-unused-parameter	\
+	-Wwrite-strings	\
+        -Dsprintf=sprintf \
+	$(LOCAL_CFLAGS)
+
+ifeq ($(LLVM_ENABLE_ASSERTION),true)
+LOCAL_CFLAGS :=	\
+	$(LOCAL_CFLAGS) \
+	-D_DEBUG	\
+	-UNDEBUG
+endif
+
+ifneq ($(REQUIRES_EH),1)
+LOCAL_CFLAGS += -fno-exceptions
+else
+REQUIRES_EH := 0
+LOCAL_CFLAGS += -fexceptions
+endif
+
+ifneq ($(REQUIRES_RTTI),1)
+LOCAL_CPPFLAGS += -fno-rtti
+else
+REQUIRES_RTTI := 0
+endif
+
+LOCAL_CPPFLAGS :=	\
+	$(LOCAL_CPPFLAGS)	\
+	-Woverloaded-virtual	\
+	-Wno-sign-promo         \
+	-std=c++11
+
+# Make sure bionic is first so we can include system headers.
+LOCAL_C_INCLUDES :=	\
+	$(LLVM_ROOT_PATH)	\
+	$(LLVM_ROOT_PATH)/include	\
+	$(LLVM_ROOT_PATH)/host/include	\
+	$(LOCAL_C_INCLUDES)
+
+LOCAL_IS_HOST_MODULE := true
+
+###########################################################
+## Commands for running tblgen to compile a td file
+###########################################################
+define transform-host-td-to-out
+@mkdir -p $(dir $@)
+@echo "Host TableGen: $(TBLGEN_LOCAL_MODULE) (gen-$(1)) <= $<"
+$(hide) $(TBLGEN) \
+	-I $(dir $<)	\
+	-I $(LLVM_ROOT_PATH)/include	\
+	-I $(LLVM_ROOT_PATH)/host/include	\
+	-I $(LLVM_ROOT_PATH)/lib/Target	\
+	$(if $(strip $(CLANG_ROOT_PATH)),-I $(CLANG_ROOT_PATH)/include,)	\
+	-gen-$(strip $(1))	\
+	-o $@ $<
+endef
diff --git a/llvm-tblgen-rules.mk b/llvm-tblgen-rules.mk
new file mode 100644
index 0000000..0746e8b
--- /dev/null
+++ b/llvm-tblgen-rules.mk
@@ -0,0 +1,208 @@
+###########################################################
+## Commands for running tblgen to compile a td file
+##########################################################
+define transform-td-to-out
+$(if $(LOCAL_IS_HOST_MODULE),	\
+	$(call transform-host-td-to-out,$(1)),	\
+	$(call transform-device-td-to-out,$(1)))
+endef
+
+###########################################################
+## TableGen: Compile .td files to .inc.
+###########################################################
+
+# Set LOCAL_MODULE_CLASS to STATIC_LIBRARIES default (require
+# for macro local-generated-sources-dir)
+ifeq ($(LOCAL_MODULE_CLASS),)
+	LOCAL_MODULE_CLASS := STATIC_LIBRARIES
+endif
+
+ifneq ($(strip $(TBLGEN_TABLES)),)
+
+generated_sources := $(call local-generated-sources-dir)
+tblgen_gen_tables := $(addprefix $(generated_sources)/,$(TBLGEN_TABLES))
+LOCAL_GENERATED_SOURCES += $(tblgen_gen_tables)
+
+tblgen_source_dir := $(LOCAL_PATH)
+ifneq ($(TBLGEN_TD_DIR),)
+tblgen_source_dir := $(TBLGEN_TD_DIR)
+endif
+
+ifneq (,$(filter $(tblgen_source_dir),MCTargetDesc))
+tblgen_td_deps := $(tblgen_source_dir)/../*.td
+else
+tblgen_td_deps := $(tblgen_source_dir)/*.td
+endif
+tblgen_td_deps := $(wildcard $(tblgen_td_deps))
+
+#
+# The directory and the .td directory is not the same.
+#
+ifeq ($(tblgen_source_dir),$(LLVM_ROOT_PATH)/lib/Target/ARM/MCTargetDesc)
+$(generated_sources)/%GenRegisterInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenRegisterInfo.inc: $(tblgen_source_dir)/../%.td \
+                                       $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out, register-info)
+
+$(generated_sources)/%GenInstrInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenInstrInfo.inc: $(tblgen_source_dir)/../%.td \
+                                    $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,instr-info)
+
+$(generated_sources)/%GenSubtargetInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenSubtargetInfo.inc: $(tblgen_source_dir)/../%.td \
+                                        $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,subtarget)
+endif
+
+ifeq ($(tblgen_source_dir),$(LLVM_ROOT_PATH)/lib/Target/X86/MCTargetDesc)
+$(generated_sources)/%GenRegisterInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenRegisterInfo.inc: $(tblgen_source_dir)/../%.td \
+                                       $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out, register-info)
+
+$(generated_sources)/%GenInstrInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenInstrInfo.inc: $(tblgen_source_dir)/../%.td \
+                                    $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,instr-info)
+
+$(generated_sources)/%GenSubtargetInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenSubtargetInfo.inc: $(tblgen_source_dir)/../%.td \
+                                        $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,subtarget)
+endif
+
+ifeq ($(tblgen_source_dir),$(LLVM_ROOT_PATH)/lib/Target/Mips/MCTargetDesc)
+$(generated_sources)/%GenRegisterInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenRegisterInfo.inc: $(tblgen_source_dir)/../%.td \
+                                       $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out, register-info)
+
+$(generated_sources)/%GenInstrInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenInstrInfo.inc: $(tblgen_source_dir)/../%.td \
+                                    $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,instr-info)
+
+$(generated_sources)/%GenSubtargetInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenSubtargetInfo.inc: $(tblgen_source_dir)/../%.td \
+                                        $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,subtarget)
+endif
+
+
+ifneq ($(filter %GenRegisterInfo.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenRegisterInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenRegisterInfo.inc: $(tblgen_source_dir)/%.td \
+                                       $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,register-info)
+endif
+
+ifneq ($(filter %GenInstrInfo.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenInstrInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenInstrInfo.inc: $(tblgen_source_dir)/%.td \
+                                    $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,instr-info)
+endif
+
+ifneq ($(filter %GenAsmWriter.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenAsmWriter.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenAsmWriter.inc: $(tblgen_source_dir)/%.td \
+                                    $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,asm-writer)
+endif
+
+ifneq ($(filter %GenAsmWriter1.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenAsmWriter1.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenAsmWriter1.inc: $(tblgen_source_dir)/%.td \
+                                     $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,asm-writer -asmwriternum=1)
+endif
+
+ifneq ($(filter %GenAsmMatcher.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenAsmMatcher.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenAsmMatcher.inc: $(tblgen_source_dir)/%.td \
+                                     $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,asm-matcher)
+endif
+
+ifneq ($(filter %GenCodeEmitter.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenCodeEmitter.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenCodeEmitter.inc: $(tblgen_source_dir)/%.td \
+                                      $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,emitter)
+endif
+
+ifneq ($(filter %GenMCCodeEmitter.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenMCCodeEmitter.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenMCCodeEmitter.inc: $(tblgen_source_dir)/%.td \
+                                        $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,emitter -mc-emitter)
+endif
+
+ifneq ($(filter %GenMCPseudoLowering.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenMCPseudoLowering.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenMCPseudoLowering.inc: $(tblgen_source_dir)/%.td \
+                                           $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,pseudo-lowering)
+endif
+
+ifneq ($(filter %GenDAGISel.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenDAGISel.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenDAGISel.inc: $(tblgen_source_dir)/%.td \
+                                  $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,dag-isel)
+endif
+
+ifneq ($(filter %GenDisassemblerTables.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenDisassemblerTables.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenDisassemblerTables.inc: $(tblgen_source_dir)/%.td \
+                                             $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,disassembler)
+endif
+
+ifneq ($(filter %GenEDInfo.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenEDInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenEDInfo.inc: $(tblgen_source_dir)/%.td \
+                                 $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,enhanced-disassembly-info)
+endif
+
+ifneq ($(filter %GenFastISel.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenFastISel.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenFastISel.inc: $(tblgen_source_dir)/%.td \
+                                   $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,fast-isel)
+endif
+
+ifneq ($(filter %GenSubtargetInfo.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenSubtargetInfo.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenSubtargetInfo.inc: $(tblgen_source_dir)/%.td \
+                                        $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,subtarget)
+endif
+
+ifneq ($(filter %GenCallingConv.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenCallingConv.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenCallingConv.inc: $(tblgen_source_dir)/%.td \
+                                      $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,callingconv)
+endif
+
+ifneq ($(filter %GenIntrinsics.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/%GenIntrinsics.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/%GenIntrinsics.inc: $(tblgen_source_dir)/%.td \
+                                     $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,tgt_intrinsics)
+endif
+
+ifneq ($(findstring ARMGenDecoderTables.inc,$(tblgen_gen_tables)),)
+$(generated_sources)/ARMGenDecoderTables.inc: TBLGEN_LOCAL_MODULE := $(LOCAL_MODULE)
+$(generated_sources)/ARMGenDecoderTables.inc: $(tblgen_source_dir)/ARM.td \
+                                          $(tblgen_td_deps) | $(TBLGEN)
+	$(call transform-td-to-out,arm-decoder)
+endif
+
+# Reset local variables
+tblgen_td_deps :=
+
+endif
diff --git a/llvm.mk b/llvm.mk
new file mode 100644
index 0000000..073ceb7
--- /dev/null
+++ b/llvm.mk
@@ -0,0 +1,11 @@
+ifeq ($(LLVM_ROOT_PATH),)
+$(error Must set variable LLVM_ROOT_PATH before including this! $(LOCAL_PATH))
+endif
+
+CLEAR_TBLGEN_VARS := $(LLVM_ROOT_PATH)/clear_tblgen_vars.mk
+LLVM_HOST_BUILD_MK := $(LLVM_ROOT_PATH)/llvm-host-build.mk
+LLVM_DEVICE_BUILD_MK := $(LLVM_ROOT_PATH)/llvm-device-build.mk
+LLVM_GEN_INTRINSICS_MK := $(LLVM_ROOT_PATH)/llvm-gen-intrinsics.mk
+LLVM_TBLGEN_RULES_MK := $(LLVM_ROOT_PATH)/llvm-tblgen-rules.mk
+
+LLVM_SUPPORTED_ARCH := arm arm64 mips x86 x86_64
diff --git a/shared_llvm.mk b/shared_llvm.mk
new file mode 100644
index 0000000..f4be822
--- /dev/null
+++ b/shared_llvm.mk
@@ -0,0 +1,137 @@
+# Don't build the library in unbundled branches.
+ifeq (,$(TARGET_BUILD_APPS))
+
+LOCAL_PATH:= $(call my-dir)
+
+llvm_pre_static_libraries := \
+  libLLVMLinker \
+  libLLVMipo \
+  libLLVMIRReader \
+  libLLVMBitWriter \
+  libLLVMBitReader
+
+llvm_arm_static_libraries := \
+  libLLVMARMCodeGen \
+  libLLVMARMAsmParser \
+  libLLVMARMAsmPrinter \
+  libLLVMARMInfo \
+  libLLVMARMDesc \
+  libLLVMARMDisassembler
+
+llvm_x86_static_libraries := \
+  libLLVMX86CodeGen \
+  libLLVMX86Info \
+  libLLVMX86Desc \
+  libLLVMX86AsmParser \
+  libLLVMX86AsmPrinter \
+  libLLVMX86Utils \
+  libLLVMX86Disassembler
+
+llvm_mips_static_libraries := \
+  libLLVMMipsCodeGen \
+  libLLVMMipsInfo \
+  libLLVMMipsDesc \
+  libLLVMMipsAsmParser \
+  libLLVMMipsAsmPrinter \
+  libLLVMMipsDisassembler
+
+llvm_arm64_static_libraries := \
+  libLLVMARM64CodeGen \
+  libLLVMARM64Info \
+  libLLVMARM64Desc \
+  libLLVMARM64AsmParser \
+  libLLVMARM64AsmPrinter \
+  libLLVMARM64Utils \
+  libLLVMARM64Disassembler
+
+llvm_post_static_libraries := \
+  libLLVMAsmPrinter \
+  libLLVMSelectionDAG \
+  libLLVMCodeGen \
+  libLLVMObject \
+  libLLVMScalarOpts \
+  libLLVMInstCombine \
+  libLLVMInstrumentation \
+  libLLVMTransformObjCARC \
+  libLLVMTransformUtils \
+  libLLVMipa \
+  libLLVMAnalysis \
+  libLLVMTarget \
+  libLLVMMC \
+  libLLVMMCParser \
+  libLLVMCore \
+  libLLVMAsmParser \
+  libLLVMOption \
+  libLLVMSupport \
+  libLLVMVectorize
+
+llvm_host_static_libraries := \
+  libLLVMExecutionEngine \
+  libLLVMMCDisassembler \
+  libLLVMRuntimeDyld \
+  libLLVMJIT \
+  libLLVMMCJIT
+
+ifeq (true,$(FORCE_BUILD_LLVM_COMPONENTS))
+# HOST LLVM shared library build
+include $(CLEAR_VARS)
+LOCAL_IS_HOST_MODULE := true
+
+LOCAL_MODULE:= libLLVM
+
+LOCAL_MODULE_TAGS := optional
+
+# Host build pulls in all ARM, Mips, X86 components.
+LOCAL_WHOLE_STATIC_LIBRARIES := \
+  $(llvm_pre_static_libraries) \
+  $(llvm_arm_static_libraries) \
+  $(llvm_x86_static_libraries) \
+  $(llvm_mips_static_libraries) \
+  $(llvm_arm64_static_libraries) \
+  $(llvm_host_static_libraries) \
+  $(llvm_post_static_libraries)
+
+ifeq ($(HOST_OS),windows)
+  LOCAL_LDLIBS := -limagehlp -lpsapi
+else
+  LOCAL_LDLIBS := -ldl -lpthread
+endif
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_SHARED_LIBRARY)
+endif
+
+ifeq (,$(filter $(TARGET_ARCH),$(LLVM_SUPPORTED_ARCH)))
+$(warning TODO $(TARGET_ARCH): Enable llvm build)
+endif
+
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+# DEVICE LLVM shared library build
+include $(CLEAR_VARS)
+
+LOCAL_MODULE:= libLLVM
+
+LOCAL_MODULE_TAGS := optional
+
+# Device build selectively pulls in ARM, Mips, X86 components.
+LOCAL_WHOLE_STATIC_LIBRARIES := \
+  $(llvm_pre_static_libraries)
+
+LOCAL_WHOLE_STATIC_LIBRARIES_arm += $(llvm_arm_static_libraries)
+LOCAL_WHOLE_STATIC_LIBRARIES_x86 += $(llvm_x86_static_libraries)
+LOCAL_WHOLE_STATIC_LIBRARIES_x86_64 += $(llvm_x86_static_libraries)
+LOCAL_WHOLE_STATIC_LIBRARIES_mips += $(llvm_mips_static_libraries)
+LOCAL_WHOLE_STATIC_LIBRARIES_arm64 += $(llvm_arm64_static_libraries)
+
+LOCAL_WHOLE_STATIC_LIBRARIES += $(llvm_post_static_libraries)
+
+#LOCAL_LDLIBS := -ldl -lpthread
+LOCAL_SHARED_LIBRARIES := libcutils libdl libstlport
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(BUILD_SHARED_LIBRARY)
+
+endif
+
+endif # don't build in unbundled branches
+
diff --git a/tools/llc/Android.mk b/tools/llc/Android.mk
new file mode 100644
index 0000000..b9d4b74
--- /dev/null
+++ b/tools/llc/Android.mk
@@ -0,0 +1,136 @@
+LOCAL_PATH := $(call my-dir)
+
+LLVM_ROOT_PATH := $(LOCAL_PATH)/../..
+
+
+#===---------------------------------------------------------------===
+# llc command line tool (common)
+#===---------------------------------------------------------------===
+
+llvm_llc_SRC_FILES := \
+  llc.cpp
+
+llvm_llc_mips_STATIC_LIBRARIES := \
+  libLLVMMipsAsmParser \
+  libLLVMMipsInfo \
+  libLLVMMipsCodeGen \
+  libLLVMMipsDesc \
+  libLLVMMipsAsmPrinter \
+
+llvm_llc_x86_STATIC_LIBRARIES := \
+  libLLVMX86Info \
+  libLLVMX86AsmParser \
+  libLLVMX86CodeGen \
+  libLLVMX86Disassembler \
+  libLLVMX86Desc \
+  libLLVMX86AsmPrinter \
+  libLLVMX86Utils
+
+llvm_llc_arm_STATIC_LIBRARIES := \
+  libLLVMARMCodeGen \
+  libLLVMARMDisassembler \
+  libLLVMARMAsmParser \
+  libLLVMARMAsmPrinter \
+  libLLVMARMDesc \
+  libLLVMARMInfo
+
+llvm_llc_STATIC_LIBRARIES := \
+  libLLVMAsmPrinter \
+  libLLVMIRReader \
+  libLLVMAsmParser \
+  libLLVMBitReader \
+  libLLVMBitWriter \
+  libLLVMSelectionDAG \
+  libLLVMInstCombine \
+  libLLVMInstrumentation \
+  libLLVMCodeGen \
+  libLLVMObject \
+  libLLVMipo \
+  libLLVMipa \
+  libLLVMLinker \
+  libLLVMMC \
+  libLLVMMCParser \
+  libLLVMScalarOpts \
+  libLLVMTransformUtils \
+  libLLVMVectorize \
+  libLLVMAnalysis \
+  libLLVMTarget \
+  libLLVMCore \
+  libLLVMSupport
+
+llvm_llc_arm64_STATIC_LIBRARIES := \
+  libLLVMARM64Info \
+  libLLVMARM64AsmParser \
+  libLLVMARM64CodeGen \
+  libLLVMARM64Disassembler \
+  libLLVMARM64Desc \
+  libLLVMARM64AsmPrinter \
+  libLLVMARM64Utils
+
+
+
+#===---------------------------------------------------------------===
+# llc command line tool (host)
+#===---------------------------------------------------------------===
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := llc
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_CLASS := EXECUTABLES
+LOCAL_IS_HOST_MODULE := true
+
+LOCAL_SRC_FILES := $(llvm_llc_SRC_FILES)
+
+LOCAL_STATIC_LIBRARIES := \
+  $(llvm_llc_arm_STATIC_LIBRARIES) \
+  $(llvm_llc_mips_STATIC_LIBRARIES) \
+  $(llvm_llc_x86_STATIC_LIBRARIES) \
+  $(llvm_llc_arm64_STATIC_LIBRARIES) \
+  $(llvm_llc_STATIC_LIBRARIES)
+
+LOCAL_LDLIBS += -lpthread -lm -ldl
+LOCAL_C_INCLUDES += external/llvm/include
+
+include $(LLVM_ROOT_PATH)/llvm.mk
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_EXECUTABLE)
+
+
+#===---------------------------------------------------------------===
+# llc command line tool (target)
+#===---------------------------------------------------------------===
+
+ifeq (,$(filter $(TARGET_ARCH),$(LLVM_SUPPORTED_ARCH)))
+$(warning TODO $(TARGET_ARCH): Enable llc build)
+endif
+
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := llc
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_CLASS := EXECUTABLES
+
+LOCAL_SRC_FILES := $(llvm_llc_SRC_FILES)
+LOCAL_C_INCLUDES += external/llvm/include
+
+LOCAL_STATIC_LIBRARIES_arm := $(llvm_llc_arm_STATIC_LIBRARIES)
+LOCAL_STATIC_LIBRARIES_mips := $(llvm_llc_mips_STATIC_LIBRARIES)
+LOCAL_STATIC_LIBRARIES_x86 := $(llvm_llc_x86_STATIC_LIBRARIES)
+LOCAL_STATIC_LIBRARIES_x86_64 := $(llvm_llc_x86_STATIC_LIBRARIES)
+LOCAL_STATIC_LIBRARIES_arm64 := $(llvm_llc_arm64_STATIC_LIBRARIES)
+
+LOCAL_STATIC_LIBRARIES += $(llvm_llc_STATIC_LIBRARIES)
+
+LOCAL_SHARED_LIBRARIES :=  \
+  libcutils  \
+  libdl  \
+  libstlport
+
+include $(LLVM_ROOT_PATH)/llvm.mk
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_EXECUTABLE)
+endif
diff --git a/tools/llvm-as/Android.mk b/tools/llvm-as/Android.mk
new file mode 100644
index 0000000..e58868b
--- /dev/null
+++ b/tools/llvm-as/Android.mk
@@ -0,0 +1,28 @@
+LOCAL_PATH:= $(call my-dir)
+
+llvm_as_SRC_FILES := \
+  llvm-as.cpp
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := llvm-as
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(llvm_as_SRC_FILES)
+LOCAL_LDLIBS += -lm
+ifdef USE_MINGW
+LOCAL_LDLIBS += -limagehlp
+else
+LOCAL_LDLIBS += -lpthread -ldl
+endif
+
+REQUIRES_EH := 1
+REQUIRES_RTTI := 1
+
+LOCAL_STATIC_LIBRARIES := \
+  libLLVMAsmParser \
+  libLLVMBitWriter \
+  libLLVMCore \
+  libLLVMSupport
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_EXECUTABLE)
diff --git a/tools/llvm-dis/Android.mk b/tools/llvm-dis/Android.mk
new file mode 100644
index 0000000..22d44fd
--- /dev/null
+++ b/tools/llvm-dis/Android.mk
@@ -0,0 +1,25 @@
+LOCAL_PATH:= $(call my-dir)
+
+llvm_dis_SRC_FILES := \
+  llvm-dis.cpp
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := llvm-dis
+LOCAL_MODULE_CLASS := EXECUTABLES
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(llvm_dis_SRC_FILES)
+LOCAL_LDLIBS += -lpthread -lm -ldl
+
+REQUIRES_EH := 1
+REQUIRES_RTTI := 1
+
+LOCAL_STATIC_LIBRARIES := \
+  libLLVMAnalysis \
+  libLLVMBitReader \
+  libLLVMCore \
+  libLLVMSupport
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_EXECUTABLE)
diff --git a/tools/llvm-link/Android.mk b/tools/llvm-link/Android.mk
new file mode 100644
index 0000000..e051492
--- /dev/null
+++ b/tools/llvm-link/Android.mk
@@ -0,0 +1,50 @@
+LOCAL_PATH:= $(call my-dir)
+
+llvm_link_SRC_FILES := \
+  llvm-link.cpp
+
+llvm_link_STATIC_LIBRARIES := \
+  libLLVMLinker \
+  libLLVMIRReader \
+  libLLVMBitReader \
+  libLLVMBitWriter \
+  libLLVMAsmParser \
+  libLLVMTransformUtils \
+  libLLVMAnalysis \
+  libLLVMTarget \
+  libLLVMCore \
+  libLLVMSupport
+
+#===---------------------------------------------------------------===
+# llvm-link command line tool (host)
+#===---------------------------------------------------------------===
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := llvm-link
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(llvm_link_SRC_FILES)
+LOCAL_STATIC_LIBRARIES := $(llvm_link_STATIC_LIBRARIES)
+LOCAL_LDLIBS += -lpthread -lm -ldl
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_EXECUTABLE)
+
+#===---------------------------------------------------------------===
+# llvm-link command line tool (target)
+#===---------------------------------------------------------------===
+
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := llvm-link
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(llvm_link_SRC_FILES)
+LOCAL_STATIC_LIBRARIES := $(llvm_link_STATIC_LIBRARIES)
+LOCAL_SHARED_LIBRARIES := \
+  libcutils  \
+  libstlport
+
+include $(LLVM_DEVICE_BUILD_MK)
+include $(BUILD_EXECUTABLE)
+endif
diff --git a/tools/opt/Android.mk b/tools/opt/Android.mk
new file mode 100644
index 0000000..c5bb4f8
--- /dev/null
+++ b/tools/opt/Android.mk
@@ -0,0 +1,81 @@
+LOCAL_PATH := $(call my-dir)
+
+LLVM_ROOT_PATH := $(LOCAL_PATH)/../..
+
+
+#===---------------------------------------------------------------===
+# opt command line tool (common)
+#===---------------------------------------------------------------===
+
+llvm_opt_SRC_FILES := \
+  AnalysisWrappers.cpp \
+  GraphPrinters.cpp \
+  PrintSCC.cpp \
+  opt.cpp
+
+llvm_opt_STATIC_LIBRARIES := \
+  libLLVMScalarOpts \
+  libLLVMInstCombine \
+  libLLVMInstrumentation \
+  libLLVMMCParser \
+  libLLVMMC \
+  libLLVMAsmParser \
+  libLLVMBitWriter \
+  libLLVMBitReader \
+  libLLVMipa \
+  libLLVMipo \
+  libLLVMTransformUtils \
+  libLLVMVectorize \
+  libLLVMAnalysis \
+  libLLVMTarget \
+  libLLVMCore \
+  libLLVMSupport
+
+
+#===---------------------------------------------------------------===
+# opt command line tool (host)
+#===---------------------------------------------------------------===
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := opt
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_CLASS := EXECUTABLES
+LOCAL_IS_HOST_MODULE := true
+
+LOCAL_SRC_FILES := $(llvm_opt_SRC_FILES)
+LOCAL_STATIC_LIBRARIES := $(llvm_opt_STATIC_LIBRARIES)
+LOCAL_LDLIBS += -lpthread -lm -ldl
+LOCAL_C_INCLUDES += external/llvm/include
+
+include $(LLVM_ROOT_PATH)/llvm.mk
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_HOST_EXECUTABLE)
+
+
+#===---------------------------------------------------------------===
+# opt command line tool (target)
+#===---------------------------------------------------------------===
+
+ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS))
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := opt
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_CLASS := EXECUTABLES
+
+LOCAL_SRC_FILES := $(llvm_opt_SRC_FILES)
+LOCAL_C_INCLUDES += external/llvm/include
+LOCAL_STATIC_LIBRARIES := $(llvm_opt_STATIC_LIBRARIES)
+LOCAL_SHARED_LIBRARIES :=  \
+  libcutils  \
+  libdl  \
+  libstlport
+
+
+include $(LLVM_ROOT_PATH)/llvm.mk
+include $(LLVM_DEVICE_BUILD_MK)
+include $(LLVM_GEN_INTRINSICS_MK)
+include $(BUILD_EXECUTABLE)
+endif
diff --git a/utils/FileCheck/Android.mk b/utils/FileCheck/Android.mk
new file mode 100644
index 0000000..2c211cf
--- /dev/null
+++ b/utils/FileCheck/Android.mk
@@ -0,0 +1,23 @@
+LOCAL_PATH:= $(call my-dir)
+
+filecheck_SRC_FILES := \
+  FileCheck.cpp
+
+filecheck_STATIC_LIBRARIES := \
+  libLLVMSupport
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := FileCheck
+LOCAL_SRC_FILES := $(filecheck_SRC_FILES)
+LOCAL_STATIC_LIBRARIES := $(filecheck_STATIC_LIBRARIES)
+LOCAL_C_INCLUDES += external/llvm/include
+LOCAL_C_INCLUDES += external/llvm/host/include
+LOCAL_LDLIBS += -lpthread -lm -ldl
+LOCAL_CFLAGS += -D __STDC_LIMIT_MACROS -D __STDC_CONSTANT_MACROS
+
+#REQUIRES_EH := 1
+#REQUIRES_RTTI := 1
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_EXECUTABLE)
diff --git a/utils/TableGen/Android.mk b/utils/TableGen/Android.mk
new file mode 100644
index 0000000..8117672
--- /dev/null
+++ b/utils/TableGen/Android.mk
@@ -0,0 +1,58 @@
+LOCAL_PATH:= $(call my-dir)
+
+tablegen_SRC_FILES := \
+  AsmMatcherEmitter.cpp \
+  AsmWriterEmitter.cpp \
+  AsmWriterInst.cpp \
+  CallingConvEmitter.cpp \
+  CodeEmitterGen.cpp \
+  CodeGenDAGPatterns.cpp \
+  CodeGenInstruction.cpp \
+  CodeGenMapTable.cpp \
+  CodeGenRegisters.cpp \
+  CodeGenSchedule.cpp \
+  CodeGenTarget.cpp \
+  CTagsEmitter.cpp \
+  DAGISelEmitter.cpp \
+  DAGISelMatcherEmitter.cpp \
+  DAGISelMatcherGen.cpp \
+  DAGISelMatcherOpt.cpp \
+  DAGISelMatcher.cpp \
+  DFAPacketizerEmitter.cpp \
+  DisassemblerEmitter.cpp \
+  FastISelEmitter.cpp \
+  FixedLenDecoderEmitter.cpp \
+  InstrInfoEmitter.cpp \
+  IntrinsicEmitter.cpp \
+  OptParserEmitter.cpp \
+  PseudoLoweringEmitter.cpp \
+  RegisterInfoEmitter.cpp \
+  SetTheory.cpp \
+  SubtargetEmitter.cpp \
+  TableGen.cpp \
+  X86DisassemblerTables.cpp \
+  X86ModRMFilters.cpp \
+  X86RecognizableInstr.cpp
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := tblgen
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(tablegen_SRC_FILES)
+
+REQUIRES_EH := 1
+REQUIRES_RTTI := 1
+
+LOCAL_STATIC_LIBRARIES := \
+  libLLVMTableGen \
+  libLLVMSupport
+
+LOCAL_LDLIBS += -lm
+ifeq ($(HOST_OS),windows)
+  LOCAL_LDLIBS += -limagehlp -lpsapi
+else
+  LOCAL_LDLIBS += -lpthread -ldl
+endif
+
+include $(LLVM_HOST_BUILD_MK)
+include $(BUILD_HOST_EXECUTABLE)
-- 
1.9.1.423.g4596e3a

