ATOMIC_FETCH_OR — Atomic bitwise OR operation with prior fetch¶
- ATOMIC_FETCH_OR()¶
ATOMIC_OR(ATOM, VALUE)
atomically stores the value ofATOM
inOLD
and definesATOM
with the bitwise OR between the values ofATOM
andVALUE
. WhenSTAT
is present and the invocation was successful, it is assigned the value 0. If it is present and the invocation has failed, it is assigned a positive value; in particular, for a coindexedATOM
, if the remote image has stopped, it is assigned the value ofISO_FORTRAN_ENV
‘sSTAT_STOPPED_IMAGE
and if the remote image has failed, the valueSTAT_FAILED_IMAGE
.- Parameters
ATOM – Scalar coarray or coindexed variable of integer type with
ATOMIC_INT_KIND
kind.VALUE – Scalar of the same type as
ATOM
. If the kind is different, the value is converted to the kind ofATOM
.OLD – Scalar of the same type and kind as
ATOM
.STAT – (optional) Scalar default-kind integer variable.
Standard:
TS 18508 or later
Class:
Atomic subroutine
Syntax:
CALL ATOMIC_FETCH_OR (ATOM, VALUE, OLD [, STAT])
Example:
program atomic use iso_fortran_env integer(atomic_int_kind) :: atom[*], old call atomic_fetch_or (atom[1], int(b'10100011101'), old) end program atomic
See also:
ATOMIC_DEFINE, ATOMIC_OR, ISO_FORTRAN_ENV, ATOMIC_FETCH_ADD, ATOMIC_FETCH_AND, ATOMIC_FETCH_XOR