mirror of
https://git.proxmox.com/git/llvm-toolchain
synced 2025-08-05 04:35:51 +00:00
72 lines
3.2 KiB
Diff
72 lines
3.2 KiB
Diff
Index: llvm-toolchain-snapshot_3.5~svn197156/clang/lib/Driver/ToolChains.cpp
|
|
===================================================================
|
|
--- llvm-toolchain-snapshot_3.5~svn197156.orig/clang/lib/Driver/ToolChains.cpp 2013-12-12 16:38:08.665767586 +0100
|
|
+++ llvm-toolchain-snapshot_3.5~svn197156/clang/lib/Driver/ToolChains.cpp 2013-12-12 16:38:08.661767586 +0100
|
|
@@ -1183,10 +1183,12 @@
|
|
|
|
static const char *const MIPS64LibDirs[] = { "/lib64", "/lib" };
|
|
static const char *const MIPS64Triples[] = { "mips64-linux-gnu",
|
|
- "mips-mti-linux-gnu" };
|
|
+ "mips-mti-linux-gnu",
|
|
+ "mips64-linux-gnuabi64" };
|
|
static const char *const MIPS64ELLibDirs[] = { "/lib64", "/lib" };
|
|
static const char *const MIPS64ELTriples[] = { "mips64el-linux-gnu",
|
|
- "mips-mti-linux-gnu" };
|
|
+ "mips-mti-linux-gnu",
|
|
+ "mips64el-linux-gnuabi64" };
|
|
|
|
static const char *const PPCLibDirs[] = { "/lib32", "/lib" };
|
|
static const char *const PPCTriples[] = {
|
|
@@ -1346,9 +1348,9 @@
|
|
}
|
|
|
|
static bool isMipsArch(llvm::Triple::ArchType Arch) {
|
|
- return Arch == llvm::Triple::mips ||
|
|
- Arch == llvm::Triple::mipsel ||
|
|
- Arch == llvm::Triple::mips64 ||
|
|
+ return Arch == llvm::Triple::mips ||
|
|
+ Arch == llvm::Triple::mipsel ||
|
|
+ Arch == llvm::Triple::mips64 ||
|
|
Arch == llvm::Triple::mips64el;
|
|
}
|
|
|
|
@@ -2344,6 +2346,14 @@
|
|
if (llvm::sys::fs::exists(SysRoot + "/lib/mipsel-linux-gnu"))
|
|
return "mipsel-linux-gnu";
|
|
return TargetTriple.str();
|
|
+ case llvm::Triple::mips64:
|
|
+ if (llvm::sys::fs::exists(SysRoot + "/lib/mips64-linux-gnuabi64"))
|
|
+ return "mips64-linux-gnuabi64";
|
|
+ return TargetTriple.str();
|
|
+ case llvm::Triple::mips64el:
|
|
+ if (llvm::sys::fs::exists(SysRoot + "/lib/mips64el-linux-gnuabi64"))
|
|
+ return "mips64el-linux-gnuabi64";
|
|
+ return TargetTriple.str();
|
|
case llvm::Triple::ppc:
|
|
if (llvm::sys::fs::exists(SysRoot + "/lib/powerpc-linux-gnuspe"))
|
|
return "powerpc-linux-gnuspe";
|
|
@@ -2696,6 +2706,12 @@
|
|
const StringRef MIPSELMultiarchIncludeDirs[] = {
|
|
"/usr/include/mipsel-linux-gnu"
|
|
};
|
|
+ const StringRef MIPS64MultiarchIncludeDirs[] = {
|
|
+ "/usr/include/mips64-linux-gnuabi64"
|
|
+ };
|
|
+ const StringRef MIPS64ELMultiarchIncludeDirs[] = {
|
|
+ "/usr/include/mips64el-linux-gnuabi64"
|
|
+ };
|
|
const StringRef PPCMultiarchIncludeDirs[] = {
|
|
"/usr/include/powerpc-linux-gnu"
|
|
};
|
|
@@ -2718,6 +2734,10 @@
|
|
MultiarchIncludeDirs = MIPSMultiarchIncludeDirs;
|
|
} else if (getTriple().getArch() == llvm::Triple::mipsel) {
|
|
MultiarchIncludeDirs = MIPSELMultiarchIncludeDirs;
|
|
+ } else if (getTriple().getArch() == llvm::Triple::mips64) {
|
|
+ MultiarchIncludeDirs = MIPS64MultiarchIncludeDirs;
|
|
+ } else if (getTriple().getArch() == llvm::Triple::mips64el) {
|
|
+ MultiarchIncludeDirs = MIPS64ELMultiarchIncludeDirs;
|
|
} else if (getTriple().getArch() == llvm::Triple::ppc) {
|
|
MultiarchIncludeDirs = PPCMultiarchIncludeDirs;
|
|
} else if (getTriple().getArch() == llvm::Triple::ppc64) {
|