diff options
author | Martin Liska <mliska@suse.cz> | 2019-02-20 10:23:12 +0100 |
---|---|---|
committer | Martin Liska <marxin@gcc.gnu.org> | 2019-02-20 09:23:12 +0000 |
commit | 7ac75976af9e976a5ed9a127001a2e6c0ee237f8 (patch) | |
tree | 3f39d851e9f4727c7d5acf2d27c4b4c077cc1753 /gcc | |
parent | ea1c2a95bad9e11a1355f9ecd8f310f8eef1b718 (diff) | |
download | gcc-7ac75976af9e976a5ed9a127001a2e6c0ee237f8.zip gcc-7ac75976af9e976a5ed9a127001a2e6c0ee237f8.tar.gz gcc-7ac75976af9e976a5ed9a127001a2e6c0ee237f8.tar.bz2 |
Document Fortran header directive.
2019-02-20 Martin Liska <mliska@suse.cz>
* gfortran.texi: Document Fortran header directive.
From-SVN: r269035
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/fortran/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/fortran/gfortran.texi | 20 |
2 files changed, 24 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index ae06290..525e8a5 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,7 @@ +2019-02-20 Martin Liska <mliska@suse.cz> + + * gfortran.texi: Document Fortran header directive. + 2019-02-19 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/89384 diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi index 02ff32f..39441bd 100644 --- a/gcc/fortran/gfortran.texi +++ b/gcc/fortran/gfortran.texi @@ -3505,6 +3505,7 @@ as this requires the new array descriptor. @menu * ATTRIBUTES directive:: * UNROLL directive:: +* BUILTIN directive:: @end menu @node ATTRIBUTES directive @@ -3596,6 +3597,25 @@ loop that follows. N is an integer constant specifying the unrolling factor. The values of 0 and 1 block any unrolling of the loop. +@node BUILTIN directive +@subsection BUILTIN directive + +The syntax of the directive is + +@code{!GCC$ BUILTIN (B) attributes simd FLAGS IF('target')} + +You can use this directive to define which middle-end built-ins provide vector +implementations. @code{B} is name of the middle-end built-in. @code{FLAGS} +are optional and must be either "(inbranch)" or "(notinbranch)". +@code{IF} statement is optional and is used to filter multilib ABIs +for the built-in that should be vectorized. Example usage: + +@smallexample +!GCC$ builtin (sinf) attributes simd (notinbranch) if('x86_64') +@end smallexample + +The purpose of the directive is to provide an API among the GCC compiler and +the GNU C Library which would define vector implementation of math routines. @node Non-Fortran Main Program @section Non-Fortran Main Program |