From: Brad Smith Date: Tue, 6 Jan 2015 02:53:17 +0000 (+0000) Subject: Set the default ISA for OpenBSD/mips64 to MIPS III. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=94b0e1bbde5e930ec51d5f922928c07c82a943f8;p=clang Set the default ISA for OpenBSD/mips64 to MIPS III. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@225241 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp index e672d6c311..fb707f5c29 100644 --- a/lib/Driver/Tools.cpp +++ b/lib/Driver/Tools.cpp @@ -977,6 +977,10 @@ void mips::getMipsCPUAndABI(const ArgList &Args, DefMips64CPU = "mips64r6"; } + // MIPS3 is the default for mips64*-unknown-openbsd. + if (Triple.getOS() == llvm::Triple::OpenBSD) + DefMips64CPU = "mips3"; + if (Arg *A = Args.getLastArg(options::OPT_march_EQ, options::OPT_mcpu_EQ)) CPUName = A->getValue(); diff --git a/test/Driver/openbsd.c b/test/Driver/openbsd.c index d263f485bf..6abf040be0 100644 --- a/test/Driver/openbsd.c +++ b/test/Driver/openbsd.c @@ -8,6 +8,14 @@ // CHECK-PG: clang{{.*}}" "-cc1" "-triple" "i686-pc-openbsd" // CHECK-PG: ld{{.*}}" "-e" "__start" "--eh-frame-hdr" "-Bdynamic" "-dynamic-linker" "{{.*}}ld.so" "-o" "a.out" "{{.*}}gcrt0.o" "{{.*}}crtbegin.o" "{{.*}}.o" "-lgcc" "-lpthread_p" "-lc_p" "-lgcc" "{{.*}}crtend.o" +// Check CPU type for MIPS64 +// RUN: %clang -target mips64-unknown-openbsd -### -c %s 2>&1 \ +// RUN: | FileCheck -check-prefix=CHECK-MIPS64-CPU %s +// RUN: %clang -target mips64el-unknown-openbsd -### -c %s 2>&1 \ +// RUN: | FileCheck -check-prefix=CHECK-MIPS64EL-CPU %s +// CHECK-MIPS64-CPU: "-target-cpu" "mips3" +// CHECK-MIPS64EL-CPU: "-target-cpu" "mips3" + // Check that the new linker flags are passed to OpenBSD // RUN: %clang -no-canonical-prefixes -target i686-pc-openbsd -r %s -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-LD-R %s