summaryrefslogtreecommitdiff
path: root/llvm/lib/Target/AArch64/AArch64Subtarget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Target/AArch64/AArch64Subtarget.cpp')
-rw-r--r--llvm/lib/Target/AArch64/AArch64Subtarget.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/llvm/lib/Target/AArch64/AArch64Subtarget.cpp b/llvm/lib/Target/AArch64/AArch64Subtarget.cpp
index 558bea368eff..3636d8d2b628 100644
--- a/llvm/lib/Target/AArch64/AArch64Subtarget.cpp
+++ b/llvm/lib/Target/AArch64/AArch64Subtarget.cpp
@@ -88,18 +88,16 @@ void AArch64Subtarget::initializeProperties() {
case CortexA76:
PrefFunctionLogAlignment = 4;
break;
- case Cyclone:
+ case AppleA7:
+ case AppleA10:
+ case AppleA11:
+ case AppleA12:
+ case AppleA13:
CacheLineSize = 64;
PrefetchDistance = 280;
MinPrefetchStride = 2048;
MaxPrefetchIterationsAhead = 3;
break;
- case ExynosM1:
- MaxInterleaveFactor = 4;
- MaxJumpTableSize = 8;
- PrefFunctionLogAlignment = 4;
- PrefLoopLogAlignment = 3;
- break;
case ExynosM3:
MaxInterleaveFactor = 4;
MaxJumpTableSize = 20;
@@ -257,6 +255,10 @@ unsigned AArch64Subtarget::classifyGlobalFunctionReference(
!TM.shouldAssumeDSOLocal(*GV->getParent(), GV))
return AArch64II::MO_GOT;
+ // Use ClassifyGlobalReference for setting MO_DLLIMPORT/MO_COFFSTUB.
+ if (getTargetTriple().isOSWindows())
+ return ClassifyGlobalReference(GV, TM);
+
return AArch64II::MO_NO_FLAG;
}