forked from OSchip/llvm-project
[driver][mips] Support MIPS R6 target triples
This change adds support for the following MIPS target triples: mipsisa32r6-linux-gnu mipsisa32r6el-linux-gnu mipsisa64r6-linux-gnuabi64 mipsisa64r6el-linux-gnuabi64 mipsisa64r6-linux-gnuabin32 mipsisa64r6el-linux-gnuabin32 Patch by Yun Qiang Su. Differential revision: https://reviews.llvm.org/D50850 llvm-svn: 344608
This commit is contained in:
parent
49b29eabc6
commit
eaab2b77e1
|
@ -35,6 +35,11 @@ void mips::getMipsCPUAndABI(const ArgList &Args, const llvm::Triple &Triple,
|
|||
DefMips64CPU = "mips64r6";
|
||||
}
|
||||
|
||||
if (Triple.getSubArch() == llvm::Triple::MipsSubArch_r6) {
|
||||
DefMips32CPU = "mips32r6";
|
||||
DefMips64CPU = "mips64r6";
|
||||
}
|
||||
|
||||
// MIPS64r6 is the default for Android MIPS64 (mips64el-linux-android).
|
||||
if (Triple.isAndroid()) {
|
||||
DefMips32CPU = "mips32";
|
||||
|
|
|
@ -1871,26 +1871,30 @@ void Generic_GCC::GCCInstallationDetector::AddDefaultGCCPrefixes(
|
|||
"i486-slackware-linux", "i686-montavista-linux", "i586-linux-gnu"};
|
||||
|
||||
static const char *const MIPSLibDirs[] = {"/lib"};
|
||||
static const char *const MIPSTriples[] = {"mips-linux-gnu", "mips-mti-linux",
|
||||
"mips-mti-linux-gnu",
|
||||
"mips-img-linux-gnu"};
|
||||
static const char *const MIPSTriples[] = {
|
||||
"mips-linux-gnu", "mips-mti-linux", "mips-mti-linux-gnu",
|
||||
"mips-img-linux-gnu", "mipsisa32r6-linux-gnu"};
|
||||
static const char *const MIPSELLibDirs[] = {"/lib"};
|
||||
static const char *const MIPSELTriples[] = {"mipsel-linux-gnu",
|
||||
"mips-img-linux-gnu"};
|
||||
static const char *const MIPSELTriples[] = {
|
||||
"mipsel-linux-gnu", "mips-img-linux-gnu", "mipsisa32r6el-linux-gnu"};
|
||||
|
||||
static const char *const MIPS64LibDirs[] = {"/lib64", "/lib"};
|
||||
static const char *const MIPS64Triples[] = {
|
||||
"mips64-linux-gnu", "mips-mti-linux-gnu", "mips-img-linux-gnu",
|
||||
"mips64-linux-gnuabi64"};
|
||||
"mips64-linux-gnu", "mips-mti-linux-gnu",
|
||||
"mips-img-linux-gnu", "mips64-linux-gnuabi64",
|
||||
"mipsisa64r6-linux-gnu", "mipsisa64r6-linux-gnuabi64"};
|
||||
static const char *const MIPS64ELLibDirs[] = {"/lib64", "/lib"};
|
||||
static const char *const MIPS64ELTriples[] = {
|
||||
"mips64el-linux-gnu", "mips-mti-linux-gnu", "mips-img-linux-gnu",
|
||||
"mips64el-linux-gnuabi64"};
|
||||
"mips64el-linux-gnu", "mips-mti-linux-gnu",
|
||||
"mips-img-linux-gnu", "mips64el-linux-gnuabi64",
|
||||
"mipsisa64r6el-linux-gnu", "mipsisa64r6el-linux-gnuabi64"};
|
||||
|
||||
static const char *const MIPSN32LibDirs[] = {"/lib32"};
|
||||
static const char *const MIPSN32Triples[] = {"mips64-linux-gnuabin32"};
|
||||
static const char *const MIPSN32Triples[] = {"mips64-linux-gnuabin32",
|
||||
"mipsisa64r6-linux-gnuabin32"};
|
||||
static const char *const MIPSN32ELLibDirs[] = {"/lib32"};
|
||||
static const char *const MIPSN32ELTriples[] = {"mips64el-linux-gnuabin32"};
|
||||
static const char *const MIPSN32ELTriples[] = {
|
||||
"mips64el-linux-gnuabin32", "mipsisa64r6el-linux-gnuabin32"};
|
||||
|
||||
static const char *const PPCLibDirs[] = {"/lib32", "/lib"};
|
||||
static const char *const PPCTriples[] = {
|
||||
|
|
|
@ -44,9 +44,7 @@ static std::string getMultiarchTriple(const Driver &D,
|
|||
llvm::Triple::EnvironmentType TargetEnvironment =
|
||||
TargetTriple.getEnvironment();
|
||||
bool IsAndroid = TargetTriple.isAndroid();
|
||||
std::string Mips64Abi = "gnuabi64";
|
||||
if (TargetEnvironment == llvm::Triple::GNUABIN32)
|
||||
Mips64Abi = "gnuabin32";
|
||||
bool IsMipsR6 = TargetTriple.getSubArch() == llvm::Triple::MipsSubArch_r6;
|
||||
|
||||
// For most architectures, just use whatever we have rather than trying to be
|
||||
// clever.
|
||||
|
@ -104,26 +102,36 @@ static std::string getMultiarchTriple(const Driver &D,
|
|||
if (D.getVFS().exists(SysRoot + "/lib/aarch64_be-linux-gnu"))
|
||||
return "aarch64_be-linux-gnu";
|
||||
break;
|
||||
case llvm::Triple::mips:
|
||||
if (D.getVFS().exists(SysRoot + "/lib/mips-linux-gnu"))
|
||||
return "mips-linux-gnu";
|
||||
case llvm::Triple::mips: {
|
||||
std::string Arch = IsMipsR6 ? "mipsisa32r6" : "mips";
|
||||
if (D.getVFS().exists(SysRoot + "/lib/" + Arch + "-linux-gnu"))
|
||||
return Arch + "-linux-gnu";
|
||||
break;
|
||||
case llvm::Triple::mipsel:
|
||||
}
|
||||
case llvm::Triple::mipsel: {
|
||||
if (IsAndroid)
|
||||
return "mipsel-linux-android";
|
||||
if (D.getVFS().exists(SysRoot + "/lib/mipsel-linux-gnu"))
|
||||
return "mipsel-linux-gnu";
|
||||
std::string Arch = IsMipsR6 ? "mipsisa32r6el" : "mipsel";
|
||||
if (D.getVFS().exists(SysRoot + "/lib/" + Arch + "-linux-gnu"))
|
||||
return Arch + "-linux-gnu";
|
||||
break;
|
||||
case llvm::Triple::mips64:
|
||||
if (D.getVFS().exists(SysRoot + "/lib/mips64-linux-" + Mips64Abi))
|
||||
return "mips64-linux-" + Mips64Abi;
|
||||
}
|
||||
case llvm::Triple::mips64: {
|
||||
std::string Arch = IsMipsR6 ? "mipsisa64r6" : "mips64";
|
||||
std::string ABI = llvm::Triple::getEnvironmentTypeName(TargetEnvironment);
|
||||
if (D.getVFS().exists(SysRoot + "/lib/" + Arch + "-linux-" + ABI))
|
||||
return Arch + "-linux-" + ABI;
|
||||
break;
|
||||
case llvm::Triple::mips64el:
|
||||
}
|
||||
case llvm::Triple::mips64el: {
|
||||
if (IsAndroid)
|
||||
return "mips64el-linux-android";
|
||||
if (D.getVFS().exists(SysRoot + "/lib/mips64el-linux-" + Mips64Abi))
|
||||
return "mips64el-linux-" + Mips64Abi;
|
||||
std::string Arch = IsMipsR6 ? "mipsisa64r6el" : "mips64el";
|
||||
std::string ABI = llvm::Triple::getEnvironmentTypeName(TargetEnvironment);
|
||||
if (D.getVFS().exists(SysRoot + "/lib/" + Arch + "-linux-" + ABI))
|
||||
return Arch + "-linux-" + ABI;
|
||||
break;
|
||||
}
|
||||
case llvm::Triple::ppc:
|
||||
if (D.getVFS().exists(SysRoot + "/lib/powerpc-linux-gnuspe"))
|
||||
return "powerpc-linux-gnuspe";
|
||||
|
@ -697,14 +705,25 @@ void Linux::AddClangSystemIncludeArgs(const ArgList &DriverArgs,
|
|||
const StringRef MIPSELMultiarchIncludeDirs[] = {
|
||||
"/usr/include/mipsel-linux-gnu"};
|
||||
const StringRef MIPS64MultiarchIncludeDirs[] = {
|
||||
"/usr/include/mips64-linux-gnu", "/usr/include/mips64-linux-gnuabi64"};
|
||||
"/usr/include/mips64-linux-gnuabi64"};
|
||||
const StringRef MIPS64ELMultiarchIncludeDirs[] = {
|
||||
"/usr/include/mips64el-linux-gnu",
|
||||
"/usr/include/mips64el-linux-gnuabi64"};
|
||||
const StringRef MIPSN32MultiarchIncludeDirs[] = {
|
||||
"/usr/include/mips64-linux-gnuabin32"};
|
||||
const StringRef MIPSN32ELMultiarchIncludeDirs[] = {
|
||||
"/usr/include/mips64el-linux-gnuabin32"};
|
||||
const StringRef MIPSR6MultiarchIncludeDirs[] = {
|
||||
"/usr/include/mipsisa32-linux-gnu"};
|
||||
const StringRef MIPSR6ELMultiarchIncludeDirs[] = {
|
||||
"/usr/include/mipsisa32r6el-linux-gnu"};
|
||||
const StringRef MIPS64R6MultiarchIncludeDirs[] = {
|
||||
"/usr/include/mipsisa64r6-linux-gnuabi64"};
|
||||
const StringRef MIPS64R6ELMultiarchIncludeDirs[] = {
|
||||
"/usr/include/mipsisa64r6el-linux-gnuabi64"};
|
||||
const StringRef MIPSN32R6MultiarchIncludeDirs[] = {
|
||||
"/usr/include/mipsisa64r6-linux-gnuabin32"};
|
||||
const StringRef MIPSN32R6ELMultiarchIncludeDirs[] = {
|
||||
"/usr/include/mipsisa64r6el-linux-gnuabin32"};
|
||||
const StringRef PPCMultiarchIncludeDirs[] = {
|
||||
"/usr/include/powerpc-linux-gnu",
|
||||
"/usr/include/powerpc-linux-gnuspe"};
|
||||
|
@ -745,19 +764,35 @@ void Linux::AddClangSystemIncludeArgs(const ArgList &DriverArgs,
|
|||
MultiarchIncludeDirs = ARMEBMultiarchIncludeDirs;
|
||||
break;
|
||||
case llvm::Triple::mips:
|
||||
MultiarchIncludeDirs = MIPSMultiarchIncludeDirs;
|
||||
if (getTriple().getSubArch() == llvm::Triple::MipsSubArch_r6)
|
||||
MultiarchIncludeDirs = MIPSR6MultiarchIncludeDirs;
|
||||
else
|
||||
MultiarchIncludeDirs = MIPSMultiarchIncludeDirs;
|
||||
break;
|
||||
case llvm::Triple::mipsel:
|
||||
MultiarchIncludeDirs = MIPSELMultiarchIncludeDirs;
|
||||
if (getTriple().getSubArch() == llvm::Triple::MipsSubArch_r6)
|
||||
MultiarchIncludeDirs = MIPSR6ELMultiarchIncludeDirs;
|
||||
else
|
||||
MultiarchIncludeDirs = MIPSELMultiarchIncludeDirs;
|
||||
break;
|
||||
case llvm::Triple::mips64:
|
||||
if (getTriple().getEnvironment() == llvm::Triple::GNUABIN32)
|
||||
if (getTriple().getSubArch() == llvm::Triple::MipsSubArch_r6)
|
||||
if (getTriple().getEnvironment() == llvm::Triple::GNUABIN32)
|
||||
MultiarchIncludeDirs = MIPSN32R6MultiarchIncludeDirs;
|
||||
else
|
||||
MultiarchIncludeDirs = MIPS64R6MultiarchIncludeDirs;
|
||||
else if (getTriple().getEnvironment() == llvm::Triple::GNUABIN32)
|
||||
MultiarchIncludeDirs = MIPSN32MultiarchIncludeDirs;
|
||||
else
|
||||
MultiarchIncludeDirs = MIPS64MultiarchIncludeDirs;
|
||||
break;
|
||||
case llvm::Triple::mips64el:
|
||||
if (getTriple().getEnvironment() == llvm::Triple::GNUABIN32)
|
||||
if (getTriple().getSubArch() == llvm::Triple::MipsSubArch_r6)
|
||||
if (getTriple().getEnvironment() == llvm::Triple::GNUABIN32)
|
||||
MultiarchIncludeDirs = MIPSN32R6ELMultiarchIncludeDirs;
|
||||
else
|
||||
MultiarchIncludeDirs = MIPS64R6ELMultiarchIncludeDirs;
|
||||
else if (getTriple().getEnvironment() == llvm::Triple::GNUABIN32)
|
||||
MultiarchIncludeDirs = MIPSN32ELMultiarchIncludeDirs;
|
||||
else
|
||||
MultiarchIncludeDirs = MIPS64ELMultiarchIncludeDirs;
|
||||
|
|
|
@ -2,8 +2,10 @@
|
|||
// RUN: %clang_cc1 -triple powerpc-linux-gnu -emit-llvm %s -o - | FileCheck %s -check-prefix=PPC32
|
||||
// RUN: %clang_cc1 -triple powerpc64-linux-gnu -emit-llvm %s -o - | FileCheck %s -check-prefix=PPC64
|
||||
// RUN: %clang_cc1 -triple mipsel-linux-gnu -emit-llvm %s -o - | FileCheck %s -check-prefix=MIPS32
|
||||
// RUN: %clang_cc1 -triple mipsisa32r6el-linux-gnu -emit-llvm %s -o - | FileCheck %s -check-prefix=MIPS32
|
||||
// RUN: %clang_cc1 -triple mips64el-linux-gnu -emit-llvm %s -o - | FileCheck %s -check-prefix=MIPS64
|
||||
// RUN: %clang_cc1 -triple mips64el-linux-gnuabi64 -emit-llvm %s -o - | FileCheck %s -check-prefix=MIPS64
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6el-linux-gnuabi64 -emit-llvm %s -o - | FileCheck %s -check-prefix=MIPS64
|
||||
// RUN: %clang_cc1 -triple sparc-unknown-eabi -emit-llvm %s -o - | FileCheck %s -check-prefix=SPARCV8 -check-prefix=SPARC
|
||||
// RUN: %clang_cc1 -triple sparcv9-unknown-eabi -emit-llvm %s -o - | FileCheck %s -check-prefix=SPARCV9 -check-prefix=SPARC
|
||||
|
||||
|
|
|
@ -1,13 +1,23 @@
|
|||
// RUN: %clang_cc1 -triple mips-unknown-linux-gnu -S -emit-llvm -o - %s | FileCheck -check-prefix=O32 %s
|
||||
// RUN: %clang_cc1 -triple mipsel-unknown-linux-gnu -S -emit-llvm -o - %s | FileCheck -check-prefix=O32 %s
|
||||
// RUN: %clang_cc1 -triple mipsisa32r6-unknown-linux-gnu -S -emit-llvm -o - %s | FileCheck -check-prefix=O32 %s
|
||||
// RUN: %clang_cc1 -triple mipsisa32r6el-unknown-linux-gnu -S -emit-llvm -o - %s | FileCheck -check-prefix=O32 %s
|
||||
// RUN: %clang_cc1 -triple mips64-unknown-linux-gnu -S -emit-llvm -o - %s -target-abi n32 | FileCheck -check-prefix=N32 %s
|
||||
// RUN: %clang_cc1 -triple mips64el-unknown-linux-gnu -S -emit-llvm -o - %s -target-abi n32 | FileCheck -check-prefix=N32 %s
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6-unknown-linux-gnu -S -emit-llvm -o - %s -target-abi n32 | FileCheck -check-prefix=N32 %s
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6el-unknown-linux-gnu -S -emit-llvm -o - %s -target-abi n32 | FileCheck -check-prefix=N32 %s
|
||||
// RUN: %clang_cc1 -triple mips64-unknown-linux-gnuabin32 -S -emit-llvm -o - %s | FileCheck -check-prefix=N32 %s
|
||||
// RUN: %clang_cc1 -triple mips64el-unknown-linux-gnuabin32 -S -emit-llvm -o - %s | FileCheck -check-prefix=N32 %s
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6-unknown-linux-gnuabin32 -S -emit-llvm -o - %s | FileCheck -check-prefix=N32 %s
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6el-unknown-linux-gnuabin32 -S -emit-llvm -o - %s | FileCheck -check-prefix=N32 %s
|
||||
// RUN: %clang_cc1 -triple mips64-unknown-linux-gnu -S -emit-llvm -o - %s | FileCheck -check-prefix=N64 %s
|
||||
// RUN: %clang_cc1 -triple mips64el-unknown-linux-gnu -S -emit-llvm -o - %s | FileCheck -check-prefix=N64 %s
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6-unknown-linux-gnu -S -emit-llvm -o - %s | FileCheck -check-prefix=N64 %s
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6el-unknown-linux-gnu -S -emit-llvm -o - %s | FileCheck -check-prefix=N64 %s
|
||||
// RUN: %clang_cc1 -triple mips64-unknown-linux-gnuabi64 -S -emit-llvm -o - %s | FileCheck -check-prefix=N64 %s
|
||||
// RUN: %clang_cc1 -triple mips64el-unknown-linux-gnuabi64 -S -emit-llvm -o - %s | FileCheck -check-prefix=N64 %s
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6-unknown-linux-gnuabi64 -S -emit-llvm -o - %s | FileCheck -check-prefix=N64 %s
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6el-unknown-linux-gnuabi64 -S -emit-llvm -o - %s | FileCheck -check-prefix=N64 %s
|
||||
|
||||
// O32: define void @fn28(%struct.T2* noalias sret %agg.result, i8 signext %arg0)
|
||||
// N32: define void @fn28(i8 signext %arg0)
|
||||
|
|
|
@ -32,34 +32,54 @@
|
|||
|
||||
// RUN: %clang_cc1 -triple mipsel-linux-gnu -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-32EL
|
||||
// RUN: %clang_cc1 -triple mipsisa32r6el-linux-gnu -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-32EL
|
||||
// MIPS-32EL: target datalayout = "e-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64"
|
||||
|
||||
// RUN: %clang_cc1 -triple mips-linux-gnu -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-32EB
|
||||
// RUN: %clang_cc1 -triple mipsisa32r6-linux-gnu -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-32EB
|
||||
// MIPS-32EB: target datalayout = "E-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64"
|
||||
|
||||
// RUN: %clang_cc1 -triple mips64el-linux-gnu -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-64EL
|
||||
// RUN: %clang_cc1 -triple mips64el-linux-gnuabi64 -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-64EL
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6el-linux-gnu -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-64EL
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6el-linux-gnuabi64 -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-64EL
|
||||
// MIPS-64EL: target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-n32:64-S128"
|
||||
|
||||
// RUN: %clang_cc1 -triple mips64el-linux-gnu -o - -emit-llvm -target-abi n32 \
|
||||
// RUN: %s | FileCheck %s -check-prefix=MIPS-64EL-N32
|
||||
// RUN: %clang_cc1 -triple mips64el-linux-gnuabin32 -o - -emit-llvm \
|
||||
// RUN: %s | FileCheck %s -check-prefix=MIPS-64EL-N32
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6el-linux-gnu -o - -emit-llvm -target-abi n32 \
|
||||
// RUN: %s | FileCheck %s -check-prefix=MIPS-64EL-N32
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6el-linux-gnuabin32 -o - -emit-llvm \
|
||||
// RUN: %s | FileCheck %s -check-prefix=MIPS-64EL-N32
|
||||
// MIPS-64EL-N32: target datalayout = "e-m:e-p:32:32-i8:8:32-i16:16:32-i64:64-n32:64-S128"
|
||||
|
||||
// RUN: %clang_cc1 -triple mips64-linux-gnu -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-64EB
|
||||
// RUN: %clang_cc1 -triple mips64-linux-gnuabi64 -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-64EB
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6-linux-gnu -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-64EB
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6-linux-gnuabi64 -o - -emit-llvm %s | \
|
||||
// RUN: FileCheck %s -check-prefix=MIPS-64EB
|
||||
// MIPS-64EB: target datalayout = "E-m:e-i8:8:32-i16:16:32-i64:64-n32:64-S128"
|
||||
|
||||
// RUN: %clang_cc1 -triple mips64-linux-gnu -o - -emit-llvm %s -target-abi n32 \
|
||||
// RUN: | FileCheck %s -check-prefix=MIPS-64EB-N32
|
||||
// RUN: %clang_cc1 -triple mips64-linux-gnuabin32 -o - -emit-llvm %s \
|
||||
// RUN: | FileCheck %s -check-prefix=MIPS-64EB-N32
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6-linux-gnu -o - -emit-llvm %s -target-abi n32 \
|
||||
// RUN: | FileCheck %s -check-prefix=MIPS-64EB-N32
|
||||
// RUN: %clang_cc1 -triple mipsisa64r6-linux-gnuabin32 -o - -emit-llvm %s \
|
||||
// RUN: | FileCheck %s -check-prefix=MIPS-64EB-N32
|
||||
// MIPS-64EB-N32: target datalayout = "E-m:e-p:32:32-i8:8:32-i16:16:32-i64:64-n32:64-S128"
|
||||
|
||||
// RUN: %clang_cc1 -triple powerpc64-lv2 -o - -emit-llvm %s | \
|
||||
|
|
|
@ -5,20 +5,36 @@
|
|||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mips-unknown-linux-gnu | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mipsisa32r6-unknown-linux-gnu | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mipsel-unknown-linux-gnu | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mipsisa32r6el-unknown-linux-gnu | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mips64-unknown-linux-gnu | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mipsisa64r6-unknown-linux-gnu | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mips64el-unknown-linux-gnu | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mipsisa64r6el-unknown-linux-gnu | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mips64-unknown-linux-gnuabi64 | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mipsisa64r6-unknown-linux-gnuabi64 | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mips64el-unknown-linux-gnuabi64 | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mipsisa64r6el-unknown-linux-gnuabi64 | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mips64-unknown-linux-gnuabin32 | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mipsisa64r6-unknown-linux-gnuabin32 | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mips64el-unknown-linux-gnuabin32 | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple mipsisa64r6el-unknown-linux-gnuabin32 | FileCheck %s
|
||||
// RUN: %clang_cc1 %s -fxray-instrument -std=c++11 -x c++ -emit-llvm -o - \
|
||||
// RUN: -triple powerpc64le-unknown-linux-gnu | FileCheck %s
|
||||
|
||||
// Make sure that the LLVM attribute for XRay-annotated functions do show up.
|
||||
|
|
|
@ -291,6 +291,13 @@
|
|||
// MIPS: "-target-cpu" "mips32r2"
|
||||
// MIPS: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mipsisa32r6-linux-gnu -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPSR6 %s
|
||||
// MIPSR6: clang
|
||||
// MIPSR6: "-cc1"
|
||||
// MIPSR6: "-target-cpu" "mips32r6"
|
||||
// MIPSR6: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mipsel-linux-gnu -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPSEL %s
|
||||
// MIPSEL: clang
|
||||
|
@ -298,6 +305,13 @@
|
|||
// MIPSEL: "-target-cpu" "mips32r2"
|
||||
// MIPSEL: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mipsisa32r6el-linux-gnu -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPSR6EL %s
|
||||
// MIPSR6EL: clang
|
||||
// MIPSR6EL: "-cc1"
|
||||
// MIPSR6EL: "-target-cpu" "mips32r6"
|
||||
// MIPSR6EL: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mipsel-linux-android -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPSEL-ANDROID %s
|
||||
// MIPSEL-ANDROID: clang
|
||||
|
@ -323,6 +337,13 @@
|
|||
// MIPS64: "-target-cpu" "mips64r2"
|
||||
// MIPS64: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mipsisa64r6-linux-gnu -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPS64R6 %s
|
||||
// MIPS64R6: clang
|
||||
// MIPS64R6: "-cc1"
|
||||
// MIPS64R6: "-target-cpu" "mips64r6"
|
||||
// MIPS64R6: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mips64el-linux-gnu -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPS64EL %s
|
||||
// MIPS64EL: clang
|
||||
|
@ -330,6 +351,13 @@
|
|||
// MIPS64EL: "-target-cpu" "mips64r2"
|
||||
// MIPS64EL: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mipsisa64r6el-linux-gnu -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPS64R6EL %s
|
||||
// MIPS64R6EL: clang
|
||||
// MIPS64R6EL: "-cc1"
|
||||
// MIPS64R6EL: "-target-cpu" "mips64r6"
|
||||
// MIPS64R6EL: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mips64-linux-gnuabi64 -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPS64-GNUABI64 %s
|
||||
// MIPS64-GNUABI64: clang
|
||||
|
@ -338,6 +366,14 @@
|
|||
// MIPS64-GNUABI64: "-target-abi" "n64"
|
||||
// MIPS64-GNUABI64: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mipsisa64r6-linux-gnuabi64 -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPS64R6-GNUABI64 %s
|
||||
// MIPS64R6-GNUABI64: clang
|
||||
// MIPS64R6-GNUABI64: "-cc1"
|
||||
// MIPS64R6-GNUABI64: "-target-cpu" "mips64r6"
|
||||
// MIPS64R6-GNUABI64: "-target-abi" "n64"
|
||||
// MIPS64R6-GNUABI64: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mips64el-linux-gnuabi64 -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPS64EL-GNUABI64 %s
|
||||
// MIPS64EL-GNUABI64: clang
|
||||
|
@ -346,6 +382,14 @@
|
|||
// MIPS64EL-GNUABI64: "-target-abi" "n64"
|
||||
// MIPS64EL-GNUABI64: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mipsisa64r6el-linux-gnuabi64 -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPS64R6EL-GNUABI64 %s
|
||||
// MIPS64R6EL-GNUABI64: clang
|
||||
// MIPS64R6EL-GNUABI64: "-cc1"
|
||||
// MIPS64R6EL-GNUABI64: "-target-cpu" "mips64r6"
|
||||
// MIPS64R6EL-GNUABI64: "-target-abi" "n64"
|
||||
// MIPS64R6EL-GNUABI64: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mips64-linux-gnuabin32 -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPSN32 %s
|
||||
// MIPSN32: clang
|
||||
|
@ -354,6 +398,14 @@
|
|||
// MIPSN32: "-target-abi" "n32"
|
||||
// MIPSN32: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mipsisa64r6-linux-gnuabin32 -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPSN32R6 %s
|
||||
// MIPSN32R6: clang
|
||||
// MIPSN32R6: "-cc1"
|
||||
// MIPSN32R6: "-target-cpu" "mips64r6"
|
||||
// MIPSN32R6: "-target-abi" "n32"
|
||||
// MIPSN32R6: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mips64el-linux-gnuabin32 -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPSN32EL %s
|
||||
// MIPSN32EL: clang
|
||||
|
@ -362,6 +414,14 @@
|
|||
// MIPSN32EL: "-target-abi" "n32"
|
||||
// MIPSN32EL: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mipsisa64r6el-linux-gnuabin32 -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPSN32R6EL %s
|
||||
// MIPSN32R6EL: clang
|
||||
// MIPSN32R6EL: "-cc1"
|
||||
// MIPSN32R6EL: "-target-cpu" "mips64r6"
|
||||
// MIPSN32R6EL: "-target-abi" "n32"
|
||||
// MIPSN32R6EL: "-mfloat-abi" "hard"
|
||||
|
||||
// RUN: %clang -target mips64el-linux-android -### -S %s 2>&1 | \
|
||||
// RUN: FileCheck -check-prefix=MIPS64EL-ANDROID %s
|
||||
// MIPS64EL-ANDROID: clang
|
||||
|
|
Loading…
Reference in New Issue