From e96e6972945774f96866220fe7569918346b34e5 Mon Sep 17 00:00:00 2001 From: Nemanja Ivanovic Date: Fri, 3 Mar 2017 09:49:17 +0000 Subject: [PATCH] [PowerPC] Enable -fomit-frame-pointer by default for PPC As is the case on platforms like Mips, X86 and SystemZ, the -fomit-frame-pointer should be enabled by default on PPC when optimizing at -O1 and above. This brings the behaviour of LLVM on PPC in line with GCC. Committing on behalf of Hiroshi Inoue. Differential Revision: https://reviews.llvm.org/D29750 llvm-svn: 296861 --- clang/lib/Driver/Tools.cpp | 3 +++ clang/test/Driver/frame-pointer.c | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index 042326f68ad2..283d7ee06258 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -2235,6 +2235,9 @@ static bool useFramePointerForTargetByDefault(const ArgList &Args, case llvm::Triple::mips64el: case llvm::Triple::mips: case llvm::Triple::mipsel: + case llvm::Triple::ppc: + case llvm::Triple::ppc64: + case llvm::Triple::ppc64le: case llvm::Triple::systemz: case llvm::Triple::x86: case llvm::Triple::x86_64: diff --git a/clang/test/Driver/frame-pointer.c b/clang/test/Driver/frame-pointer.c index cec168636c13..ecb16af3cf80 100644 --- a/clang/test/Driver/frame-pointer.c +++ b/clang/test/Driver/frame-pointer.c @@ -17,6 +17,13 @@ // RUN: %clang -target s390x-pc-linux -### -S -O0 %s -o %t.s 2>&1 | FileCheck -check-prefix=CHECK0-64 %s // RUN: %clang -target s390x-pc-linux -### -S -O1 %s -o %t.s 2>&1 | FileCheck -check-prefix=CHECK1-64 %s +// RUN: %clang -target powerpc-unknown-linux-gnu -### -S -O0 %s -o %t.s 2>&1 | FileCheck -check-prefix=CHECK0-64 %s +// RUN: %clang -target powerpc-unknown-linux-gnu -### -S -O1 %s -o %t.s 2>&1 | FileCheck -check-prefix=CHECK1-64 %s +// RUN: %clang -target powerpc64-unknown-linux-gnu -### -S -O0 %s -o %t.s 2>&1 | FileCheck -check-prefix=CHECK0-64 %s +// RUN: %clang -target powerpc64-unknown-linux-gnu -### -S -O1 %s -o %t.s 2>&1 | FileCheck -check-prefix=CHECK1-64 %s +// RUN: %clang -target powerpc64le-unknown-linux-gnu -### -S -O0 %s -o %t.s 2>&1 | FileCheck -check-prefix=CHECK0-64 %s +// RUN: %clang -target powerpc64le-unknown-linux-gnu -### -S -O1 %s -o %t.s 2>&1 | FileCheck -check-prefix=CHECK1-64 %s + // RUN: %clang -target mips-linux-gnu -### -S -O0 %s -o %t.s 2>&1 | FileCheck -check-prefix=CHECK0-32 %s // RUN: %clang -target mips-linux-gnu -### -S -O1 %s -o %t.s 2>&1 | FileCheck -check-prefix=CHECK1-32 %s // RUN: %clang -target mipsel-linux-gnu -### -S -O0 %s -o %t.s 2>&1 | FileCheck -check-prefix=CHECK0-32 %s