gcc/libgfortran/configure.host
Francois-Xavier Coudert 220b9bdfe8 Fortran: add support for IEEE intrinsics on aarch64 non-glibc targets
This enables IEEE support on the upcoming aarch64-apple-darwin target,
and has been tested for some time in an external port.

libgfortran/ChangeLog:

	* configure.host: Add aarch64-apple-darwin support.
	* config/fpu-aarch64.h: New file.
2021-12-20 00:49:10 +01:00

90 lines
1.9 KiB
Plaintext

# configure.host
#
# This shell script handles all host based configuration for libgfortran.
# It sets various shell variables based on the the host triplet.
# You can modify this shell script without rerunning autoconf/aclocal/etc.
# This file is "sourced", not executed.
#
#
# It uses the following shell variables as set by config.guess:
# host The configuration host (full CPU-vendor-OS triplet)
# host_cpu The configuration host CPU
# host_os The configuration host OS
#
#
# It sets the following shell variables:
#
# fpu_host FPU-specific code file, defaults to fpu-generic.
# tmake_file A list of machine-description-specific
# makefile fragments.
# DEFAULTS
fpu_host='fpu-generic'
ieee_support='no'
if test "x${have_fp_enable}" = "xyes" && test "x${have_fp_trap}" = "xyes"; then
fpu_host='fpu-aix'
ieee_support='yes'
fi
if test "x${have_fpsetmask}" = "xyes"; then
fpu_host='fpu-sysv'
ieee_support='yes'
fi
if test "x${have_feenableexcept}" = "xyes"; then
fpu_host='fpu-glibc'
ieee_support='yes'
fi
case "${host_cpu}" in
# x86 asm should be used instead of glibc, since glibc doesn't support
# the x86 denormal exception.
i?86 | x86_64)
if test "x${have_soft_float}" = "xyes"; then
fpu_host='fpu-generic'
ieee_support='no'
else
fpu_host='fpu-387'
ieee_support='yes'
fi
;;
# use asm on aarch64-darwin
aarch64)
case "${host_os}" in
darwin*)
fpu_host='fpu-aarch64'
ieee_support='yes'
;;
esac
esac
# Some targets require additional compiler options for NaN/Inf.
ieee_flags=
case "${host_cpu}" in
alpha*)
ieee_flags="-mieee" ;;
sh*)
ieee_flags="-mieee" ;;
esac
tmake_file=
# Other system configury
case "${target}" in
*-*-aix*)
# Create AIX-style "FAT" libraries.
tmake_file="t-aix"
;;
*)
;;
esac