aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Android.mk5
-rw-r--r--device/include/llvm/Config/config.h3
-rw-r--r--host/include/llvm/Config/config.h3
-rw-r--r--lib/Analysis/Android.mk44
-rw-r--r--lib/AsmParser/Android.mk18
-rw-r--r--lib/AsmParser/LLLexer.cpp1
-rw-r--r--lib/CodeGen/Android.mk165
-rw-r--r--lib/MC/Android.mk62
-rw-r--r--lib/MC/MCParser/Android.mk1
-rw-r--r--lib/Support/Android.mk91
-rw-r--r--lib/System/Android.mk2
-rw-r--r--lib/System/DynamicLibrary.cpp2
-rw-r--r--lib/Target/ARM/Android.mk78
-rw-r--r--lib/Target/ARM/InstPrinter/Android.mk54
-rw-r--r--lib/Target/X86/Android.mk3
-rw-r--r--lib/Target/X86/AsmPrinter/Android.mk4
-rw-r--r--lib/Target/X86/InstPrinter/Android.mk30
-rw-r--r--lib/Transforms/Scalar/Android.mk63
-rw-r--r--llvm-device-build.mk3
-rw-r--r--llvm-host-build.mk3
-rw-r--r--llvm-tblgen-rules.mk5
-rw-r--r--utils/TableGen/Android.mk69
22 files changed, 413 insertions, 296 deletions
diff --git a/Android.mk b/Android.mk
index e133a62..beb6203 100644
--- a/Android.mk
+++ b/Android.mk
@@ -26,13 +26,14 @@ subdirs := $(addprefix $(LOCAL_PATH)/,$(addsuffix /Android.mk, \
lib/CodeGen/AsmPrinter \
lib/Target \
lib/Target/ARM \
- lib/Target/ARM/AsmPrinter \
lib/Target/ARM/AsmParser \
+ lib/Target/ARM/InstPrinter \
lib/Target/ARM/Disassembler \
lib/Target/ARM/TargetInfo \
lib/Target/X86 \
- lib/Target/X86/AsmPrinter \
lib/Target/X86/AsmParser \
+ lib/Target/X86/AsmPrinter \
+ lib/Target/X86/InstPrinter \
lib/Target/X86/Disassembler \
lib/Target/X86/TargetInfo \
lib/ExecutionEngine/JIT \
diff --git a/device/include/llvm/Config/config.h b/device/include/llvm/Config/config.h
index 06f29f4..593199c 100644
--- a/device/include/llvm/Config/config.h
+++ b/device/include/llvm/Config/config.h
@@ -4,6 +4,9 @@
#ifndef CONFIG_H
#define CONFIG_H
+/* Relative directory for resource files */
+#define CLANG_RESOURCE_DIR ""
+
/* 32 bit multilib directory. */
#define CXX_INCLUDE_32BIT_DIR ""
diff --git a/host/include/llvm/Config/config.h b/host/include/llvm/Config/config.h
index 5a48cd5..5a1f7bb 100644
--- a/host/include/llvm/Config/config.h
+++ b/host/include/llvm/Config/config.h
@@ -4,6 +4,9 @@
#ifndef CONFIG_H
#define CONFIG_H
+/* Relative directory for resource files */
+#define CLANG_RESOURCE_DIR ""
+
/* 32 bit multilib directory. */
#define CXX_INCLUDE_32BIT_DIR ""
diff --git a/lib/Analysis/Android.mk b/lib/Analysis/Android.mk
index 2260df1..3b0f124 100644
--- a/lib/Analysis/Android.mk
+++ b/lib/Analysis/Android.mk
@@ -25,25 +25,28 @@ analysis_SRC_FILES := \
LibCallSemantics.cpp \
LiveValues.cpp \
Loads.cpp \
- MemoryBuiltins.cpp \
- MemoryDependenceAnalysis.cpp \
- LoopDependenceAnalysis.cpp \
- LoopInfo.cpp \
- LoopPass.cpp \
- PHITransAddr.cpp \
- PointerTracking.cpp \
- PostDominators.cpp \
- ProfileEstimatorPass.cpp \
- ProfileInfo.cpp \
- ProfileInfoLoader.cpp \
- ProfileInfoLoaderPass.cpp \
- ProfileVerifierPass.cpp \
- ScalarEvolution.cpp \
- ScalarEvolutionAliasAnalysis.cpp \
- ScalarEvolutionExpander.cpp \
- ScalarEvolutionNormalization.cpp \
- SparsePropagation.cpp \
- Trace.cpp \
+ NoAliasAnalysis.cpp \
+ MemDepPrinter.cpp \
+ MemoryBuiltins.cpp \
+ MemoryDependenceAnalysis.cpp \
+ RegionPass.cpp \
+ LoopDependenceAnalysis.cpp \
+ LoopInfo.cpp \
+ LoopPass.cpp \
+ PHITransAddr.cpp \
+ PostDominators.cpp \
+ ProfileEstimatorPass.cpp \
+ ProfileInfo.cpp \
+ ProfileInfoLoader.cpp \
+ ProfileInfoLoaderPass.cpp \
+ ProfileVerifierPass.cpp \
+ ScalarEvolution.cpp \
+ ScalarEvolutionAliasAnalysis.cpp \
+ ScalarEvolutionExpander.cpp \
+ ScalarEvolutionNormalization.cpp \
+ SparsePropagation.cpp \
+ Trace.cpp \
+ TypeBasedAliasAnalysis.cpp \
ValueTracking.cpp
# For the host
@@ -55,8 +58,7 @@ LOCAL_SRC_FILES := \
Lint.cpp \
ModuleDebugInfoPrinter.cpp \
RegionInfo.cpp \
- RegionPrinter.cpp \
- TypeBasedAliasAnalysis.cpp
+ RegionPrinter.cpp
LOCAL_MODULE:= libLLVMAnalysis
diff --git a/lib/AsmParser/Android.mk b/lib/AsmParser/Android.mk
index 6d7b253..a54192e 100644
--- a/lib/AsmParser/Android.mk
+++ b/lib/AsmParser/Android.mk
@@ -20,11 +20,13 @@ include $(BUILD_HOST_STATIC_LIBRARY)
# For the device
# =====================================================
-#include $(CLEAR_VARS)
-#
-#LOCAL_SRC_FILES := $(asm_parser_SRC_FILES)
-#
-#LOCAL_MODULE:= libLLVMAsmParser
-#
-#include $(LOCAL_PATH)/../../llvm-device-build.mk
-#include $(BUILD_STATIC_LIBRARY)
+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)
diff --git a/lib/AsmParser/LLLexer.cpp b/lib/AsmParser/LLLexer.cpp
index f924b5a..30e181c 100644
--- a/lib/AsmParser/LLLexer.cpp
+++ b/lib/AsmParser/LLLexer.cpp
@@ -22,6 +22,7 @@
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/SourceMgr.h"
#include "llvm/Support/raw_ostream.h"
+#include <cctype>
#include <cstdio>
#include <cstdlib>
#include <cstring>
diff --git a/lib/CodeGen/Android.mk b/lib/CodeGen/Android.mk
index 40dedb1..8875792 100644
--- a/lib/CodeGen/Android.mk
+++ b/lib/CodeGen/Android.mk
@@ -1,87 +1,88 @@
LOCAL_PATH:= $(call my-dir)
-codegen_SRC_FILES := \
- AggressiveAntiDepBreaker.cpp \
- Analysis.cpp \
- BranchFolding.cpp \
- CalcSpillWeights.cpp \
- CallingConvLower.cpp \
- CodePlacementOpt.cpp \
- CriticalAntiDepBreaker.cpp \
- DeadMachineInstructionElim.cpp \
- DwarfEHPrepare.cpp \
- ELFCodeEmitter.cpp \
- ELFWriter.cpp \
- GCMetadata.cpp \
- GCMetadataPrinter.cpp \
- GCStrategy.cpp \
- IfConversion.cpp \
- InlineSpiller.cpp \
- IntrinsicLowering.cpp \
- LLVMTargetMachine.cpp \
- LatencyPriorityQueue.cpp \
- LiveInterval.cpp \
- LiveIntervalAnalysis.cpp \
- LiveStackAnalysis.cpp \
- LiveVariables.cpp \
- LocalStackSlotAllocation.cpp \
- LowerSubregs.cpp \
- MachineBasicBlock.cpp \
- MachineCSE.cpp \
- MachineDominators.cpp \
- MachineFunction.cpp \
- MachineFunctionAnalysis.cpp \
- MachineFunctionPass.cpp \
- MachineFunctionPrinterPass.cpp \
- MachineInstr.cpp \
- MachineLICM.cpp \
- MachineLoopInfo.cpp \
- MachineModuleInfo.cpp \
- MachineModuleInfoImpls.cpp \
- MachinePassRegistry.cpp \
- MachineRegisterInfo.cpp \
- MachineSSAUpdater.cpp \
- MachineSink.cpp \
- MachineVerifier.cpp \
- ObjectCodeEmitter.cpp \
- OcamlGC.cpp \
- OptimizePHIs.cpp \
- PHIElimination.cpp \
- Passes.cpp \
- PeepholeOptimizer.cpp \
- PostRAHazardRecognizer.cpp \
- PostRASchedulerList.cpp \
- PreAllocSplitting.cpp \
- ProcessImplicitDefs.cpp \
- PrologEpilogInserter.cpp \
- PseudoSourceValue.cpp \
- RegAllocFast.cpp \
- RegAllocLinearScan.cpp \
- RegAllocPBQP.cpp \
- RegisterCoalescer.cpp \
- RegisterScavenging.cpp \
- RenderMachineFunction.cpp \
- ScheduleDAG.cpp \
- ScheduleDAGEmit.cpp \
- ScheduleDAGInstrs.cpp \
- ScheduleDAGPrinter.cpp \
- ShadowStackGC.cpp \
- ShrinkWrapping.cpp \
- SimpleRegisterCoalescing.cpp \
- SjLjEHPrepare.cpp \
- SlotIndexes.cpp \
- Spiller.cpp \
- SplitKit.cpp \
- Splitter.cpp \
- StackProtector.cpp \
- StackSlotColoring.cpp \
- StrongPHIElimination.cpp \
- TailDuplication.cpp \
- TargetInstrInfoImpl.cpp \
- TargetLoweringObjectFileImpl.cpp \
- TwoAddressInstructionPass.cpp \
- UnreachableBlockElim.cpp \
- VirtRegMap.cpp \
+codegen_SRC_FILES := \
+ AggressiveAntiDepBreaker.cpp \
+ Analysis.cpp \
+ BranchFolding.cpp \
+ CalcSpillWeights.cpp \
+ CallingConvLower.cpp \
+ CodePlacementOpt.cpp \
+ CriticalAntiDepBreaker.cpp \
+ DeadMachineInstructionElim.cpp \
+ DwarfEHPrepare.cpp \
+ ELFCodeEmitter.cpp \
+ ELFWriter.cpp \
+ GCMetadata.cpp \
+ GCMetadataPrinter.cpp \
+ GCStrategy.cpp \
+ IfConversion.cpp \
+ InlineSpiller.cpp \
+ IntrinsicLowering.cpp \
+ LLVMTargetMachine.cpp \
+ LatencyPriorityQueue.cpp \
+ LiveInterval.cpp \
+ LiveIntervalAnalysis.cpp \
+ LiveRangeEdit.cpp \
+ LiveStackAnalysis.cpp \
+ LiveVariables.cpp \
+ LocalStackSlotAllocation.cpp \
+ LowerSubregs.cpp \
+ MachineBasicBlock.cpp \
+ MachineCSE.cpp \
+ MachineDominators.cpp \
+ MachineFunction.cpp \
+ MachineFunctionAnalysis.cpp \
+ MachineFunctionPass.cpp \
+ MachineFunctionPrinterPass.cpp \
+ MachineInstr.cpp \
+ MachineLICM.cpp \
+ MachineLoopInfo.cpp \
+ MachineModuleInfo.cpp \
+ MachineModuleInfoImpls.cpp \
+ MachinePassRegistry.cpp \
+ MachineRegisterInfo.cpp \
+ MachineSSAUpdater.cpp \
+ MachineSink.cpp \
+ MachineVerifier.cpp \
+ ObjectCodeEmitter.cpp \
+ OcamlGC.cpp \
+ OptimizePHIs.cpp \
+ PHIElimination.cpp \
+ Passes.cpp \
+ PeepholeOptimizer.cpp \
+ PostRAHazardRecognizer.cpp \
+ PostRASchedulerList.cpp \
+ PreAllocSplitting.cpp \
+ ProcessImplicitDefs.cpp \
+ PrologEpilogInserter.cpp \
+ PseudoSourceValue.cpp \
+ RegAllocFast.cpp \
+ RegAllocLinearScan.cpp \
+ RegAllocPBQP.cpp \
+ RegisterCoalescer.cpp \
+ RegisterScavenging.cpp \
+ RenderMachineFunction.cpp \
+ ScheduleDAG.cpp \
+ ScheduleDAGEmit.cpp \
+ ScheduleDAGInstrs.cpp \
+ ScheduleDAGPrinter.cpp \
+ ShadowStackGC.cpp \
+ ShrinkWrapping.cpp \
+ SimpleRegisterCoalescing.cpp \
+ SjLjEHPrepare.cpp \
+ SlotIndexes.cpp \
+ Spiller.cpp \
+ SplitKit.cpp \
+ Splitter.cpp \
+ StackProtector.cpp \
+ StackSlotColoring.cpp \
+ StrongPHIElimination.cpp \
+ TailDuplication.cpp \
+ TargetInstrInfoImpl.cpp \
+ TargetLoweringObjectFileImpl.cpp \
+ TwoAddressInstructionPass.cpp \
+ UnreachableBlockElim.cpp \
+ VirtRegMap.cpp \
VirtRegRewriter.cpp
# For the host
diff --git a/lib/MC/Android.mk b/lib/MC/Android.mk
index c4f5ff8..002888d 100644
--- a/lib/MC/Android.mk
+++ b/lib/MC/Android.mk
@@ -1,35 +1,37 @@
LOCAL_PATH:= $(call my-dir)
-mc_SRC_FILES := \
- ELFObjectWriter.cpp \
- MachObjectWriter.cpp \
- MCAsmInfo.cpp \
- MCAsmInfoCOFF.cpp \
- MCAsmInfoDarwin.cpp \
- MCAsmStreamer.cpp \
- MCAssembler.cpp \
- MCCodeEmitter.cpp \
- MCContext.cpp \
- MCDisassembler.cpp \
- MCELFStreamer.cpp \
- MCExpr.cpp \
- MCInst.cpp \
- MCInstPrinter.cpp \
- MCLabel.cpp \
- MCLoggingStreamer.cpp \
- MCMachOStreamer.cpp \
- MCNullStreamer.cpp \
- MCObjectStreamer.cpp \
- MCObjectWriter.cpp \
- MCSection.cpp \
- MCSectionCOFF.cpp \
- MCSectionELF.cpp \
- MCSectionMachO.cpp \
- MCStreamer.cpp \
- MCSymbol.cpp \
- MCValue.cpp \
- WinCOFFObjectWriter.cpp \
- WinCOFFStreamer.cpp \
+mc_SRC_FILES := \
+ ELFObjectWriter.cpp \
+ MachObjectWriter.cpp \
+ MCAsmInfo.cpp \
+ MCAsmInfoCOFF.cpp \
+ MCAsmInfoDarwin.cpp \
+ MCAsmStreamer.cpp \
+ MCAssembler.cpp \
+ MCCodeEmitter.cpp \
+ MCContext.cpp \
+ MCDisassembler.cpp \
+ MCDwarf.cpp \
+ MCELFStreamer.cpp \
+ MCExpr.cpp \
+ MCInst.cpp \
+ MCInstPrinter.cpp \
+ MCLabel.cpp \
+ MCLoggingStreamer.cpp \
+ MCMachOStreamer.cpp \
+ MCNullStreamer.cpp \
+ MCObjectFormat.cpp \
+ MCObjectStreamer.cpp \
+ MCObjectWriter.cpp \
+ MCSection.cpp \
+ MCSectionCOFF.cpp \
+ MCSectionELF.cpp \
+ MCSectionMachO.cpp \
+ MCStreamer.cpp \
+ MCSymbol.cpp \
+ MCValue.cpp \
+ WinCOFFObjectWriter.cpp \
+ WinCOFFStreamer.cpp \
TargetAsmBackend.cpp
# For the host
diff --git a/lib/MC/MCParser/Android.mk b/lib/MC/MCParser/Android.mk
index b0721b7..33d3aea 100644
--- a/lib/MC/MCParser/Android.mk
+++ b/lib/MC/MCParser/Android.mk
@@ -3,6 +3,7 @@ LOCAL_PATH:= $(call my-dir)
mc_parser_SRC_FILES := \
AsmLexer.cpp \
AsmParser.cpp \
+ COFFAsmParser.cpp \
DarwinAsmParser.cpp \
ELFAsmParser.cpp \
MCAsmLexer.cpp \
diff --git a/lib/Support/Android.mk b/lib/Support/Android.mk
index 5eea2db..9b73488 100644
--- a/lib/Support/Android.mk
+++ b/lib/Support/Android.mk
@@ -1,50 +1,51 @@
LOCAL_PATH:= $(call my-dir)
-support_SRC_FILES := \
- APFloat.cpp \
- APInt.cpp \
- APSInt.cpp \
- Allocator.cpp \
- CommandLine.cpp \
- ConstantRange.cpp \
- CrashRecoveryContext.cpp \
- DAGDeltaAlgorithm.cpp \
- Debug.cpp \
- DeltaAlgorithm.cpp \
- Dwarf.cpp \
- ErrorHandling.cpp \
- FileUtilities.cpp \
- FoldingSet.cpp \
- FormattedStream.cpp \
- GraphWriter.cpp \
- IsInf.cpp \
- IsNAN.cpp \
- ManagedStatic.cpp \
- MemoryBuffer.cpp \
- MemoryObject.cpp \
- PluginLoader.cpp \
- PrettyStackTrace.cpp \
- Regex.cpp \
- SmallPtrSet.cpp \
- SmallVector.cpp \
- SourceMgr.cpp \
- Statistic.cpp \
- StringExtras.cpp \
- StringMap.cpp \
- StringPool.cpp \
- StringRef.cpp \
- SystemUtils.cpp \
- TargetRegistry.cpp \
- Timer.cpp \
- Triple.cpp \
- Twine.cpp \
- circular_raw_ostream.cpp \
- raw_os_ostream.cpp \
- raw_ostream.cpp \
- regcomp.c \
- regerror.c \
- regexec.c \
- regfree.c \
+support_SRC_FILES := \
+ APFloat.cpp \
+ APInt.cpp \
+ APSInt.cpp \
+ Allocator.cpp \
+ CommandLine.cpp \
+ ConstantRange.cpp \
+ CrashRecoveryContext.cpp \
+ DAGDeltaAlgorithm.cpp \
+ Debug.cpp \
+ DeltaAlgorithm.cpp \
+ Dwarf.cpp \
+ ErrorHandling.cpp \
+ FileUtilities.cpp \
+ FoldingSet.cpp \
+ FormattedStream.cpp \
+ GraphWriter.cpp \
+ IsInf.cpp \
+ IsNAN.cpp \
+ ManagedStatic.cpp \
+ MemoryBuffer.cpp \
+ MemoryObject.cpp \
+ PluginLoader.cpp \
+ PrettyStackTrace.cpp \
+ Regex.cpp \
+ SmallPtrSet.cpp \
+ SmallVector.cpp \
+ SourceMgr.cpp \
+ Statistic.cpp \
+ StringExtras.cpp \
+ StringMap.cpp \
+ StringPool.cpp \
+ StringRef.cpp \
+ SystemUtils.cpp \
+ TargetRegistry.cpp \
+ Timer.cpp \
+ ToolOutputFile.cpp \
+ Triple.cpp \
+ Twine.cpp \
+ circular_raw_ostream.cpp \
+ raw_os_ostream.cpp \
+ raw_ostream.cpp \
+ regcomp.c \
+ regerror.c \
+ regexec.c \
+ regfree.c \
regstrlcpy.c
# For the host
diff --git a/lib/System/Android.mk b/lib/System/Android.mk
index ff1eff9..73c779e 100644
--- a/lib/System/Android.mk
+++ b/lib/System/Android.mk
@@ -47,6 +47,8 @@ REQUIRES_RTTI := 1
LOCAL_SRC_FILES := $(system_SRC_FILES)
+LOCAL_CFLAGS := -D__android__
+
ifneq ($(TARGET_SIMULATOR),true)
LOCAL_CFLAGS += -I bionic/libc/include
endif
diff --git a/lib/System/DynamicLibrary.cpp b/lib/System/DynamicLibrary.cpp
index 3da50a2..b974c1d 100644
--- a/lib/System/DynamicLibrary.cpp
+++ b/lib/System/DynamicLibrary.cpp
@@ -136,7 +136,7 @@ void* DynamicLibrary::SearchForAddressOfSymbol(const char* symbolName) {
// On linux we have a weird situation. The stderr/out/in symbols are both
// macros and global variables because of standards requirements. So, we
// boldly use the EXPLICIT_SYMBOL macro without checking for a #define first.
-#if defined(__linux__)
+#if defined(__linux__) && !defined(__android__)
{
EXPLICIT_SYMBOL(stderr);
EXPLICIT_SYMBOL(stdout);
diff --git a/lib/Target/ARM/Android.mk b/lib/Target/ARM/Android.mk
index b8dba43..51a257f 100644
--- a/lib/Target/ARM/Android.mk
+++ b/lib/Target/ARM/Android.mk
@@ -1,46 +1,54 @@
LOCAL_PATH := $(call my-dir)
arm_codegen_TBLGEN_TABLES := \
- ARMGenRegisterInfo.h.inc \
+ ARMGenAsmWriter.inc \
+ ARMGenMCCodeEmitter.inc \
+ ARMGenRegisterInfo.h.inc\
ARMGenRegisterNames.inc \
- ARMGenRegisterInfo.inc \
+ ARMGenRegisterInfo.inc \
ARMGenInstrNames.inc \
- ARMGenInstrInfo.inc \
- ARMGenDAGISel.inc \
- ARMGenFastISel.inc \
+ ARMGenInstrInfo.inc \
+ ARMGenDAGISel.inc \
+ ARMGenFastISel.inc \
ARMGenSubtarget.inc \
- ARMGenCodeEmitter.inc \
+ ARMGenCodeEmitter.inc \
ARMGenCallingConv.inc
-arm_codegen_SRC_FILES := \
- ARMBaseInstrInfo.cpp \
- ARMBaseRegisterInfo.cpp \
- ARMCodeEmitter.cpp \
- ARMConstantIslandPass.cpp \
- ARMConstantPoolValue.cpp \
- ARMExpandPseudoInsts.cpp \
- ARMFastISel.cpp \
- ARMGlobalMerge.cpp \
- ARMISelDAGToDAG.cpp \
- ARMISelLowering.cpp \
- ARMInstrInfo.cpp \
- ARMJITInfo.cpp \
- ARMLoadStoreOptimizer.cpp \
- ARMMCAsmInfo.cpp \
- ARMMCInstLower.cpp \
- ARMRegisterInfo.cpp \
- ARMSelectionDAGInfo.cpp \
- ARMSubtarget.cpp \
- ARMTargetMachine.cpp \
- ARMTargetObjectFile.cpp \
- NEONMoveFix.cpp \
- NEONPreAllocPass.cpp \
- Thumb1InstrInfo.cpp \
- Thumb1RegisterInfo.cpp \
- Thumb2HazardRecognizer.cpp \
- Thumb2ITBlockPass.cpp \
- Thumb2InstrInfo.cpp \
- Thumb2RegisterInfo.cpp \
+arm_codegen_SRC_FILES := \
+ ARMAsmBackend.cpp \
+ ARMAsmPrinter.cpp \
+ ARMBaseInstrInfo.cpp \
+ ARMBaseRegisterInfo.cpp \
+ ARMCodeEmitter.cpp \
+ ARMConstantIslandPass.cpp \
+ ARMConstantPoolValue.cpp \
+ ARMELFWriterInfo.cpp \
+ ARMExpandPseudoInsts.cpp \
+ ARMFastISel.cpp \
+ ARMFrameInfo.cpp \
+ ARMGlobalMerge.cpp \
+ ARMISelDAGToDAG.cpp \
+ ARMISelLowering.cpp \
+ ARMInstrInfo.cpp \
+ ARMJITInfo.cpp \
+ ARMLoadStoreOptimizer.cpp \
+ ARMMCAsmInfo.cpp \
+ ARMMCCodeEmitter.cpp\
+ ARMMCInstLower.cpp \
+ ARMRegisterInfo.cpp \
+ ARMSelectionDAGInfo.cpp \
+ ARMSubtarget.cpp \
+ ARMTargetMachine.cpp \
+ ARMTargetObjectFile.cpp \
+ InstPrinter/ARMInstPrinter.cpp \
+ NEONMoveFix.cpp \
+ Thumb1FrameInfo.cpp \
+ Thumb1InstrInfo.cpp \
+ Thumb1RegisterInfo.cpp \
+ Thumb2HazardRecognizer.cpp \
+ Thumb2ITBlockPass.cpp \
+ Thumb2InstrInfo.cpp \
+ Thumb2RegisterInfo.cpp \
Thumb2SizeReduction.cpp
# For the host
diff --git a/lib/Target/ARM/InstPrinter/Android.mk b/lib/Target/ARM/InstPrinter/Android.mk
new file mode 100644
index 0000000..3a35023
--- /dev/null
+++ b/lib/Target/ARM/InstPrinter/Android.mk
@@ -0,0 +1,54 @@
+LOCAL_PATH := $(call my-dir)
+
+arm_asm_printer_TBLGEN_TABLES := \
+ ARMGenAsmWriter.inc \
+ ARMGenRegisterNames.inc\
+ ARMGenInstrNames.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
+# =====================================================
+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)
+
diff --git a/lib/Target/X86/Android.mk b/lib/Target/X86/Android.mk
index 8dbca01..a30528b 100644
--- a/lib/Target/X86/Android.mk
+++ b/lib/Target/X86/Android.mk
@@ -18,7 +18,8 @@ x86_codegen_SRC_FILES := \
X86CodeEmitter.cpp \
X86ELFWriterInfo.cpp \
X86FastISel.cpp \
- X86FloatingPoint.cpp \
+ X86FloatingPoint.cpp\
+ X86FrameInfo.cpp \
X86ISelDAGToDAG.cpp \
X86ISelLowering.cpp \
X86InstrInfo.cpp \
diff --git a/lib/Target/X86/AsmPrinter/Android.mk b/lib/Target/X86/AsmPrinter/Android.mk
index 54ca734..3f5538a 100644
--- a/lib/Target/X86/AsmPrinter/Android.mk
+++ b/lib/Target/X86/AsmPrinter/Android.mk
@@ -8,9 +8,7 @@ x86_asm_printer_TBLGEN_TABLES := \
X86GenRegisterInfo.h.inc
x86_asm_printer_SRC_FILES := \
- X86ATTInstPrinter.cpp \
- X86AsmPrinter.cpp \
- X86IntelInstPrinter.cpp
+ X86AsmPrinter.cpp
# For the host
# =====================================================
diff --git a/lib/Target/X86/InstPrinter/Android.mk b/lib/Target/X86/InstPrinter/Android.mk
new file mode 100644
index 0000000..7eeb452
--- /dev/null
+++ b/lib/Target/X86/InstPrinter/Android.mk
@@ -0,0 +1,30 @@
+LOCAL_PATH := $(call my-dir)
+
+# For the host only
+# =====================================================
+include $(CLEAR_VARS)
+include $(CLEAR_TBLGEN_VARS)
+
+TBLGEN_TABLES := \
+ X86GenAsmWriter.inc \
+ X86GenAsmWriter1.inc \
+ X86GenInstrNames.inc \
+ X86GenRegisterNames.inc \
+ X86GenRegisterInfo.h.inc
+
+TBLGEN_TD_DIR := $(LOCAL_PATH)/..
+
+LOCAL_SRC_FILES := \
+ X86ATTInstPrinter.cpp \
+ X86IntelInstPrinter.cpp \
+ X86InstComments.cpp
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/..
+
+LOCAL_MODULE:= libLLVMX86InstPrinter
+
+LOCAL_MODULE_TAGS := optional
+
+include $(LLVM_HOST_BUILD_MK)
+include $(LLVM_TBLGEN_RULES_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)
diff --git a/lib/Transforms/Scalar/Android.mk b/lib/Transforms/Scalar/Android.mk
index efe96f2..25dc32a 100644
--- a/lib/Transforms/Scalar/Android.mk
+++ b/lib/Transforms/Scalar/Android.mk
@@ -1,34 +1,35 @@
LOCAL_PATH:= $(call my-dir)
-transforms_scalar_SRC_FILES := \
- ADCE.cpp \
- BasicBlockPlacement.cpp \
- CodeGenPrepare.cpp \
- ConstantProp.cpp \
- DCE.cpp \
- DeadStoreElimination.cpp \
- GEPSplitter.cpp \
- GVN.cpp \
- IndVarSimplify.cpp \
- JumpThreading.cpp \
- LICM.cpp \
- LoopDeletion.cpp \
- LoopIndexSplit.cpp \
- LoopRotation.cpp \
- LoopStrengthReduce.cpp \
- LoopUnrollPass.cpp \
- LoopUnswitch.cpp \
- MemCpyOptimizer.cpp \
- Reassociate.cpp \
- Reg2Mem.cpp \
- SCCP.cpp \
- Scalar.cpp \
- ScalarReplAggregates.cpp \
- SimplifyCFGPass.cpp \
- SimplifyHalfPowrLibCalls.cpp \
- SimplifyLibCalls.cpp \
- Sink.cpp \
- TailDuplication.cpp \
+transforms_scalar_SRC_FILES := \
+ ADCE.cpp \
+ BasicBlockPlacement.cpp \
+ CodeGenPrepare.cpp \
+ ConstantProp.cpp \
+ CorrelatedValuePropagation.cpp \
+ DCE.cpp \
+ DeadStoreElimination.cpp \
+ GEPSplitter.cpp \
+ GVN.cpp \
+ IndVarSimplify.cpp \
+ JumpThreading.cpp \
+ LICM.cpp \
+ LoopDeletion.cpp \
+ LoopRotation.cpp \
+ LoopStrengthReduce.cpp \
+ LoopUnrollPass.cpp \
+ LoopUnswitch.cpp \
+ LowerAtomic.cpp \
+ MemCpyOptimizer.cpp \
+ Reassociate.cpp \
+ Reg2Mem.cpp \
+ SCCP.cpp \
+ Scalar.cpp \
+ ScalarReplAggregates.cpp \
+ SimplifyCFGPass.cpp \
+ SimplifyHalfPowrLibCalls.cpp \
+ SimplifyLibCalls.cpp \
+ Sink.cpp \
+ TailDuplication.cpp \
TailRecursionElimination.cpp
# For the host
@@ -36,9 +37,7 @@ transforms_scalar_SRC_FILES := \
include $(CLEAR_VARS)
LOCAL_SRC_FILES := \
- $(transforms_scalar_SRC_FILES) \
- LowerAtomic.cpp \
- ValuePropagation.cpp
+ $(transforms_scalar_SRC_FILES)
LOCAL_MODULE:= libLLVMScalarOpts
diff --git a/llvm-device-build.mk b/llvm-device-build.mk
index 0090359..83fc5ef 100644
--- a/llvm-device-build.mk
+++ b/llvm-device-build.mk
@@ -44,7 +44,8 @@ endif
LOCAL_CPPFLAGS := \
$(LOCAL_CPPFLAGS) \
- -Woverloaded-virtual
+ -Woverloaded-virtual \
+ -Wno-sign-promo
# Make sure bionic is first so we can include system headers.
LOCAL_C_INCLUDES := \
diff --git a/llvm-host-build.mk b/llvm-host-build.mk
index 609d7e1..d7ef682 100644
--- a/llvm-host-build.mk
+++ b/llvm-host-build.mk
@@ -38,7 +38,8 @@ endif
LOCAL_CPPFLAGS := \
$(LOCAL_CPPFLAGS) \
- -Woverloaded-virtual
+ -Woverloaded-virtual \
+ -Wno-sign-promo
# Make sure bionic is first so we can include system headers.
LOCAL_C_INCLUDES := \
diff --git a/llvm-tblgen-rules.mk b/llvm-tblgen-rules.mk
index 8ec1705..79d1b0a 100644
--- a/llvm-tblgen-rules.mk
+++ b/llvm-tblgen-rules.mk
@@ -73,6 +73,11 @@ $(intermediates)/%GenCodeEmitter.inc: $(tblgen_source_dir)/%.td $(TBLGEN)
$(call transform-td-to-out,emitter)
endif
+ifneq ($(filter %GenMCCodeEmitter.inc,$(tblgen_gen_tables)),)
+$(intermediates)/%GenMCCodeEmitter.inc: $(tblgen_source_dir)/%.td $(TBLGEN)
+ $(call transform-td-to-out,emitter -mc-emitter)
+endif
+
ifneq ($(filter %GenDAGISel.inc,$(tblgen_gen_tables)),)
$(intermediates)/%GenDAGISel.inc: $(tblgen_source_dir)/%.td $(TBLGEN)
$(call transform-td-to-out,dag-isel)
diff --git a/utils/TableGen/Android.mk b/utils/TableGen/Android.mk
index 3028ee6..a226ecb 100644
--- a/utils/TableGen/Android.mk
+++ b/utils/TableGen/Android.mk
@@ -3,40 +3,41 @@ include $(CLEAR_VARS)
LOCAL_SRC_FILES := \
ARMDecoderEmitter.cpp \
- AsmMatcherEmitter.cpp \
- AsmWriterEmitter.cpp \
- AsmWriterInst.cpp \
- CallingConvEmitter.cpp \
- ClangASTNodesEmitter.cpp \
- ClangAttrEmitter.cpp \
- ClangDiagnosticsEmitter.cpp \
- CodeEmitterGen.cpp \
- CodeGenDAGPatterns.cpp \
- CodeGenInstruction.cpp \
- CodeGenTarget.cpp \
- DAGISelEmitter.cpp \
- DAGISelMatcher.cpp \
- DAGISelMatcherEmitter.cpp \
- DAGISelMatcherGen.cpp \
- DAGISelMatcherOpt.cpp \
- DisassemblerEmitter.cpp \
- EDEmitter.cpp \
- FastISelEmitter.cpp \
- InstrEnumEmitter.cpp \
- InstrInfoEmitter.cpp \
- IntrinsicEmitter.cpp \
- LLVMCConfigurationEmitter.cpp \
- NeonEmitter.cpp \
- OptParserEmitter.cpp \
- Record.cpp \
- RegisterInfoEmitter.cpp \
- SubtargetEmitter.cpp \
- TGLexer.cpp \
- TGParser.cpp \
- TGValueTypes.cpp \
- TableGen.cpp \
- TableGenBackend.cpp \
- X86DisassemblerTables.cpp \
+ AsmMatcherEmitter.cpp \
+ AsmWriterEmitter.cpp \
+ AsmWriterInst.cpp \
+ CallingConvEmitter.cpp \
+ ClangASTNodesEmitter.cpp \
+ ClangAttrEmitter.cpp \
+ ClangDiagnosticsEmitter.cpp \
+ CodeEmitterGen.cpp \
+ CodeGenDAGPatterns.cpp \
+ CodeGenInstruction.cpp \
+ CodeGenTarget.cpp \
+ DAGISelEmitter.cpp \
+ DAGISelMatcher.cpp \
+ DAGISelMatcherEmitter.cpp \
+ DAGISelMatcherGen.cpp \
+ DAGISelMatcherOpt.cpp \
+ DisassemblerEmitter.cpp \
+ EDEmitter.cpp \
+ FastISelEmitter.cpp \
+ InstrEnumEmitter.cpp \
+ InstrInfoEmitter.cpp \
+ IntrinsicEmitter.cpp \
+ LLVMCConfigurationEmitter.cpp \
+ NeonEmitter.cpp \
+ OptParserEmitter.cpp \
+ Record.cpp \
+ RegisterInfoEmitter.cpp \
+ StringMatcher.cpp \
+ SubtargetEmitter.cpp \
+ TGLexer.cpp \
+ TGParser.cpp \
+ TGValueTypes.cpp \
+ TableGen.cpp \
+ TableGenBackend.cpp \
+ X86DisassemblerTables.cpp \
X86RecognizableInstr.cpp
REQUIRES_EH := 1