forked from OSchip/llvm-project
[mips] Use more conservative default CPUs for MIPS on FreeBSD.
FreeBSD defaults to mips3 for all MIPS ABIs with GCC as that is the minimum MIPS architecture FreeBSD supports. Use mips3 for MIPS64 and mips2 for MIPS32 to match. Reviewed By: atanasyan Differential Revision: https://reviews.llvm.org/D48499 llvm-svn: 335653
This commit is contained in:
parent
fb9c440ba5
commit
2a2945a3c5
|
@ -45,6 +45,13 @@ void mips::getMipsCPUAndABI(const ArgList &Args, const llvm::Triple &Triple,
|
|||
if (Triple.getOS() == llvm::Triple::OpenBSD)
|
||||
DefMips64CPU = "mips3";
|
||||
|
||||
// MIPS2 is the default for mips(el)?-unknown-freebsd.
|
||||
// MIPS3 is the default for mips64(el)?-unknown-freebsd.
|
||||
if (Triple.getOS() == llvm::Triple::FreeBSD) {
|
||||
DefMips32CPU = "mips2";
|
||||
DefMips64CPU = "mips3";
|
||||
}
|
||||
|
||||
if (Arg *A = Args.getLastArg(clang::driver::options::OPT_march_EQ,
|
||||
options::OPT_mcpu_EQ))
|
||||
CPUName = A->getValue();
|
||||
|
|
|
@ -3,62 +3,62 @@
|
|||
// RUN: %clang -target mips-unknown-freebsd -### \
|
||||
// RUN: -no-integrated-as -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS32-EB-AS %s
|
||||
// MIPS32-EB-AS: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-EB"
|
||||
// MIPS32-EB-AS: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EB"
|
||||
// MIPS32-EB-AS-NOT: "-KPIC"
|
||||
//
|
||||
// RUN: %clang -target mips-unknown-freebsd -### \
|
||||
// RUN: -no-integrated-as -fPIC -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS32-EB-PIC %s
|
||||
// MIPS32-EB-PIC: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-EB"
|
||||
// MIPS32-EB-PIC: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EB"
|
||||
// MIPS32-EB-PIC: "-KPIC"
|
||||
//
|
||||
// RUN: %clang -target mips-unknown-freebsd -### \
|
||||
// RUN: -no-integrated-as -fpic -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS32-EB-PIC-SMALL %s
|
||||
// MIPS32-EB-PIC-SMALL: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-EB"
|
||||
// MIPS32-EB-PIC-SMALL: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EB"
|
||||
// MIPS32-EB-PIC-SMALL: "-KPIC"
|
||||
//
|
||||
// RUN: %clang -target mips-unknown-freebsd -### \
|
||||
// RUN: -no-integrated-as -fPIE -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS32-EB-PIE %s
|
||||
// MIPS32-EB-PIE: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-EB"
|
||||
// MIPS32-EB-PIE: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EB"
|
||||
// MIPS32-EB-PIE: "-KPIC"
|
||||
//
|
||||
// RUN: %clang -target mips-unknown-freebsd -### \
|
||||
// RUN: -no-integrated-as -fpie -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS32-EB-PIE-SMALL %s
|
||||
// MIPS32-EB-PIE-SMALL: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-EB"
|
||||
// MIPS32-EB-PIE-SMALL: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EB"
|
||||
// MIPS32-EB-PIE-SMALL: "-KPIC"
|
||||
//
|
||||
// RUN: %clang -target mipsel-unknown-freebsd -### \
|
||||
// RUN: -no-integrated-as -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS32-DEF-EL-AS %s
|
||||
// MIPS32-DEF-EL-AS: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-EL"
|
||||
// MIPS32-DEF-EL-AS: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EL"
|
||||
//
|
||||
// RUN: %clang -target mips64-unknown-freebsd -### \
|
||||
// RUN: -no-integrated-as -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS64-EB-AS %s
|
||||
// MIPS64-EB-AS: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-EB"
|
||||
// MIPS64-EB-AS: as{{(.exe)?}}" "-march" "mips3" "-mabi" "64" "-EB"
|
||||
//
|
||||
// RUN: %clang -target mips64el-unknown-freebsd -### \
|
||||
// RUN: -no-integrated-as -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS64-DEF-EL-AS %s
|
||||
// MIPS64-DEF-EL-AS: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-EL"
|
||||
// MIPS64-DEF-EL-AS: as{{(.exe)?}}" "-march" "mips3" "-mabi" "64" "-EL"
|
||||
//
|
||||
// RUN: %clang -target mips64-unknown-freebsd -mabi=n32 -### \
|
||||
// RUN: -no-integrated-as -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS-N32 %s
|
||||
// MIPS-N32: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "n32" "-EB"
|
||||
// MIPS-N32: as{{(.exe)?}}" "-march" "mips3" "-mabi" "n32" "-EB"
|
||||
//
|
||||
// RUN: %clang -target mipsel-unknown-freebsd -mabi=32 -### \
|
||||
// RUN: -no-integrated-as -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS32-EL-AS %s
|
||||
// MIPS32-EL-AS: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-EL"
|
||||
// MIPS32-EL-AS: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EL"
|
||||
//
|
||||
// RUN: %clang -target mips64el-unknown-freebsd -mabi=64 -### \
|
||||
// RUN: -no-integrated-as -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS64-EL-AS %s
|
||||
// MIPS64-EL-AS: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-EL"
|
||||
// MIPS64-EL-AS: as{{(.exe)?}}" "-march" "mips3" "-mabi" "64" "-EL"
|
||||
//
|
||||
// RUN: %clang -target mips-linux-freebsd -march=mips32r2 -### \
|
||||
// RUN: -no-integrated-as -c %s 2>&1 \
|
||||
|
@ -88,5 +88,5 @@
|
|||
// RUN: %clang -target mips-unknown-freebsd -### \
|
||||
// RUN: -no-integrated-as -G0 -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=MIPS32-EB-AS-G0 %s
|
||||
// MIPS32-EB-AS-G0: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-EB" "-G0"
|
||||
// MIPS32-EB-AS-G0: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EB" "-G0"
|
||||
// MIPS32-EB-AS-G0-NOT: "-KPIC"
|
||||
|
|
|
@ -148,3 +148,17 @@
|
|||
// RUN: %clang -target mips-unknown-freebsd %s -### -G0 2>&1 \
|
||||
// RUN: | FileCheck --check-prefix=CHECK-MIPS-G %s
|
||||
// CHECK-MIPS-G: ld{{.*}}" "-G0"
|
||||
|
||||
// Check CPU type for MIPS
|
||||
// RUN: %clang -target mips-unknown-freebsd -### -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=CHECK-MIPS-CPU %s
|
||||
// RUN: %clang -target mipsel-unknown-freebsd -### -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=CHECK-MIPS-CPU %s
|
||||
// CHECK-MIPS-CPU: "-target-cpu" "mips2"
|
||||
|
||||
// Check CPU type for MIPS64
|
||||
// RUN: %clang -target mips64-unknown-freebsd -### -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=CHECK-MIPS64-CPU %s
|
||||
// RUN: %clang -target mips64el-unknown-freebsd -### -c %s 2>&1 \
|
||||
// RUN: | FileCheck -check-prefix=CHECK-MIPS64-CPU %s
|
||||
// CHECK-MIPS64-CPU: "-target-cpu" "mips3"
|
||||
|
|
Loading…
Reference in New Issue