[ARM] libm: squashed CAF e_pow implementation made generic

The following commits have been edited to be more
general than just for qcom devices. Any arm neon device
will benefit from this change.

commit 5587d4f73977774f12f7e459edf05881ca4d4367
Author: Lucas Crowthers <lucasc@codeaurora.org>
Date:   Thu Apr 25 15:56:16 2013 -0400

    libm: optimistic pow calling.

    Call optimized pow optimistically and revert to full range
    implementation if we detect an out-of-range input.

    Change-Id: I6f3aa734adbf99484b7ff70736ef83a41e5815b8

commit 1801b320beeae4ec6078e46d45bbf65d6c8e8bee
Author: Lucas Crowthers <lucasc@codeaurora.org>
Date:   Mon Aug 27 14:35:57 2012 -0400

    Bionic/libm: Pow optimizations and bug fixes.

    Use VFP calling convention for pow_neon handoff function by default.
    Fix register usage collision between two different polynomial
    coefficients in pow_neon.  Remove conditional execution in pow_neon
    and replace with branching.

    Change-Id: I76095f4a006e2fb01a53943b66fd69bfa1fd3033

commit 688c9786420309ee660e9641c6523ec8b78f30d2
Author: Lucas Crowthers <lucasc@codeaurora.org>
Date:   Mon Aug 27 14:27:59 2012 -0400

    Bionic/libm: Prefer branches and VFP ABI.

    For internal functions set gcc attribute "aapcs-vfp" for ARM
    and use -fno-if-conversion to prefer branches over predicated
    instructions (improves performance on architectures with good
    branch prediction).

    Change-Id: I8424e0e82a19d35e7e3b6e3e122dcdecdd5426fd

commit eb45d36b9c23707551f73581c5bf181e46acd381
Author: Lucas Crowthers <lucasc@codeaurora.org>
Date:   Fri Jun 15 19:27:46 2012 -0400

    Bionic/libm: fast neon pow() for small x,y.

    Add a fast neon version of pow() suitable for relatively small
    positive x and y (between 0 and 4).  Run the standard
    implementation in all other cases.  Gives approximately 60%
    performance improvement to AnTuTu FPU scores

    Change-Id: I97e0712daeb2740764b26a44be0caaa39c481453