After switching the i386 check-function-bodies tests to use the new
dg-add-options check_function_bodies feature, several tests still FAIL
in the same way on Solaris/x86.  E.g.

FAIL: gcc.target/i386/pr120936-1.c check-function-bodies foo

The code differs between i686-pc-linux-gnu and i386-pc-solaris2.11 like
this:

-       .cfi_def_cfa_register 5
-       call    mcount
+       .data
+       .align 4
+.LP0:
+       .long   0
+       .text
+       movl    $.LP0, %edx
+       call    _mcount

i.e. the test expects a call to mcount, while on Solaris _mcount is
called instead.  MCOUNT_NAME is only defined as mcount in gnu-user.h and
x86-64.h, so the patch restricts the tests to Linux.

Tested on i386-pc-solaris2.11 and x86_64-pc-linux-gnu.

Ok for trunk?

        Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University


2025-11-23  Rainer Orth  <[email protected]>

        gcc/testsuite:
        * gcc.target/i386/pr120936-1.c: Restrict to *-*-linux*.
        * gcc.target/i386/pr120936-2.c: Likewise.
        * gcc.target/i386/pr120936-4.c: Likewise.
        * gcc.target/i386/pr120936-5.c: Likewise.
        * gcc.target/i386/pr120936-9.c: Likewise.
        * gcc.target/i386/pr120936-11.c: Likewise.

# HG changeset patch
# Parent  e22e47a9bb4974f28b28ed7584165a07d40dcc9f
testsuite: i386: Restrict pr120936-1.c etc. to Linux

diff --git a/gcc/testsuite/gcc.target/i386/pr120936-1.c b/gcc/testsuite/gcc.target/i386/pr120936-1.c
--- a/gcc/testsuite/gcc.target/i386/pr120936-1.c
+++ b/gcc/testsuite/gcc.target/i386/pr120936-1.c
@@ -1,4 +1,4 @@
-/* { dg-do compile { target fpic } } */
+/* { dg-do compile { target { *-*-linux* && fpic } } } */
 /* { dg-options "-O2 -pg -mno-fentry -fno-pic -fno-shrink-wrap" } */
 /* { dg-add-options check_function_bodies } */
 /* Keep labels and directives ('.cfi_startproc', '.cfi_endproc').  */
diff --git a/gcc/testsuite/gcc.target/i386/pr120936-11.c b/gcc/testsuite/gcc.target/i386/pr120936-11.c
--- a/gcc/testsuite/gcc.target/i386/pr120936-11.c
+++ b/gcc/testsuite/gcc.target/i386/pr120936-11.c
@@ -1,4 +1,4 @@
-/* { dg-do compile { target { fpic && lp64 } } } */
+/* { dg-do compile { target { { *-*-linux* && lp64 } && fpic } } } */
 /* { dg-options "-O2 -mrecord-mcount -mcmodel=large -pg -mno-fentry -fno-pic -fno-shrink-wrap" } */
 /* { dg-add-options check_function_bodies } */
 /* Keep labels and directives ('.cfi_startproc', '.cfi_endproc').  */
diff --git a/gcc/testsuite/gcc.target/i386/pr120936-2.c b/gcc/testsuite/gcc.target/i386/pr120936-2.c
--- a/gcc/testsuite/gcc.target/i386/pr120936-2.c
+++ b/gcc/testsuite/gcc.target/i386/pr120936-2.c
@@ -1,4 +1,4 @@
-/* { dg-do compile { target fpic } } */
+/* { dg-do compile { target { *-*-linux* && fpic } } } */
 /* { dg-options "-O2 -pg -mno-fentry -fpic -fno-shrink-wrap" } */
 /* { dg-add-options check_function_bodies } */
 /* Keep labels and directives ('.cfi_startproc', '.cfi_endproc').  */
diff --git a/gcc/testsuite/gcc.target/i386/pr120936-4.c b/gcc/testsuite/gcc.target/i386/pr120936-4.c
--- a/gcc/testsuite/gcc.target/i386/pr120936-4.c
+++ b/gcc/testsuite/gcc.target/i386/pr120936-4.c
@@ -1,4 +1,4 @@
-/* { dg-do compile { target fpic } } */
+/* { dg-do compile { target { *-*-linux* && fpic } } } */
 /* { dg-options "-O2 -pg -mno-fentry -mrecord-mcount -fno-pic -fno-shrink-wrap" } */
 /* { dg-add-options check_function_bodies } */
 /* Keep labels and directives ('.cfi_startproc', '.cfi_endproc').  */
diff --git a/gcc/testsuite/gcc.target/i386/pr120936-5.c b/gcc/testsuite/gcc.target/i386/pr120936-5.c
--- a/gcc/testsuite/gcc.target/i386/pr120936-5.c
+++ b/gcc/testsuite/gcc.target/i386/pr120936-5.c
@@ -1,4 +1,4 @@
-/* { dg-do compile { target fpic } } */
+/* { dg-do compile { target { *-*-linux* && fpic } } } */
 /* { dg-options "-O2 -pg -mrecord-mcount -mno-fentry -fpic -fno-shrink-wrap" } */
 /* { dg-add-options check_function_bodies } */
 /* Keep labels and directives ('.cfi_startproc', '.cfi_endproc').  */
diff --git a/gcc/testsuite/gcc.target/i386/pr120936-9.c b/gcc/testsuite/gcc.target/i386/pr120936-9.c
--- a/gcc/testsuite/gcc.target/i386/pr120936-9.c
+++ b/gcc/testsuite/gcc.target/i386/pr120936-9.c
@@ -1,4 +1,4 @@
-/* { dg-do compile { target { fpic && lp64 } } } */
+/* { dg-do compile { target { { *-*-linux* && lp64 } && fpic } } } */
 /* { dg-options "-O2 -mcmodel=large -pg -mno-fentry -fno-pic -fno-shrink-wrap" } */
 /* { dg-add-options check_function_bodies } */
 /* Keep labels and directives ('.cfi_startproc', '.cfi_endproc').  */

Reply via email to