aboutsummaryrefslogtreecommitdiff
path: root/math/Dir.mk
AgeCommit message (Collapse)Author
2022-12-07math: Set fenv exceptions for several Neon routinesJoe Ramsay
In most cases, we mask lanes which should not trigger exceptions with a neutral value, then let the existing special-case handler fix them up later. For exp and exp2 we replace the more complex special-case handler with a simple scalar fallback. All new behaviour is tested in runulp.sh, with a new option to pass -f to the run line. We also extend the fenv testing to Neon log and logf, which already triggered exceptions correctly. New behaviour is mostly hidden behind a new config setting, WANT_SIMD_EXCEPT.
2022-03-25Add build system and infra for the pl directoryPierre Blanchard
- pl/ is built from top-level Makefile by adding pl to SUBS - PLSUBS lists all pl/ subdirectories that can be built, it only contains math for now. Please modify this list in the top-level config.mk. - pl libraries and infrastructure is built in build/pl/ - As a result math/ and pl/math generate separate test and bench binaries. - Use infrastructure provided in math/test to test and profile pl/math routines. The build system ensures the appropriate header files are first copied to build/pl/include/test to define wrappers and entries in ulp and mathbench. - Copyied scalar erff from math/ to pl/math/ to show build system is functional. - pl mathlib libraries are built separately to the main/portable mathlib libraries and installed alongside.
2022-02-10Update lincense to MIT OR Apache-2.0 WITH LLVM-exceptionSzabolcs Nagy
The outgoing license was MIT only. The new dual license allows using the code under Apache-2.0 WITH LLVM-exception license too.
2019-11-22Build system refactoringSzabolcs Nagy
Reorganise the makefiles so subprojects can be more separately used and maintained. Still kept the single toplevel Makefile and config.mk. Subproject Dir.mk is expected to provide all-X, check-X, clean-X and install-X targets where X is the subproject name and it may use generic make variables set in config.mk, like CFLAGS_ALL and CC, or subproject specific variables like X-cflags.
2019-10-14math: more robust mathbench_libcSzabolcs Nagy
Not all symbols referenced by mathbench may be available in libc so link to libmathlib too to resolve the missing symbols.
2019-10-08Support running the math tests without fenv checksSzabolcs Nagy
fenv support is not reliable in clang so provide a mechanism to disable fenv status checks and only check the result values.
2019-10-08Support separate CFLAGS per subprojectSzabolcs Nagy
Users may want different CFLAGS for math and string subprojects, expose a mechanism for this in config.mk.
2019-07-22Reorganize the directory layoutSzabolcs Nagy
To allow subprojects other than math, the build system and directory layout is changed: all math related code, tools and tests are under the math directory now, new subprojects should be similarly self- contained. The top level Makefile design is still kept, but the subproject build directories provide their own Dir.mk with the build rules for the subproject. The user interface of config.mk is kept for now, in the future subproject specific flags and make variables may be added for finer grained control.