The following patch provides some further math library fallbacks. fmaf can be implemented using fma if available, fma and fmal can use x * y + z as fallback, it is not perfect, but e.g. glibc on various arches has been using that as fallback for many years, and copysign/copysignl/fabs/fabsl can be implemented using corresponding __builtin_* if we make sure that gcc expands it inline instead of using a library call (these days it is expanded inline on most targets). 2020-04-22 Jakub Jelinek <jakub@redhat.com> PR libfortran/94694 PR libfortran/94586 * configure.ac: Add math func checks for fmaf, fma and fmal. Add HAVE_INLINE_BUILTIN_COPYSIGN check. * c99_protos.h (copysign, fmaf, fma, fmal): Provide fallback prototypes. (HAVE_COPYSIGN, HAVE_FMAF, HAVE_FMA, HAVE_FMAL): Define if not defined and fallback version is provided. * intrinsics/c99_functions.c (copysign, fmaf, fma, fmal): Provide fallback implementations if possible * configure: Regenerated. * config.h.in: Regenerated. * math.m4 (GCC_CHECK_MATH_INLINE_BUILTIN_FALLBACK1, GCC_CHECK_MATH_INLINE_BUILTIN_FALLBACK2): New.
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| ChangeLog | Loading commit data... | |
| acinclude.m4 | Loading commit data... | |
| acx.m4 | Loading commit data... | |
| asmcfi.m4 | Loading commit data... | |
| ax_check_define.m4 | Loading commit data... | |
| ax_count_cpus.m4 | Loading commit data... | |
| ax_pthread.m4 | Loading commit data... | |
| bitfields.m4 | Loading commit data... | |
| bootstrap-O1.mk | Loading commit data... | |
| bootstrap-O3.mk | Loading commit data... | |
| bootstrap-Og.mk | Loading commit data... | |
| bootstrap-asan.mk | Loading commit data... | |
| bootstrap-cet.mk | Loading commit data... | |
| bootstrap-debug-big.mk | Loading commit data... | |
| bootstrap-debug-ckovw.mk | Loading commit data... | |
| bootstrap-debug-lean.mk | Loading commit data... | |
| bootstrap-debug-lib.mk | Loading commit data... | |
| bootstrap-debug.mk | Loading commit data... | |
| bootstrap-lto-lean.mk | Loading commit data... | |
| bootstrap-lto-noplugin.mk | Loading commit data... | |
| bootstrap-lto.mk | Loading commit data... | |
| bootstrap-time.mk | Loading commit data... | |
| bootstrap-ubsan.mk | Loading commit data... | |
| cet.m4 | Loading commit data... | |
| codeset.m4 | Loading commit data... | |
| depstand.m4 | Loading commit data... | |
| dfp.m4 | Loading commit data... | |
| elf.m4 | Loading commit data... | |
| enable.m4 | Loading commit data... | |
| extensions.m4 | Loading commit data... | |
| futex.m4 | Loading commit data... | |
| gc++filt.m4 | Loading commit data... | |
| gcc-plugin.m4 | Loading commit data... | |
| gettext-sister.m4 | Loading commit data... | |
| gettext.m4 | Loading commit data... | |
| glibc21.m4 | Loading commit data... | |
| gthr.m4 | Loading commit data... | |
| gxx-include-dir.m4 | Loading commit data... | |
| hwcaps.m4 | Loading commit data... | |
| iconv.m4 | Loading commit data... | |
| intdiv0.m4 | Loading commit data... | |
| inttypes-pri.m4 | Loading commit data... | |
| inttypes.m4 | Loading commit data... | |
| inttypes_h.m4 | Loading commit data... | |
| isl.m4 | Loading commit data... | |
| largefile.m4 | Loading commit data... | |
| lcmessage.m4 | Loading commit data... | |
| ld-symbolic.m4 | Loading commit data... | |
| lead-dot.m4 | Loading commit data... | |
| lib-ld.m4 | Loading commit data... | |
| lib-link.m4 | Loading commit data... | |
| lib-prefix.m4 | Loading commit data... | |
| libstdc++-raw-cxx.m4 | Loading commit data... | |
| lthostflags.m4 | Loading commit data... | |
| math.m4 | Loading commit data... | |
| mh-alpha-linux | Loading commit data... | |
| mh-cygwin | Loading commit data... | |
| mh-darwin | Loading commit data... | |
| mh-djgpp | Loading commit data... | |
| mh-mingw | Loading commit data... | |
| mh-pa | Loading commit data... | |
| mh-pa-hpux10 | Loading commit data... | |
| mh-ppc-aix | Loading commit data... | |
| mmap.m4 | Loading commit data... | |
| mt-alphaieee | Loading commit data... | |
| mt-android | Loading commit data... | |
| mt-d30v | Loading commit data... | |
| mt-gnu | Loading commit data... | |
| mt-mips-elfoabi | Loading commit data... | |
| mt-mips-gnu | Loading commit data... | |
| mt-mips16-compat | Loading commit data... | |
| mt-nios2-elf | Loading commit data... | |
| mt-ospace | Loading commit data... | |
| mt-sde | Loading commit data... | |
| mt-spu | Loading commit data... | |
| multi.m4 | Loading commit data... | |
| nls.m4 | Loading commit data... | |
| no-executables.m4 | Loading commit data... | |
| override.m4 | Loading commit data... | |
| picflag.m4 | Loading commit data... | |
| plugins.m4 | Loading commit data... | |
| po.m4 | Loading commit data... | |
| proginstall.m4 | Loading commit data... | |
| progtest.m4 | Loading commit data... | |
| sjlj.m4 | Loading commit data... | |
| stdint.m4 | Loading commit data... | |
| stdint_h.m4 | Loading commit data... | |
| target-posix | Loading commit data... | |
| tcl.m4 | Loading commit data... | |
| tls.m4 | Loading commit data... | |
| toolexeclibdir.m4 | Loading commit data... | |
| uintmax_t.m4 | Loading commit data... | |
| ulonglong.m4 | Loading commit data... | |
| unwind_ipinfo.m4 | Loading commit data... | |
| warnings.m4 | Loading commit data... | |
| weakref.m4 | Loading commit data... | |
| zlib.m4 | Loading commit data... |