Commit 7ac75976 by Martin Liska Committed by Martin Liska

Document Fortran header directive.

2019-02-20  Martin Liska  <mliska@suse.cz>

	* gfortran.texi: Document Fortran header directive.

From-SVN: r269035
parent ea1c2a95
2019-02-20 Martin Liska <mliska@suse.cz>
* gfortran.texi: Document Fortran header directive.
2019-02-19 Thomas Koenig <tkoenig@gcc.gnu.org> 2019-02-19 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/89384 PR fortran/89384
......
...@@ -3505,6 +3505,7 @@ as this requires the new array descriptor. ...@@ -3505,6 +3505,7 @@ as this requires the new array descriptor.
@menu @menu
* ATTRIBUTES directive:: * ATTRIBUTES directive::
* UNROLL directive:: * UNROLL directive::
* BUILTIN directive::
@end menu @end menu
@node ATTRIBUTES directive @node ATTRIBUTES directive
...@@ -3596,6 +3597,25 @@ loop that follows. N is an integer constant specifying the unrolling factor. ...@@ -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. 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 @node Non-Fortran Main Program
@section Non-Fortran Main Program @section Non-Fortran Main Program
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment