forked from OSchip/llvm-project
[clang] [Darwin] Add reverse mappings for aarch64/aarch64_32 to darwin arch names
These are mapped in MachO::getMachOArchName already, but were missing in ToolChain::getDefaultUniversalArchName. Having these reverse mapped here fixes weird inconsistencies like -dumpmachine showing a target triple like "aarch64-apple-darwin", while "clang -target aarch64-apple-darwin" didn't use to work (ended up mapped as unknown-apple-ios). Differential Revision: https://reviews.llvm.org/D79117
This commit is contained in:
parent
d20a3d35e1
commit
ac1f7ab007
|
@ -230,9 +230,12 @@ ToolChain::getTargetAndModeFromProgramName(StringRef PN) {
|
|||
StringRef ToolChain::getDefaultUniversalArchName() const {
|
||||
// In universal driver terms, the arch name accepted by -arch isn't exactly
|
||||
// the same as the ones that appear in the triple. Roughly speaking, this is
|
||||
// an inverse of the darwin::getArchTypeForDarwinArchName() function, but the
|
||||
// only interesting special case is powerpc.
|
||||
// an inverse of the darwin::getArchTypeForDarwinArchName() function.
|
||||
switch (Triple.getArch()) {
|
||||
case llvm::Triple::aarch64:
|
||||
return "arm64";
|
||||
case llvm::Triple::aarch64_32:
|
||||
return "arm64_32";
|
||||
case llvm::Triple::ppc:
|
||||
return "ppc";
|
||||
case llvm::Triple::ppc64:
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
// RUN: %clang -target aarch64-apple-darwin %s -miphoneos-version-min=8.0 -### 2>&1 | FileCheck %s
|
||||
|
||||
// CHECK: "-cc1"{{.*}} "-triple" "arm64-apple-ios8.0.0"
|
Loading…
Reference in New Issue