diff --git a/lib/Support/Triple.cpp b/lib/Support/Triple.cpp index f3a654d7d2b..eb8108908ac 100644 --- a/lib/Support/Triple.cpp +++ b/lib/Support/Triple.cpp @@ -459,7 +459,7 @@ static Triple::OSType parseOS(StringRef OSName) { .StartsWith("kfreebsd", Triple::KFreeBSD) .StartsWith("linux", Triple::Linux) .StartsWith("lv2", Triple::Lv2) - .StartsWith("macosx", Triple::MacOSX) + .StartsWith("macos", Triple::MacOSX) .StartsWith("netbsd", Triple::NetBSD) .StartsWith("openbsd", Triple::OpenBSD) .StartsWith("solaris", Triple::Solaris) @@ -984,6 +984,8 @@ void Triple::getOSVersion(unsigned &Major, unsigned &Minor, StringRef OSTypeName = getOSTypeName(getOS()); if (OSName.startswith(OSTypeName)) OSName = OSName.substr(OSTypeName.size()); + else if (getOS() == MacOSX) + OSName.consume_front("macos"); parseVersionFromName(OSName, Major, Minor, Micro); } diff --git a/test/CodeGen/X86/version_directive.ll b/test/CodeGen/X86/version_directive.ll index 8e4e6dc70e6..ac5eda71dbc 100644 --- a/test/CodeGen/X86/version_directive.ll +++ b/test/CodeGen/X86/version_directive.ll @@ -1,4 +1,5 @@ ; RUN: llc -mtriple x86_64-apple-darwin15.0.0 -o - /dev/null | FileCheck %s ; RUN: llc -mtriple x86_64-apple-macosx10.11.0 -o - /dev/null | FileCheck %s +; RUN: llc -mtriple x86_64-apple-macos10.11.0 -o - /dev/null | FileCheck %s ; CHECK: .macosx_version_min 10, 11