1*412f47f9SXin LiArm Optimized Routines 2*412f47f9SXin Li---------------------- 3*412f47f9SXin Li 4*412f47f9SXin LiThis repository contains implementations of library functions 5*412f47f9SXin Liprovided by Arm. The outbound license is available under a dual 6*412f47f9SXin Lilicense, at the user’s election, as reflected in the LICENSE file. 7*412f47f9SXin LiContributions to this project are accepted, but Contributors have 8*412f47f9SXin Lito sign an Assignment Agreement, please follow the instructions in 9*412f47f9SXin Licontributor-agreement.pdf. This is needed so upstreaming code 10*412f47f9SXin Lito projects that require copyright assignment is possible. Further 11*412f47f9SXin Licontribution requirements are documented in README.contributors of 12*412f47f9SXin Lithe appropriate subdirectory. 13*412f47f9SXin Li 14*412f47f9SXin LiRegular quarterly releases are tagged as vYY.MM, the latest 15*412f47f9SXin Lirelease is v24.05. 16*412f47f9SXin Li 17*412f47f9SXin LiSource code layout: 18*412f47f9SXin Li 19*412f47f9SXin Libuild/ - build directory (created by make). 20*412f47f9SXin Limath/ - math subproject sources. 21*412f47f9SXin Limath/include/ - math library public headers. 22*412f47f9SXin Limath/test/ - math test and benchmark related sources. 23*412f47f9SXin Limath/tools/ - tools used for designing the algorithms. 24*412f47f9SXin Linetworking/ - networking subproject sources. 25*412f47f9SXin Linetworking/include/ - networking library public headers. 26*412f47f9SXin Linetworking/test/ - networking test and benchmark related sources. 27*412f47f9SXin Listring/ - string routines subproject sources. 28*412f47f9SXin Listring/include/ - string library public headers. 29*412f47f9SXin Listring/test/ - string test and benchmark related sources. 30*412f47f9SXin Lipl/... - separately maintained performance library code. 31*412f47f9SXin Li 32*412f47f9SXin LiThe steps to build the target libraries and run the tests: 33*412f47f9SXin Li 34*412f47f9SXin Licp config.mk.dist config.mk 35*412f47f9SXin Li# edit config.mk if necessary ... 36*412f47f9SXin Limake 37*412f47f9SXin Limake check 38*412f47f9SXin Li 39*412f47f9SXin LiOr building outside of the source directory: 40*412f47f9SXin Li 41*412f47f9SXin Liln -s path/to/src/Makefile Makefile 42*412f47f9SXin Licp path/to/src/config.mk.dist config.mk 43*412f47f9SXin Liecho 'srcdir = path/to/src' >> config.mk 44*412f47f9SXin Li# further edits to config.mk 45*412f47f9SXin Limake 46*412f47f9SXin Limake check 47*412f47f9SXin Li 48*412f47f9SXin LiOr building and testing the math subproject only: 49*412f47f9SXin Li 50*412f47f9SXin Limake all-math 51*412f47f9SXin Limake check-math 52*412f47f9SXin Li 53*412f47f9SXin LiThe test system requires libmpfr and libmpc. 54*412f47f9SXin LiFor example on debian linux they can be installed as: 55*412f47f9SXin Li 56*412f47f9SXin Lisudo apt-get install libmpfr-dev libmpc-dev 57*412f47f9SXin Li 58*412f47f9SXin LiFor cross build, CROSS_COMPILE should be set in config.mk and EMULATOR 59*412f47f9SXin Lishould be set for cross testing (e.g. using qemu-user or remote access 60*412f47f9SXin Lito a target machine), see the examples in config.mk.dist. 61