Skip to content

Commit

Permalink
Disable libgfortran 10 and 16 byte REAL - it requires either _Float12…
Browse files Browse the repository at this point in the history
…8 or 10 and 16 byte long double
  • Loading branch information
Blackhex committed Oct 27, 2023
1 parent fc78c33 commit f3d83db
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 18 deletions.
2 changes: 1 addition & 1 deletion libgfortran/configure
Original file line number Diff line number Diff line change
Expand Up @@ -6224,7 +6224,7 @@ fi
# or floating point numbers – or may want to reduce the libgfortran size
# although they do have the support.
LIBGOMP_CHECKED_INT_KINDS="1 2 4 8 16"
LIBGOMP_CHECKED_REAL_KINDS="4 8 10 16"
LIBGOMP_CHECKED_REAL_KINDS="4 8"



Expand Down
2 changes: 1 addition & 1 deletion libgfortran/configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -225,7 +225,7 @@ AM_CONDITIONAL(LIBGFOR_MINIMAL, [test "x${target_cpu}" = xnvptx])
# or floating point numbers – or may want to reduce the libgfortran size
# although they do have the support.
LIBGOMP_CHECKED_INT_KINDS="1 2 4 8 16"
LIBGOMP_CHECKED_REAL_KINDS="4 8 10 16"
LIBGOMP_CHECKED_REAL_KINDS="4 8"

AC_SUBST(LIBGOMP_CHECKED_INT_KINDS)
AC_SUBST(LIBGOMP_CHECKED_REAL_KINDS)
Expand Down
33 changes: 17 additions & 16 deletions libgfortran/mk-kinds-h.sh
Original file line number Diff line number Diff line change
Expand Up @@ -68,22 +68,23 @@ for k in $possible_real_kinds; do
# If we have a REAL(KIND=10), it is always long double
10) ctype="long double" ; cplxtype="complex long double" ; suffix="l" ;;
# If we have a REAL(KIND=16), it is either long double or _Float128
16) if [ $long_double_kind -ne 16 ]; then
ctype="_Float128"
cplxtype="_Complex _Float128"
echo "#define GFC_REAL_16_IS_FLOAT128"
if [ x$use_iec_60559 = xyes ]; then
suffix="f128"
echo "#define GFC_REAL_16_USE_IEC_60559"
else
suffix="q"
fi
else
ctype="long double"
cplxtype="complex long double"
suffix="l"
echo "#define GFC_REAL_16_IS_LONG_DOUBLE"
fi ;;
16)
if [ $long_double_kind -ne 16 ]; then
ctype="_Float128"
cplxtype="_Complex _Float128"
echo "#define GFC_REAL_16_IS_FLOAT128"
if [ x$use_iec_60559 = xyes ]; then
suffix="f128"
echo "#define GFC_REAL_16_USE_IEC_60559"
else
suffix="q"
fi
else
ctype="long double"
cplxtype="complex long double"
suffix="l"
echo "#define GFC_REAL_16_IS_LONG_DOUBLE"
fi ;;
*) echo "$0: Unknown type" >&2 ; exit 1 ;;
esac

Expand Down

0 comments on commit f3d83db

Please sign in to comment.