Message ID | 20231128135047.3554760-1-hongyu.wang@intel.com |
---|---|
State | New |
Headers | show |
Series | [i386] Fix push2pop2 test fail on non-linux target [PR112729] | expand |
On Tue, Nov 28, 2023 at 9:51 PM Hongyu Wang <hongyu.wang@intel.com> wrote: > > Hi, > > On linux x86-64, -fomit-frame-pointer was by default enabled so the > push2pop2 tests cfi scans are based on it. On other target with > -fno-omit-frame-pointer the cfi scan will be wrong as the frame pointer > is pushed at first. Add -fomit-frame-pointer to these tests that related > to cfi scan. > > OK for master? Ok. > > gcc/testsuite/ChangeLog: > > PR target/112729 > * gcc.target/i386/apx-interrupt-1.c: Add -fomit-frame-pointer. > * gcc.target/i386/apx-push2pop2-1.c: Likewise. > * gcc.target/i386/apx-push2pop2_force_drap-1.c: Likewise. > --- > gcc/testsuite/gcc.target/i386/apx-interrupt-1.c | 2 +- > gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c | 2 +- > gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c | 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/gcc/testsuite/gcc.target/i386/apx-interrupt-1.c b/gcc/testsuite/gcc.target/i386/apx-interrupt-1.c > index ffcb8fce71c..6844e574d00 100644 > --- a/gcc/testsuite/gcc.target/i386/apx-interrupt-1.c > +++ b/gcc/testsuite/gcc.target/i386/apx-interrupt-1.c > @@ -1,5 +1,5 @@ > /* { dg-do compile { target { ! ia32 } } } */ > -/* { dg-options "-mapx-features=egpr -m64 -O2 -mgeneral-regs-only -mno-cld -mno-push-args -maccumulate-outgoing-args" } */ > +/* { dg-options "-mapx-features=egpr -m64 -O2 -mgeneral-regs-only -mno-cld -mno-push-args -maccumulate-outgoing-args -fomit-frame-pointer" } */ > /* { dg-skip-if "does not emit .cfi_xxx" "*-*-darwin*" } */ > > extern void foo (void *) __attribute__ ((interrupt)); > diff --git a/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c b/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c > index d78c96d36a3..5f43b42e33f 100644 > --- a/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c > +++ b/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c > @@ -1,5 +1,5 @@ > /* { dg-do compile { target { ! ia32 } } } */ > -/* { dg-options "-O2 -mapx-features=push2pop2" } */ > +/* { dg-options "-O2 -mapx-features=push2pop2 -fomit-frame-pointer" } */ > /* { dg-skip-if "does not emit .cfi_xxx" "*-*-darwin*" } */ > > extern int bar (int); > diff --git a/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c b/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c > index 3cac7b10769..4e2259f0c99 100644 > --- a/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c > +++ b/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c > @@ -1,5 +1,5 @@ > /* { dg-do compile { target { ! ia32 } } } */ > -/* { dg-options "-O2 -mapx-features=push2pop2 -mforce-drap" } */ > +/* { dg-options "-O2 -mapx-features=push2pop2 -fomit-frame-pointer -mforce-drap" } */ > /* { dg-skip-if "does not emit .cfi_xxx" "*-*-darwin*" } */ > > #include "apx-push2pop2-1.c" > -- > 2.31.1 >
diff --git a/gcc/testsuite/gcc.target/i386/apx-interrupt-1.c b/gcc/testsuite/gcc.target/i386/apx-interrupt-1.c index ffcb8fce71c..6844e574d00 100644 --- a/gcc/testsuite/gcc.target/i386/apx-interrupt-1.c +++ b/gcc/testsuite/gcc.target/i386/apx-interrupt-1.c @@ -1,5 +1,5 @@ /* { dg-do compile { target { ! ia32 } } } */ -/* { dg-options "-mapx-features=egpr -m64 -O2 -mgeneral-regs-only -mno-cld -mno-push-args -maccumulate-outgoing-args" } */ +/* { dg-options "-mapx-features=egpr -m64 -O2 -mgeneral-regs-only -mno-cld -mno-push-args -maccumulate-outgoing-args -fomit-frame-pointer" } */ /* { dg-skip-if "does not emit .cfi_xxx" "*-*-darwin*" } */ extern void foo (void *) __attribute__ ((interrupt)); diff --git a/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c b/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c index d78c96d36a3..5f43b42e33f 100644 --- a/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c +++ b/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c @@ -1,5 +1,5 @@ /* { dg-do compile { target { ! ia32 } } } */ -/* { dg-options "-O2 -mapx-features=push2pop2" } */ +/* { dg-options "-O2 -mapx-features=push2pop2 -fomit-frame-pointer" } */ /* { dg-skip-if "does not emit .cfi_xxx" "*-*-darwin*" } */ extern int bar (int); diff --git a/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c b/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c index 3cac7b10769..4e2259f0c99 100644 --- a/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c +++ b/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c @@ -1,5 +1,5 @@ /* { dg-do compile { target { ! ia32 } } } */ -/* { dg-options "-O2 -mapx-features=push2pop2 -mforce-drap" } */ +/* { dg-options "-O2 -mapx-features=push2pop2 -fomit-frame-pointer -mforce-drap" } */ /* { dg-skip-if "does not emit .cfi_xxx" "*-*-darwin*" } */ #include "apx-push2pop2-1.c"