Intel® Fortran Compiler Classic and Intel® Fortran Compiler Developer Guide and Reference

ID 767251
Date 3/22/2024
Public
Document Table of Contents

TARGET UPDATE

OpenMP* Fortran Compiler Directive: Makes the list items in the device data environment consistent with their corresponding original list items. This feature is only available for ifx.

Syntax

!$OMP TARGET UPDATE motion-clause [, clause[[,] clause]... ]

motion-clause

Is one of the following:

  • FROM ([MAPPER (map-identifier) :] list)

  • TO ([MAPPER (map-identifier) :] list)

The map-identifier must be an accessible map-identifier that is given a user-defined mapper in a DECLARE MAPPER directive. If MAPPER is not present, it is as if MAPPER (DEFAULT) was specified. An accessible user-defined mapper with the same map-identifier that is specified in the MAPPER motion-clause modifies the mapping of a list item with the same type as the user-defined mapper.

If the motion-clause is TO, each list item is replaced with the list items that the specified mapper indicates are to be mapped with a TO or TOFROM map type. Similarly, if the motion-clause is FROM, each list item is replaced with list items that the specified mapper indicates are to be mapped with a FROM or TOFROM map type.

The list is the name of one or more variables or common blocks that are accessible to the scoping unit. Subobjects cannot be specified. Each name must be separated by a comma, and a common block name must appear between slashes (/ /). A list item can be a strided array section.

For each list item in a TO or FROM clause, there is a corresponding list item and an original list item; for more information, see the MAP clause. Note that if the corresponding list item is not present in the device data environment, the behavior is unspecified.

For each list item in a TO clause, the value of the original list item is assigned to the corresponding list item.

For each list item in a FROM clause, the value of the corresponding list item is assigned to the original list item.

A list item or subobject of a list item that has the ALLOCATABLE attribute is updated only if it is allocated. A list item that has the POINTER attribute whose association status is associated, the update is performed with respect to the pointer target

A list item can only appear in a TO or FROM clause, but not both.

clause

Is one of the following:

The binding task for a TARGET UPDATE construct is the encountering task. The TARGET UPDATE directive is a stand-alone directive.

A TARGET UPDATE construct must not appear inside of a target region.