| Arm Optimized Routines |
| ---------------------- |
| |
| This repository contains implementations of math library functions |
| provided by Arm under MIT License (See LICENSE). Contributions |
| to this project are accepted, but the terms will need negotiation (so |
| relicensing and copyright assignment to the FSF is possible later). |
| |
| Source code layout: |
| |
| auxiliary/ - design tools. |
| build/ - build directory (created by make). |
| math/ - math library source. |
| math/include/ - math library public headers. |
| math/single/ - code for cpu with only single precision support. |
| test/ - test related source. |
| test/rtest/ - test generator (requires mpfr and mpc). |
| test/testcases/ - test cases. |
| |
| The steps to build the library and run the tests: |
| |
| cp config.mk.dist config.mk |
| # edit config.mk if necessary ... |
| make |
| make check |
| |
| Or building outside of the source directory: |
| |
| ln -s path/to/src/Makefile Makefile |
| cp path/to/src/config.mk.dist config.mk |
| echo 'srcdir = path/to/src' >> config.mk |
| # further edits to config.mk |
| make |
| make check |
| |
| The test system requires libmpfr and libmpc. |
| |
| For cross build, CROSS_COMPILE should be set in config.mk and EMULATOR |
| should be set for cross testing (e.g. using qemu-user or remote access |
| to a target machine), see the examples in config.mk.dist. |
| |
| The script "remez.jl" was used to generate some of the coefficients |
| (see comments in the code). |