Add ARMv7 optimized strlen()

Merge the ARM optimized strlen() routine from Linaro.  Although it is
optimized for ARM Cortex-A9, the performance is still reasonably faster
than the original on Cortex-A8 machines.

Reference benchmark on Nexus S (ARM Cortex-A8; 1 GHz):

[before]
             prc thr   usecs/call      samples   errors cnt/samp     size
strlen_1k      1   1      1.31712           97        0     1000     1024

[after]
             prc thr   usecs/call      samples   errors cnt/samp     size
strlen_1k      1   1      1.05855           96        0     1000     1024

Change-Id: I33835b65bfed434279cfcd34efd848de40c69dfe
Bionic/libm: Add precision-correct de-serialize sin/cos

Modify sin/cos to improve performance while retaining bit-for-bit
accuracy with existing algorithm.

Change-Id: Icbd6d66fb1c0ceb53f43fed6541e0c89cc6e7a63
Revert "Revert "libm: Add a proper sincos() implementation""

This MURDERS our 3D scores. Sin/Cos is involved in doing rotate transformations, not "distance" as was sited in the original reversion.

This reverts commit 6efef5717e12c482cbb6e89cae1b906eec3a1dfe.

Change-Id: Ifc626085800ba19732499017a5c1f4f08a8c13e1