xref: /freebsd/contrib/arm-optimized-routines/pl/math/include/pl_test.h (revision 734e82fe33aa764367791a7d603b383996c6b40b)
1 /*
2  * PL macros to aid testing. This version of this file is used for building the
3  * routine, not the tests. Separate definitions are found in test/pl_test.h
4  * which emit test parameters.
5  *
6  * Copyright (c) 2022-2023, Arm Limited.
7  * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception.
8  */
9 
10 /* Emit max ULP threshold - silenced for building the routine.  */
11 #define PL_TEST_ULP(f, l)
12 
13 /* Emit alias. The PL_TEST_ALIAS declaration is piggy-backed on top of
14    strong_alias. Use PL_ALIAS instead of strong_alias to make sure the alias is
15    also added to the test suite.  */
16 #define PL_ALIAS(a, b) strong_alias (a, b)
17 
18 /* Emit routine name if e == 1 and f is expected to correctly trigger fenv
19    exceptions. e allows declaration to be emitted conditionally upon certain
20    build flags - defer expansion by one pass to allow those flags to be expanded
21    properly.  */
22 #define PL_TEST_EXPECT_FENV(f, e)
23 #define PL_TEST_EXPECT_FENV_ALWAYS(f)
24 
25 #define PL_TEST_INTERVAL(f, lo, hi, n)
26 #define PL_TEST_INTERVAL_C(f, lo, hi, n, c)
27