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.

Reply via email to