mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-01-19 04:49:25 +08:00
Check for 64 FP instructions availability in libm before using them
Currently, double precision math functions in newlib/libm/machine/arm detect whether neon instructions can be used for double precision computation by checking the architecture version (>= 8) and the availability of floating-point instructions. However, these instructions would not be available if targeting fpv5-sp-d16 as the FPU, which by definition does not have 64bit float instructions. This patch adds a check that __ARM_FP advertises 64bit float instructions. * libm/machine/arm/s_ceil.c: Also check that 64bit FP instructions are available in the guard. * libm/machine/arm/s_floor.c: Likewise. * libm/machine/arm/s_nearbyint.c: Likewise. * libm/machine/arm/s_rint.c: Likewise. * libm/machine/arm/s_round.c: Likewise. * libm/machine/arm/s_trunc.c: Likewise.
This commit is contained in:
parent
91a8eacec6
commit
5b9873fa72
@ -1,3 +1,13 @@
|
||||
2015-12-09 Thomas Preud'homme <thomas.preudhomme@arm.com>
|
||||
|
||||
* libm/machine/arm/s_ceil.c: Also check that 64bit FP instructions are
|
||||
available in the guard.
|
||||
* libm/machine/arm/s_floor.c: Likewise.
|
||||
* libm/machine/arm/s_nearbyint.c: Likewise.
|
||||
* libm/machine/arm/s_rint.c: Likewise.
|
||||
* libm/machine/arm/s_round.c: Likewise.
|
||||
* libm/machine/arm/s_trunc.c: Likewise.
|
||||
|
||||
2015-12-08 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* libc/stdio/fclose.c (_fclose_r): Make _flockfile/_funlockfile calls
|
||||
|
@ -24,7 +24,7 @@
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
|
||||
|
||||
#if __ARM_ARCH >= 8 && !defined (__SOFTFP__)
|
||||
#if __ARM_ARCH >= 8 && (__ARM_FP & 0x8) && !defined (__SOFTFP__)
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
|
@ -24,7 +24,7 @@
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
|
||||
|
||||
#if __ARM_ARCH >= 8 && !defined (__SOFTFP__)
|
||||
#if __ARM_ARCH >= 8 && (__ARM_FP & 0x8) && !defined (__SOFTFP__)
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
|
@ -24,7 +24,7 @@
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
|
||||
|
||||
#if __ARM_ARCH >= 8 && !defined (__SOFTFP__)
|
||||
#if __ARM_ARCH >= 8 && (__ARM_FP & 0x8) && !defined (__SOFTFP__)
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
|
@ -24,7 +24,7 @@
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
|
||||
|
||||
#if __ARM_ARCH >= 8 && !defined (__SOFTFP__)
|
||||
#if __ARM_ARCH >= 8 && (__ARM_FP & 0x8) && !defined (__SOFTFP__)
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
|
@ -24,7 +24,7 @@
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
|
||||
|
||||
#if __ARM_ARCH >= 8 && !defined (__SOFTFP__)
|
||||
#if __ARM_ARCH >= 8 && (__ARM_FP & 0x8) && !defined (__SOFTFP__)
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
|
@ -24,7 +24,7 @@
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
|
||||
|
||||
#if __ARM_ARCH >= 8 && !defined (__SOFTFP__)
|
||||
#if __ARM_ARCH >= 8 && (__ARM_FP & 0x8) && !defined (__SOFTFP__)
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
|
Loading…
x
Reference in New Issue
Block a user