8
by Michael Hope
Added a README. Re-factored the build into a top level Makefile. |
1 |
= Cortex-A String Routines = |
2 |
||
3 |
This package contains optimised string routines including memcpy(), |
|
4 |
memset(), strcpy(), strlen(), and strcmp() for the ARM Cortex-A series |
|
5 |
of processors. Variants are available for the Cortex-A8 and |
|
6 |
Cortex-A9, as well as variants that make use of the optional NEON |
|
7 |
unit. |
|
8 |
||
9 |
== Getting started == |
|
10 |
These routines can be used either stand-alone or as a GLIBC add-on. |
|
11 |
||
12 |
To use them stand-alone, first configure and then install |
|
13 |
libcortexcpu.so. To make other applications use this library, either |
|
14 |
add -lcortexcpu to the link command or use LD_PRELOAD to load the |
|
15 |
library into existing applications. |
|
16 |
||
17 |
To use them as a GLIBC add-on, first configure and run `make add-on` |
|
18 |
to generate cortexcpu.tar. Extract this into the GLIBC source |
|
19 |
directory, enable the add-on using `--enable-add-ons=cortexcpu` and |
|
20 |
`--with-cpu=cortex-a8`, build GLIBC, and install. |
|
21 |
||
22 |
== Contents == |
|
23 |
* src/ contains the routines themselves |
|
24 |
* tests/ contains the unit tests |
|
25 |
* reference/ contains reference copies of other ARM-focused |
|
26 |
implementations gathered from around the Internet |
|
27 |
* benchmarks/ contains various benchmarks, tools, and scripts used to |
|
28 |
check and report on the different implementations. |
|
29 |
||
30 |
The src directory contains different variants organised by the |
|
31 |
implementation they run on and optional features used. For example: |
|
32 |
* src/thumb-2 contains generic non-NEON routines for all processors |
|
33 |
* src/neon for contains NEON based routines for all processors |
|
34 |
* src/cortex-a8/neon for NEON-based routines especially optimised for the A8 |
|
35 |
||
36 |
== History == |
|
37 |
||
38 |
== Licensing == |
|
39 |
The routines are currently under the modified BSD and simplified BSD. |
|
40 |
||
41 |
== Notes and Limitations == |
|
42 |
This is an early release that contains Cortex-A8 with NEON focused |
|
43 |
routines. Most of the implementations have been collected from other |
|
44 |
projects and have a variety of licenses and copyright holders. Future |
|
11
by Michael Hope
Added GLIBC add-on support |
45 |
releases will tidy this up. |