HOME
| OPENMP API Specification: "Version 5.2 -- GIT rev 95b2e3a44"

7.7  declare simd Directive

Name: declare simd

Association: declaration

Category: declarative

Properties: pure

Arguments

declare simd[(proc-name)]

Name

Type

Properties

proc-name

identifier of function type

optional

Clause groups

branch

Clauses

aligned, linear, simdlen, uniform

Semantics

The association of one or more declare simd directives with a function declaration or definition enables the creation of corresponding SIMD versions of the associated function that can be used to process multiple arguments from a single invocation in a SIMD loop concurrently.

If a SIMD version is created and the simdlen clause is not specified, the number of concurrent arguments for the function is implementation defined.

For purposes of the linear clause, any integer-typed parameter that is specified in a uniform clause on the directive is considered to be constant and so may be used in linear-step.

The expressions that appear in the clauses of each directive are evaluated in the scope of the arguments of the function declaration or definition.
The special this pointer can be used as if it was one of the arguments to the function in any of the linear, aligned, or uniform clauses.

Restrictions

Restrictions to the declare simd directive are as follows:

Cross References