diff options
Diffstat (limited to 'config')
-rw-r--r-- | config/ChangeLog | 4 | ||||
-rw-r--r-- | config/dfp.m4 | 53 |
2 files changed, 57 insertions, 0 deletions
diff --git a/config/ChangeLog b/config/ChangeLog index 40e51f15212..cc20f81233d 100644 --- a/config/ChangeLog +++ b/config/ChangeLog @@ -1,3 +1,7 @@ +2010-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> + + * dfp.m4: New file. + 2010-09-01 Andi Kleen <ak@linux.intel.com> * bootstrap-lto.mk (STAGE2_CFLAGS, STAGE3_CFLAGS): Change diff --git a/config/dfp.m4 b/config/dfp.m4 new file mode 100644 index 00000000000..4cace763fa4 --- /dev/null +++ b/config/dfp.m4 @@ -0,0 +1,53 @@ +dnl @synopsis GCC_AC_ENABLE_DECIMAL_FLOAT([target triplet]) +dnl +dnl Enable C extension for decimal float if target supports it. +dnl +dnl @author Andreas Krebbel <Andreas.Krebbel@de.ibm.com> + +AC_DEFUN([GCC_AC_ENABLE_DECIMAL_FLOAT], +[ +AC_ARG_ENABLE(decimal-float, +[ --enable-decimal-float={no,yes,bid,dpd} + enable decimal float extension to C. Selecting 'bid' + or 'dpd' choses which decimal floating point format + to use], +[ + case $enable_decimal_float in + yes | no | bid | dpd) ;; + *) AC_MSG_ERROR(['$enable_decimal_float' is an invalid value for --enable-decimal-float. +Valid choices are 'yes', 'bid', 'dpd', and 'no'.]) ;; + esac +], +[ + case $1 in + powerpc*-*-linux* | i?86*-*-linux* | x86_64*-*-linux* | s390*-*-linux*) + enable_decimal_float=yes + ;; + *) + AC_MSG_WARN(decimal float is not supported for this target, ignored) + enable_decimal_float=no + ;; + esac +]) + +# x86's use BID format instead of DPD +case x$enable_decimal_float in + xyes) + case $1 in + i?86*-*-* | x86_64*-*-*) + enable_decimal_float=bid + ;; + *) + enable_decimal_float=dpd + ;; + esac + ;; + xno) + # ENABLE_DECIMAL_FLOAT is set to 0. But we have to have proper + # dependency on libdecnumber. + enable_decimal_float=dpd + ;; +esac +AC_SUBST(enable_decimal_float) + +])
\ No newline at end of file |