1 Arm Optimized Routines 2 ---------------------- 3 4 This repository contains implementations of math library functions 5 provided by Arm under MIT License (See LICENSE). Contributions 6 to this project are accepted, but the terms will need negotiation (so 7 relicensing and copyright assignment to the FSF is possible later). 8 9 Source code layout: 10 11 auxiliary/ - design tools. 12 build/ - build directory (created by make). 13 math/ - math library source. 14 math/include/ - math library public headers. 15 math/single/ - code for cpu with only single precision support. 16 test/ - test related source. 17 test/rtest/ - test generator (requires mpfr and mpc). 18 test/testcases/ - test cases. 19 20 The steps to build the library and run the tests: 21 22 cp config.mk.dist config.mk 23 # edit config.mk if necessary ... 24 make 25 make check 26 27 Or building outside of the source directory: 28 29 ln -s path/to/src/Makefile Makefile 30 cp path/to/src/config.mk.dist config.mk 31 echo 'srcdir = path/to/src' >> config.mk 32 # further edits to config.mk 33 make 34 make check 35 36 The test system requires libmpfr and libmpc. 37 38 For cross build, CROSS_COMPILE should be set in config.mk and EMULATOR 39 should be set for cross testing (e.g. using qemu-user or remote access 40 to a target machine), see the examples in config.mk.dist. 41 42 The script "remez.jl" was used to generate some of the coefficients 43 (see comments in the code). 44