summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Hines <srhines@google.com>2014-02-06 23:41:26 -0800
committerStephen Hines <srhines@google.com>2014-02-13 13:31:07 -0800
commit373aa5c665fe6df6b9c5586d397dc3617f25aab5 (patch)
tree44dcdf3911fadedb91a9077131708f4aa6e8245f
parentce9904c6ea8fd669978a8eefb854b330eb9828ff (diff)
downloadexternal_llvm-373aa5c665fe6df6b9c5586d397dc3617f25aab5.zip
external_llvm-373aa5c665fe6df6b9c5586d397dc3617f25aab5.tar.gz
external_llvm-373aa5c665fe6df6b9c5586d397dc3617f25aab5.tar.bz2
Update LLVM for merge to 3.4.
Update config.h files. Add RS SubtargetFeature for +long64 on ARM devices. Adjust Android.mk for added/removed files: + Delinearization.cpp - PathNumbering.cpp - PathProfileInfo.cpp - PathProfileVerifier.cpp - ProfileDataLoader.cpp - ProfileDataLoaderPass.cpp - ProfileEstimatorPass.cpp - ProfileInfo.cpp - ProfileInfoLoader.cpp - ProfileInfoLoaderPass.cpp - ProfileVerifierPass.cpp + LiveRegUnits.cpp - ShrinkWrapping.cpp + StackMaps.cpp - StrongPHIElimination.cpp + DIEHash.cpp + LegacyPassManager.cpp + ELF.cpp + Unicode.cpp - MipsOptimizeMathLibCalls.cpp - MipsELFStreamer.cpp + MipsTargetStreamer.cpp - EdgeProfiling.cpp + DataFlowSanitizer.cpp + DebugIR.cpp - OptimalEdgeProfiling.cpp - PathProfiling.cpp - ProfilingUtils.cpp - BasicBlockPlacement.cpp + LoopRerollPass.cpp + PartiallyInlineLibCalls.cpp + SampleProfile.cpp + GlobalStatus.cpp Change-Id: I17dcf0bf53a1720acd8226ae3e30d84993562a91
-rw-r--r--README.android3
-rw-r--r--device/include/llvm/Config/config.h6
-rw-r--r--device/include/llvm/Config/llvm-config.h2
-rw-r--r--host/include/llvm/Config/config.h6
-rw-r--r--host/include/llvm/Config/llvm-config.h2
-rw-r--r--lib/Analysis/Android.mk11
-rw-r--r--lib/CodeGen/Android.mk4
-rw-r--r--lib/CodeGen/AsmPrinter/Android.mk2
-rw-r--r--lib/IR/Android.mk1
-rw-r--r--lib/MC/Android.mk1
-rw-r--r--lib/Object/Android.mk1
-rw-r--r--lib/Support/Android.mk1
-rw-r--r--lib/Target/ARM/ARM.td6
-rw-r--r--lib/Target/ARM/ARMSubtarget.cpp1
-rw-r--r--lib/Target/ARM/ARMSubtarget.h3
-rw-r--r--lib/Target/Mips/Android.mk1
-rw-r--r--lib/Target/Mips/MCTargetDesc/Android.mk4
-rw-r--r--lib/Transforms/Instrumentation/Android.mk6
-rw-r--r--lib/Transforms/Scalar/Android.mk4
-rw-r--r--lib/Transforms/Utils/Android.mk1
20 files changed, 38 insertions, 28 deletions
diff --git a/README.android b/README.android
index 3cac705..d9942ee 100644
--- a/README.android
+++ b/README.android
@@ -22,7 +22,10 @@
* For Jellybean MR1: Synced to upstream r162314
* For Jellybean MR2: Synced to upstream r177342
* For Key Lime Pie: Synced to upstream r187913
+* For FUTURE: Synced to LLVM 3.4 r197944
+* Cherry-pick on 2014/2/13: https://llvm.org/svn/llvm-project/llvm/trunk@201362 (Contact srhines for merge questions.)
+* Recent downstreaming on 2014/2/11: Synced to r197944 (Contact srhines for merge questions.)
* Recent downstreaming on 2013/8/8: Synced to r187913 (Contact srhines for merge questions.)
* Recent downstreaming on 2013/6/13: Synced to r183849 (Contact srhines for merge questions.)
* Recent downstreaming on 2013/5/3: Synced to r180947 (Contact srhines for merge questions.)
diff --git a/device/include/llvm/Config/config.h b/device/include/llvm/Config/config.h
index 9c963c8..f76132a 100644
--- a/device/include/llvm/Config/config.h
+++ b/device/include/llvm/Config/config.h
@@ -613,7 +613,7 @@
#define LLVM_VERSION_MAJOR 3
/* Minor version of the LLVM API */
-#define LLVM_VERSION_MINOR 3
+#define LLVM_VERSION_MINOR 4
/* Define if the OS needs help to load dependent libraries for dlopen(). */
/* #undef LTDL_DLOPEN_DEPLIBS */
@@ -646,13 +646,13 @@
#define PACKAGE_NAME "LLVM"
/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "LLVM 3.1svn"
+#define PACKAGE_STRING "LLVM 3.4"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "llvm"
/* Define to the version of this package. */
-#define PACKAGE_VERSION "3.1svn"
+#define PACKAGE_VERSION "3.4"
/* Define as the return type of signal handlers (`int' or `void'). */
#define RETSIGTYPE void
diff --git a/device/include/llvm/Config/llvm-config.h b/device/include/llvm/Config/llvm-config.h
index e809281..637daed 100644
--- a/device/include/llvm/Config/llvm-config.h
+++ b/device/include/llvm/Config/llvm-config.h
@@ -87,7 +87,7 @@
#define LLVM_VERSION_MAJOR 3
/* Minor version of the LLVM API */
-#define LLVM_VERSION_MINOR 3
+#define LLVM_VERSION_MINOR 4
#include "llvm/Config/llvm-platform-config.h"
diff --git a/host/include/llvm/Config/config.h b/host/include/llvm/Config/config.h
index c889158..6e2bea5 100644
--- a/host/include/llvm/Config/config.h
+++ b/host/include/llvm/Config/config.h
@@ -646,7 +646,7 @@
#define LLVM_VERSION_MAJOR 3
/* Minor version of the LLVM API */
-#define LLVM_VERSION_MINOR 3
+#define LLVM_VERSION_MINOR 4
/* Define if the OS needs help to load dependent libraries for dlopen(). */
/* #undef LTDL_DLOPEN_DEPLIBS */
@@ -679,13 +679,13 @@
#define PACKAGE_NAME "LLVM"
/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "LLVM 3.3"
+#define PACKAGE_STRING "LLVM 3.4"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "llvm"
/* Define to the version of this package. */
-#define PACKAGE_VERSION "3.3"
+#define PACKAGE_VERSION "3.4"
/* Define as the return type of signal handlers (`int' or `void'). */
#define RETSIGTYPE void
diff --git a/host/include/llvm/Config/llvm-config.h b/host/include/llvm/Config/llvm-config.h
index 8637f41..5f3596e 100644
--- a/host/include/llvm/Config/llvm-config.h
+++ b/host/include/llvm/Config/llvm-config.h
@@ -95,7 +95,7 @@
#define LLVM_VERSION_MAJOR 3
/* Minor version of the LLVM API */
-#define LLVM_VERSION_MINOR 3
+#define LLVM_VERSION_MINOR 4
#include "llvm/Config/llvm-platform-config.h"
diff --git a/lib/Analysis/Android.mk b/lib/Analysis/Android.mk
index 7e0bccc..86d71f0 100644
--- a/lib/Analysis/Android.mk
+++ b/lib/Analysis/Android.mk
@@ -16,6 +16,7 @@ analysis_SRC_FILES := \
CodeMetrics.cpp \
ConstantFolding.cpp \
CostModel.cpp \
+ Delinearization.cpp \
DependenceAnalysis.cpp \
DomPrinter.cpp \
DominanceFrontier.cpp \
@@ -37,17 +38,7 @@ analysis_SRC_FILES := \
ModuleDebugInfoPrinter.cpp \
NoAliasAnalysis.cpp \
PHITransAddr.cpp \
- PathNumbering.cpp \
- PathProfileInfo.cpp \
- PathProfileVerifier.cpp \
PostDominators.cpp \
- ProfileDataLoader.cpp \
- ProfileDataLoaderPass.cpp \
- ProfileEstimatorPass.cpp \
- ProfileInfo.cpp \
- ProfileInfoLoader.cpp \
- ProfileInfoLoaderPass.cpp \
- ProfileVerifierPass.cpp \
PtrUseVisitor.cpp \
RegionInfo.cpp \
RegionPass.cpp \
diff --git a/lib/CodeGen/Android.mk b/lib/CodeGen/Android.mk
index 3ac7c19..be0c6e2 100644
--- a/lib/CodeGen/Android.mk
+++ b/lib/CodeGen/Android.mk
@@ -36,6 +36,7 @@ codegen_SRC_FILES := \
LiveRangeCalc.cpp \
LiveRangeEdit.cpp \
LiveRegMatrix.cpp \
+ LiveRegUnits.cpp \
LiveStackAnalysis.cpp \
LiveVariables.cpp \
LLVMTargetMachine.cpp \
@@ -90,16 +91,15 @@ codegen_SRC_FILES := \
ScheduleDAGPrinter.cpp \
ScoreboardHazardRecognizer.cpp \
ShadowStackGC.cpp \
- ShrinkWrapping.cpp \
SjLjEHPrepare.cpp \
SlotIndexes.cpp \
Spiller.cpp \
SpillPlacement.cpp \
SplitKit.cpp \
StackColoring.cpp \
+ StackMaps.cpp \
StackProtector.cpp \
StackSlotColoring.cpp \
- StrongPHIElimination.cpp \
TailDuplication.cpp \
TargetFrameLoweringImpl.cpp \
TargetInstrInfo.cpp \
diff --git a/lib/CodeGen/AsmPrinter/Android.mk b/lib/CodeGen/AsmPrinter/Android.mk
index d408475..b2cc47e 100644
--- a/lib/CodeGen/AsmPrinter/Android.mk
+++ b/lib/CodeGen/AsmPrinter/Android.mk
@@ -13,6 +13,7 @@ LOCAL_SRC_FILES := \
AsmPrinterInlineAsm.cpp \
ARMException.cpp \
DIE.cpp \
+ DIEHash.cpp \
DwarfAccelTable.cpp \
DwarfCFIException.cpp \
DwarfCompileUnit.cpp \
@@ -40,6 +41,7 @@ LOCAL_SRC_FILES := \
AsmPrinterInlineAsm.cpp \
ARMException.cpp \
DIE.cpp \
+ DIEHash.cpp \
DwarfAccelTable.cpp \
DwarfCFIException.cpp \
DwarfCompileUnit.cpp \
diff --git a/lib/IR/Android.mk b/lib/IR/Android.mk
index 6df36f8..b2b99e4 100644
--- a/lib/IR/Android.mk
+++ b/lib/IR/Android.mk
@@ -24,6 +24,7 @@ vmcore_SRC_FILES := \
LLVMContext.cpp \
LLVMContextImpl.cpp \
LeakDetector.cpp \
+ LegacyPassManager.cpp \
Metadata.cpp \
Module.cpp \
Pass.cpp \
diff --git a/lib/MC/Android.mk b/lib/MC/Android.mk
index 6c69ca2..ed0a43f 100644
--- a/lib/MC/Android.mk
+++ b/lib/MC/Android.mk
@@ -7,6 +7,7 @@ mc_SRC_FILES := \
MCAsmInfo.cpp \
MCAsmInfoCOFF.cpp \
MCAsmInfoDarwin.cpp \
+ MCAsmInfoELF.cpp \
MCAsmStreamer.cpp \
MCAssembler.cpp \
MCCodeEmitter.cpp \
diff --git a/lib/Object/Android.mk b/lib/Object/Android.mk
index 09dcda6..93b5434 100644
--- a/lib/Object/Android.mk
+++ b/lib/Object/Android.mk
@@ -4,6 +4,7 @@ object_SRC_FILES := \
Archive.cpp \
Binary.cpp \
COFFObjectFile.cpp \
+ ELF.cpp \
ELFObjectFile.cpp \
Error.cpp \
MachOObjectFile.cpp \
diff --git a/lib/Support/Android.mk b/lib/Support/Android.mk
index f07ad12..e4c1175 100644
--- a/lib/Support/Android.mk
+++ b/lib/Support/Android.mk
@@ -68,6 +68,7 @@ support_SRC_FILES := \
ToolOutputFile.cpp \
Triple.cpp \
Twine.cpp \
+ Unicode.cpp \
Valgrind.cpp \
Watchdog.cpp \
circular_raw_ostream.cpp \
diff --git a/lib/Target/ARM/ARM.td b/lib/Target/ARM/ARM.td
index 36e5680..b73e981 100644
--- a/lib/Target/ARM/ARM.td
+++ b/lib/Target/ARM/ARM.td
@@ -227,6 +227,12 @@ def ProcR5 : SubtargetFeature<"r5", "ARMProcFamily", "CortexR5",
FeatureAvoidPartialCPSR,
FeatureT2XtPk]>;
+// RenderScript-specific support for 64-bit long types on all targets
+def FeatureLong64 : SubtargetFeature<"long64", "UseLong64",
+ "true",
+ "long type is forced to be 64-bit">;
+
+
class ProcNoItin<string Name, list<SubtargetFeature> Features>
: Processor<Name, NoItineraries, Features>;
diff --git a/lib/Target/ARM/ARMSubtarget.cpp b/lib/Target/ARM/ARMSubtarget.cpp
index 8351c63..2d749af 100644
--- a/lib/Target/ARM/ARMSubtarget.cpp
+++ b/lib/Target/ARM/ARMSubtarget.cpp
@@ -135,6 +135,7 @@ void ARMSubtarget::initializeEnvironment() {
Thumb2DSP = false;
UseNaClTrap = false;
UnsafeFPMath = false;
+ UseLong64 = false;
}
void ARMSubtarget::resetSubtargetFeatures(const MachineFunction *MF) {
diff --git a/lib/Target/ARM/ARMSubtarget.h b/lib/Target/ARM/ARMSubtarget.h
index 5276901..567463c 100644
--- a/lib/Target/ARM/ARMSubtarget.h
+++ b/lib/Target/ARM/ARMSubtarget.h
@@ -191,6 +191,9 @@ protected:
/// Target machine allowed unsafe FP math (such as use of NEON fp)
bool UnsafeFPMath;
+ /// Force long to be a 64-bit type (RenderScript-specific)
+ bool UseLong64;
+
/// stackAlignment - The minimum alignment known to hold of the stack frame on
/// entry to the function and which must be maintained by every function.
unsigned stackAlignment;
diff --git a/lib/Target/Mips/Android.mk b/lib/Target/Mips/Android.mk
index 954b1d0..1af5985 100644
--- a/lib/Target/Mips/Android.mk
+++ b/lib/Target/Mips/Android.mk
@@ -32,7 +32,6 @@ mips_codegen_SRC_FILES := \
MipsMachineFunction.cpp \
MipsMCInstLower.cpp \
MipsModuleISelDAGToDAG.cpp \
- MipsOptimizeMathLibCalls.cpp \
MipsOs16.cpp \
MipsRegisterInfo.cpp \
MipsSEFrameLowering.cpp \
diff --git a/lib/Target/Mips/MCTargetDesc/Android.mk b/lib/Target/Mips/MCTargetDesc/Android.mk
index fcf58c3..a2a7d63 100644
--- a/lib/Target/Mips/MCTargetDesc/Android.mk
+++ b/lib/Target/Mips/MCTargetDesc/Android.mk
@@ -9,11 +9,11 @@ mips_mc_desc_TBLGEN_TABLES := \
mips_mc_desc_SRC_FILES := \
MipsAsmBackend.cpp \
MipsELFObjectWriter.cpp \
- MipsELFStreamer.cpp \
MipsMCAsmInfo.cpp \
MipsMCCodeEmitter.cpp \
MipsMCTargetDesc.cpp \
- MipsReginfo.cpp
+ MipsReginfo.cpp \
+ MipsTargetStreamer.cpp
# For the host
# =====================================================
diff --git a/lib/Transforms/Instrumentation/Android.mk b/lib/Transforms/Instrumentation/Android.mk
index 7182e50..cd90933 100644
--- a/lib/Transforms/Instrumentation/Android.mk
+++ b/lib/Transforms/Instrumentation/Android.mk
@@ -3,13 +3,11 @@ LOCAL_PATH:= $(call my-dir)
instrumentation_SRC_FILES := \
AddressSanitizer.cpp \
BoundsChecking.cpp \
- EdgeProfiling.cpp \
+ DataFlowSanitizer.cpp \
+ DebugIR.cpp \
GCOVProfiling.cpp \
Instrumentation.cpp \
MemorySanitizer.cpp \
- OptimalEdgeProfiling.cpp \
- PathProfiling.cpp \
- ProfilingUtils.cpp \
ThreadSanitizer.cpp
# For the host
diff --git a/lib/Transforms/Scalar/Android.mk b/lib/Transforms/Scalar/Android.mk
index d2e1478..7deb605 100644
--- a/lib/Transforms/Scalar/Android.mk
+++ b/lib/Transforms/Scalar/Android.mk
@@ -2,7 +2,6 @@ LOCAL_PATH:= $(call my-dir)
transforms_scalar_SRC_FILES := \
ADCE.cpp \
- BasicBlockPlacement.cpp \
CodeGenPrepare.cpp \
ConstantProp.cpp \
CorrelatedValuePropagation.cpp \
@@ -17,16 +16,19 @@ transforms_scalar_SRC_FILES := \
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 \
ScalarReplAggregates.cpp \
SimplifyCFGPass.cpp \
diff --git a/lib/Transforms/Utils/Android.mk b/lib/Transforms/Utils/Android.mk
index 9bf9ef3..73bb3bf 100644
--- a/lib/Transforms/Utils/Android.mk
+++ b/lib/Transforms/Utils/Android.mk
@@ -10,6 +10,7 @@ transforms_utils_SRC_FILES := \
CmpInstAnalysis.cpp \
CodeExtractor.cpp \
DemoteRegToStack.cpp \
+ GlobalStatus.cpp \
InlineFunction.cpp \
InstructionNamer.cpp \
LCSSA.cpp \