Fortran User's Guide

Intrinsics

f90 supports some intrinsic procedures which are extensions beyond the standard.

Table C-4 Nonstandard Intrinsics

 

 

  Type

 

 

Name 

Definition 

Function 

Arguments 

Arguments 

Notes 

CLOC

Get Fortran character descriptor (FCD)

Cray character pointer 

character 

([C=]c)

NP, I 

COT

Cotangent 

real 

real 

([X=]x)

P, E 

DDIM

Positive difference 

double precision 

double precision 

([X=]x,[Y=]y)

P, E 

FCD

Create Cray character pointer in Fortran character descriptor (FCD) format

Cray pointer 

i: integer    or Cray pointer 

j: integer 

([I=]i,[J=]j)

i: word address of first character 

j: character length 

NP, I 

LEADZ

Get the number of leading 0 bits 

integer 

Boolean, integer, real, or pointer 

([I=]i)

NP, I 

POPCNT

Get the number of set bits 

integer 

Boolean, integer, real, or pointer 

([I=]i)

NP, I 

POPPAR

Calculate bit population parity 

integer 

Boolean, integer, real, or pointer 

([X=]x)

NP, I 

Notes on the above table: 

The name can be passed as an argument. 

NP 

The name cannot be passed as an argument. 

External code for the intrinsic is called at run time. 

f90 generates inline code for the intrinsic procedure.