From 895ef79e04a953cac1493863bcae29ad85657ee1 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 24 Aug 2018 19:18:16 +0000 Subject: [PATCH] Move EXCEPTION_ENABLE_SUPPORTED out of math-tests.h. Continuing moving macros out of math-tests.h to smaller headers following typo-proof conventions instead of using #ifndef, this patch moves the EXCEPTION_ENABLE_SUPPORTED macro out to its own math-tests-trap.h header. Tested with build-many-glibcs.py. * sysdeps/generic/math-tests-trap.h: New file. * sysdeps/generic/math-tests.h: Include . (EXCEPTION_ENABLE_SUPPORTED): Do not define here. * sysdeps/aarch64/math-tests.h: Remove file. * sysdeps/arm/math-tests.h: Likewise. * sysdeps/riscv/math-tests.h: Likewise. * sysdeps/aarch64/math-tests-trap.h: New file. * sysdeps/arm/math-tests-trap.h: Likewise. * sysdeps/riscv/math-tests-trap.h: Likewise. --- ChangeLog | 12 +++++++ .../{math-tests.h => math-tests-trap.h} | 8 +++-- .../arm/{math-tests.h => math-tests-trap.h} | 10 ++++-- sysdeps/generic/math-tests-trap.h | 32 +++++++++++++++++++ sysdeps/generic/math-tests.h | 12 +------ .../riscv/{math-tests.h => math-tests-trap.h} | 9 ++++-- 6 files changed, 64 insertions(+), 19 deletions(-) rename sysdeps/aarch64/{math-tests.h => math-tests-trap.h} (82%) rename sysdeps/arm/{math-tests.h => math-tests-trap.h} (78%) create mode 100644 sysdeps/generic/math-tests-trap.h rename sysdeps/riscv/{math-tests.h => math-tests-trap.h} (82%) diff --git a/ChangeLog b/ChangeLog index 967f0f7b61..09d5e3b881 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2018-08-24 Joseph Myers + + * sysdeps/generic/math-tests-trap.h: New file. + * sysdeps/generic/math-tests.h: Include . + (EXCEPTION_ENABLE_SUPPORTED): Do not define here. + * sysdeps/aarch64/math-tests.h: Remove file. + * sysdeps/arm/math-tests.h: Likewise. + * sysdeps/riscv/math-tests.h: Likewise. + * sysdeps/aarch64/math-tests-trap.h: New file. + * sysdeps/arm/math-tests-trap.h: Likewise. + * sysdeps/riscv/math-tests-trap.h: Likewise. + 2018-08-24 Wilco Dijkstra * math/Makefile: Remove empty files k_sin(f).c, k_cos(f).c. diff --git a/sysdeps/aarch64/math-tests.h b/sysdeps/aarch64/math-tests-trap.h similarity index 82% rename from sysdeps/aarch64/math-tests.h rename to sysdeps/aarch64/math-tests-trap.h index 46cc33741f..b02cb3161e 100644 --- a/sysdeps/aarch64/math-tests.h +++ b/sysdeps/aarch64/math-tests-trap.h @@ -1,4 +1,5 @@ -/* Configuration for math tests. AArch64 version. +/* Configuration for math tests: support for enabling exception traps. + AArch64 version. Copyright (C) 2014-2018 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -16,7 +17,10 @@ License along with the GNU C Library; if not, see . */ +#ifndef AARCH64_MATH_TESTS_TRAP_H +#define AARCH64_MATH_TESTS_TRAP_H 1 + /* Trapping exceptions are optional on AArch64. */ #define EXCEPTION_ENABLE_SUPPORTED(EXCEPT) ((EXCEPT) == 0) -#include_next +#endif /* math-tests-trap.h. */ diff --git a/sysdeps/arm/math-tests.h b/sysdeps/arm/math-tests-trap.h similarity index 78% rename from sysdeps/arm/math-tests.h rename to sysdeps/arm/math-tests-trap.h index 6f5aed453d..855f0daa28 100644 --- a/sysdeps/arm/math-tests.h +++ b/sysdeps/arm/math-tests-trap.h @@ -1,5 +1,6 @@ -/* Configuration for math tests. ARM version. - Copyright (C) 2013-2018 Free Software Foundation, Inc. +/* Configuration for math tests: support for enabling exception traps. + ARM version. + Copyright (C) 2014-2018 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,7 +17,10 @@ License along with the GNU C Library; if not, see . */ +#ifndef ARM_MATH_TESTS_TRAP_H +#define ARM_MATH_TESTS_TRAP_H 1 + /* Not all VFP implementations support trapping exceptions. */ #define EXCEPTION_ENABLE_SUPPORTED(EXCEPT) ((EXCEPT) == 0) -#include_next +#endif /* math-tests-trap.h. */ diff --git a/sysdeps/generic/math-tests-trap.h b/sysdeps/generic/math-tests-trap.h new file mode 100644 index 0000000000..4f759cb968 --- /dev/null +++ b/sysdeps/generic/math-tests-trap.h @@ -0,0 +1,32 @@ +/* Configuration for math tests: support for enabling exception traps. + Generic version. + Copyright (C) 2014-2018 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _MATH_TESTS_TRAP_H +#define _MATH_TESTS_TRAP_H 1 + +/* Indicate whether the given exception trap(s) can be enabled in + feenableexcept. If non-zero, the traps are always supported. If + zero, traps may or may not be supported depending on the target + (this can be determined by checking the return value of + feenableexcept). This enables skipping of tests which use traps. + By default traps are supported unless overridden. */ +#define EXCEPTION_ENABLE_SUPPORTED(EXCEPT) \ + (EXCEPTION_TESTS_float || EXCEPTION_TESTS_double) + +#endif /* math-tests-trap.h. */ diff --git a/sysdeps/generic/math-tests.h b/sysdeps/generic/math-tests.h index bbcecd2819..53502fff2a 100644 --- a/sysdeps/generic/math-tests.h +++ b/sysdeps/generic/math-tests.h @@ -41,17 +41,6 @@ #define EXCEPTION_TESTS(TYPE) MATH_TESTS_TG (EXCEPTION_TESTS_, , TYPE) -/* Indicate whether the given exception trap(s) can be enabled - in feenableexcept. If non-zero, the traps are always supported. - If zero, traps may or may not be supported depending on the - target (this can be determined by checking the return value - of feenableexcept). This enables skipping of tests which use - traps. By default traps are supported unless overridden. */ -#ifndef EXCEPTION_ENABLE_SUPPORTED -# define EXCEPTION_ENABLE_SUPPORTED(EXCEPT) \ - (EXCEPTION_TESTS_float || EXCEPTION_TESTS_double) -#endif - /* Indicate whether exception traps, if enabled, occur whenever an exception flag is set explicitly, so it is not possible to set flag bits with traps enabled without causing traps to be taken. If @@ -66,3 +55,4 @@ #include #include #include +#include diff --git a/sysdeps/riscv/math-tests.h b/sysdeps/riscv/math-tests-trap.h similarity index 82% rename from sysdeps/riscv/math-tests.h rename to sysdeps/riscv/math-tests-trap.h index 6dd08c8757..7ea3d0c452 100644 --- a/sysdeps/riscv/math-tests.h +++ b/sysdeps/riscv/math-tests-trap.h @@ -1,7 +1,7 @@ -/* Configuration for math tests. RISC-V version +/* Configuration for math tests: support for enabling exception traps. + RISC-V version. Copyright (C) 2014-2018 Free Software Foundation, Inc. This file is part of the GNU C Library. - Copied from the aarch64 version The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public @@ -17,7 +17,10 @@ License along with the GNU C Library; if not, see . */ +#ifndef RISCV_MATH_TESTS_TRAP_H +#define RISCV_MATH_TESTS_TRAP_H 1 + /* Trapping exceptions are not supported on RISC-V. */ #define EXCEPTION_ENABLE_SUPPORTED(EXCEPT) ((EXCEPT) == 0) -#include_next +#endif /* math-tests-trap.h. */ -- 2.43.5