summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/Driver/Tools.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index 9b23cbf9319..52efc1c654b 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -1794,7 +1794,11 @@ static bool shouldUseFramePointer(const ArgList &Args,
// Don't use a frame pointer on linux x86, x86_64 and z if optimizing.
if ((Triple.getArch() == llvm::Triple::x86_64 ||
Triple.getArch() == llvm::Triple::x86 ||
- Triple.getArch() == llvm::Triple::systemz) &&
+ Triple.getArch() == llvm::Triple::systemz ||
+ Triple.getArch() == llvm::Triple::mips ||
+ Triple.getArch() == llvm::Triple::mipsel ||
+ Triple.getArch() == llvm::Triple::mips64 ||
+ Triple.getArch() == llvm::Triple::mips64el) &&
Triple.isOSLinux()) {
if (Arg *A = Args.getLastArg(options::OPT_O_Group))
if (!A->getOption().matches(options::OPT_O0))
@@ -1816,7 +1820,11 @@ static bool shouldUseLeafFramePointer(const ArgList &Args,
// Don't use a leaf frame pointer on linux x86, x86_64 and z if optimizing.
if ((Triple.getArch() == llvm::Triple::x86_64 ||
Triple.getArch() == llvm::Triple::x86 ||
- Triple.getArch() == llvm::Triple::systemz) &&
+ Triple.getArch() == llvm::Triple::systemz ||
+ Triple.getArch() == llvm::Triple::mips ||
+ Triple.getArch() == llvm::Triple::mipsel ||
+ Triple.getArch() == llvm::Triple::mips64 ||
+ Triple.getArch() == llvm::Triple::mips64el) &&
Triple.isOSLinux()) {
if (Arg *A = Args.getLastArg(options::OPT_O_Group))
if (!A->getOption().matches(options::OPT_O0))
OpenPOWER on IntegriCloud