Message ID | 20210323224853.322700-1-samuel.thibault@ens-lyon.org |
---|---|
State | New |
Headers | show |
Series | x86: Fix tst-ifunc-isa-* build when gcc ifunc support is not enabled | expand |
On Tue, Mar 23, 2021 at 3:49 PM Samuel Thibault <samuel.thibault@ens-lyon.org> wrote: > > --- > sysdeps/x86/tst-ifunc-isa-1.c | 17 +++++++++++++++++ > sysdeps/x86/tst-ifunc-isa-2.c | 17 +++++++++++++++++ > 2 files changed, 34 insertions(+) > > diff --git a/sysdeps/x86/tst-ifunc-isa-1.c b/sysdeps/x86/tst-ifunc-isa-1.c > index 37d599210c..7a58591c79 100644 > --- a/sysdeps/x86/tst-ifunc-isa-1.c > +++ b/sysdeps/x86/tst-ifunc-isa-1.c > @@ -16,6 +16,10 @@ > License along with the GNU C Library; if not, see > <https://www.gnu.org/licenses/>. */ > > +#include <config.h> > + > +#ifdef HAVE_GCC_IFUNC > + > #include <stdlib.h> > #include "tst-ifunc-isa.h" > > @@ -27,4 +31,17 @@ do_test (void) > return value == expected ? EXIT_SUCCESS : EXIT_FAILURE; > } > > +#else /* !HAVE_GCC_IFUNC */ > + > +#include <support/check.h> > + > +static int > +do_test (void) > +{ > + FAIL_UNSUPPORTED ("GCC does not support the ifunc attribute"); > + return 1; /* Not reachable. */ > +} > + > +#endif /* !HAVE_GCC_IFUNC */ > + > #include <support/test-driver.c> Can you add LIBC_CONFIG_VAR with have-gcc-ifunc to skip these tests?
H.J. Lu, le mar. 23 mars 2021 16:09:18 -0700, a ecrit: > Can you add LIBC_CONFIG_VAR with have-gcc-ifunc to skip > these tests? Ok, and ifuncmain9 can use it as well. Samuel
diff --git a/sysdeps/x86/tst-ifunc-isa-1.c b/sysdeps/x86/tst-ifunc-isa-1.c index 37d599210c..7a58591c79 100644 --- a/sysdeps/x86/tst-ifunc-isa-1.c +++ b/sysdeps/x86/tst-ifunc-isa-1.c @@ -16,6 +16,10 @@ License along with the GNU C Library; if not, see <https://www.gnu.org/licenses/>. */ +#include <config.h> + +#ifdef HAVE_GCC_IFUNC + #include <stdlib.h> #include "tst-ifunc-isa.h" @@ -27,4 +31,17 @@ do_test (void) return value == expected ? EXIT_SUCCESS : EXIT_FAILURE; } +#else /* !HAVE_GCC_IFUNC */ + +#include <support/check.h> + +static int +do_test (void) +{ + FAIL_UNSUPPORTED ("GCC does not support the ifunc attribute"); + return 1; /* Not reachable. */ +} + +#endif /* !HAVE_GCC_IFUNC */ + #include <support/test-driver.c> diff --git a/sysdeps/x86/tst-ifunc-isa-2.c b/sysdeps/x86/tst-ifunc-isa-2.c index 0bdf7176fa..20f8724997 100644 --- a/sysdeps/x86/tst-ifunc-isa-2.c +++ b/sysdeps/x86/tst-ifunc-isa-2.c @@ -16,6 +16,10 @@ License along with the GNU C Library; if not, see <https://www.gnu.org/licenses/>. */ +#include <config.h> + +#ifdef HAVE_GCC_IFUNC + #include <stdlib.h> #include "tst-ifunc-isa.h" #include <support/test-driver.h> @@ -31,4 +35,17 @@ do_test (void) return value == sse2 ? EXIT_SUCCESS : EXIT_FAILURE; } +#else /* !HAVE_GCC_IFUNC */ + +#include <support/check.h> + +static int +do_test (void) +{ + FAIL_UNSUPPORTED ("GCC does not support the ifunc attribute"); + return 1; /* Not reachable. */ +} + +#endif /* !HAVE_GCC_IFUNC */ + #include <support/test-driver.c>