// REQUIRES: x86-registered-target // RUN: %clang -target i386-apple-darwin -S -o - %s | \ // RUN: FileCheck --check-prefix=DARWIN %s // DARWIN: f0: // DARWIN: pushl %ebp // DARWIN: ret // DARWIN: f1: // DARWIN: pushl %ebp // DARWIN: ret // RUN: %clang -target i386-pc-linux-gnu -S -o - %s | \ // RUN: FileCheck --check-prefix=LINUX %s // LINUX: f0: // LINUX-NOT: pushl %ebp // LINUX: ret // LINUX: f1: // LINUX: pushl %ebp // LINUX: ret // RUN: %clang -target i386-darwin -S -o - -fomit-frame-pointer %s | \ // RUN: FileCheck --check-prefix=OMIT_ALL %s // OMIT_ALL: f0: // OMIT_ALL-NOT: pushl %ebp // OMIT_ALL: ret // OMIT_ALL: f1: // OMIT_ALL-NOT: pushl %ebp // OMIT_ALL: ret // RUN: %clang -target i386-darwin -S -o - -momit-leaf-frame-pointer %s | \ // RUN: FileCheck --check-prefix=OMIT_LEAF %s // OMIT_LEAF: f0: // OMIT_LEAF-NOT: pushl %ebp // OMIT_LEAF: ret // OMIT_LEAF: f1: // OMIT_LEAF: pushl %ebp // OMIT_LEAF: ret void f0() {} void f1() { f0(); }