On Tue, Oct 25, 2016 at 9:41 PM, Toon Moene <t...@moene.org> wrote: > On 10/25/2016 10:16 AM, Richard Biener wrote: > >> On Mon, Oct 24, 2016 at 10:20 PM, Toon Moene <t...@moene.org> wrote: > > >>> Note that I haven't found the time to implement the vectorization of >>> log/exp/sin/cos/tan functions that I described here: >>> >>> https://gcc.gnu.org/ml/gcc/2016-01/msg00039.html >> >> >> It works transparently already if you have recent glibc which adds >> the appropriate attribute to the math function prototypes (basically >> one release after the release that first implemented the routines >> though the required patch is trivial to backport as well). > > > But that is for code that read math function prototypes in C style .h files > - so not for Fortran or Ada. > > That was the purpose of my proposal: to treat glibc vectorized > log/exp/sin/cos/tan functions like the vendor specific once > (-mveclibabi=svml and -mveclibabi=acml), which is front end language > agnostic.
Ah, indeed. Not sure if I would go the -mveclibabi route though as the glibc implementation is basically OpenMP-SIMD. The list of "vectorized" functions may also depend on glibc version and target so maybe glibc can ship something like a fortran math module which gfortran can include transparently? Like we have the predefs header in C? That is, glibc needs a way to communicate its configuration to fortran... (not sure if a GCC configure time config would be good enough) Richard.