CodeGen: Eliminate a use of getDarwinMajorNumber().

- There is a minor semantic change here (evidenced by the test change) for
   Darwin triples that have no version component. I debated changing the default
   behavior of isOSVersionLT, but decided it made more sense for triples to be
   explicit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129802 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Daniel Dunbar 2011-04-19 20:32:39 +00:00
parent 4860fe0ad0
commit ebc5066b9b
2 changed files with 4 additions and 12 deletions

View File

@ -479,18 +479,10 @@ void TargetLoweringObjectFileMachO::Initialize(MCContext &Ctx,
IsFunctionEHFrameSymbolPrivate = false;
SupportsWeakOmittedEHFrame = false;
// .comm doesn't support alignment before Leopard.
Triple T(((LLVMTargetMachine&)TM).getTargetTriple());
if (T.getOS() == Triple::Darwin) {
switch (T.getDarwinMajorNumber()) {
case 7: // 10.3 Panther.
case 8: // 10.4 Tiger.
if (T.isOSX() && T.isOSXVersionLT(10, 5))
CommDirectiveSupportsAlignment = false;
break;
case 9: // 10.5 Leopard.
case 10: // 10.6 SnowLeopard.
break;
}
}
TargetLoweringObjectFile::Initialize(Ctx, TM);

View File

@ -1,5 +1,5 @@
; RUN: llc < %s -mtriple=arm-linux-gnueabi | FileCheck %s -check-prefix=ELF
; RUN: llc < %s -mtriple=arm-apple-darwin | FileCheck %s -check-prefix=DARWIN
; RUN: llc < %s -mtriple=arm-apple-darwin10 | FileCheck %s -check-prefix=DARWIN
@a = global i1 true
; no alignment