SHMEM_FINC(3)SHMEM_FINC(3)


NAME
     shmem_int4_finc, shmem_int8_finc, shmem_int_finc, shmem_long_finc,
     shmem_longlong_finc - Performs an atomic fetch-and-increment operation
     on a remote data object

SYNOPSIS
     C or C++:

        #include <mpp/shmem.h>

        int shmem_int_finc(int *target, int pe);

        long shmem_long_finc(long *target, int pe);

        long long shmem_longlong_finc(long long *target, int pe);
     Fortran:

        INTEGER pe

        INTEGER(KIND=4) SHMEM_INT4_FINC, target4

        INTEGER(KIND=8) SHMEM_INT8_FINC, target8

        ires4 = SHMEM_INT4_FINC(target4, pe)

        ires8 = SHMEM_INT8_FINC(target8, pe)

DESCRIPTION
     These functions perform a fetch-and-increment operation.  The target
     on processing element (PE) pe is increased by one and the function
     returns the previous contents of target as an atomic operation.

     The arguments are as follows:

     target    The remotely accessible integer data object to be updated on
               the remote PE.  The type of target should match that implied
               in the SYNOPSIS section.

     pe        An integer that indicates the PE number on which target is
               to be updated. If you are using Fortran, it must be a
               default integer value.

NOTES
     The term remotely accessible is defined in intro_shmem(3).

RETURN VALUES
     The contents that had been at the target address on the remote PE
     prior to the increment.

SEE ALSO
     intro_shmem(3),