return getAArch64MicroArchFeaturesFromMtune(D, CPU, Args, Features);
}
-static void getAArch64TargetFeatures(const Driver &D,
- const llvm::Triple &Triple,
- const ArgList &Args,
+static void getAArch64TargetFeatures(const Driver &D, const ArgList &Args,
std::vector<const char *> &Features) {
Arg *A;
bool success = true;
if (A->getOption().matches(options::OPT_mno_unaligned_access))
Features.push_back("+strict-align");
- if (Args.hasArg(options::OPT_ffixed_x18) || Triple.isOSDarwin())
+ if (Args.hasArg(options::OPT_ffixed_x18))
Features.push_back("+reserve-x18");
}
break;
case llvm::Triple::aarch64:
case llvm::Triple::aarch64_be:
- getAArch64TargetFeatures(D, Triple, Args, Features);
+ getAArch64TargetFeatures(D, Args, Features);
break;
case llvm::Triple::x86:
case llvm::Triple::x86_64:
// RUN: %clang -target aarch64-none-gnu -ffixed-x18 -### %s 2> %t
// RUN: FileCheck --check-prefix=CHECK-FIXED-X18 < %t %s
-// RUN: %clang -target aarch64-none-gnu -### %s 2> %t
-// RUN: FileCheck --check-prefix=CHECK-NO-FIXED-X18 < %t %s
-// RUN: %clang -target -arm64-apple-ios -### %s 2> %t
-// RUN: FileCheck --check-prefix=CHECK-FIXED-X18 < %t %s
// CHECK-FIXED-X18: "-target-feature" "+reserve-x18"
-// CHECK-NO-FIXED-X18-NOT: "-target-feature" "+reserve-x18"