4.7. Utility Library

The utility library, which contains the flexible file I/O and numeric conversion routines, includes the following routines:

4.7.1. Flexible File I/O Routines

The majority of FFIO layers are available on Cray X1 systems, with the following exceptions:

4.7.2. Numeric Conversion Routines

Table 4-14 lists the numeric conversion routines that Cray X1 systems support. Some routines that support conversion to older Cray systems are not listed. The unsupported numeric conversion routines convert:

Table 4-14. Supported Cray X1 Numeric Conversion Routines

Name

Purpose

IEG2IBM and IBM2IEG

Converts between generic IEEE data types and IBM data types.

CRY2IEG and IEG2CRY

Converts between Cray SV1 series systems Fortran data types and generic IEEE data types.

IEG2IEU and IEU2IEG

Converts between generic IEEE data types and Ultrix style little-endian IEEE data types.

IEG2VAX and VAX2IEG

Converts between generic IEEE data types and VAX Fortran data types.

CRI2IEG and IEG2CRI

Converts between Cray T90 system IEEE data types and generic IEEE data types.

MPP2IEG and IEG2MIPS

Converts between Cray T3E system data types and generic IEEE data types.

MIPS2IEG and IEG2MIPS

Converts between MIPS data types and generic IEEE data types.

IA2IEG and IEG2IA

Converts between Intel data types and generic IEEE data types.

Table 4-15. Unsupported CDC Conversion Routines

Name

Purpose

CRAY2CDC and CDC2CRAY

Converts between CDC data and Cray SV1 series systems data types.

CRAY2ETA and ETA2CRAY

Converts between ETA/CYBER205 data and Cray SV1 series systems data types.

CRAY2NVE and NVE2CRAY

Converts between NOS/VE data and Cray SV1 series systems data types.

P6460 and U6064

Packs or unpacks 60-bit words into or from Cray SV1 series systems 64-bit words.

ASCDC and DSASC

Converts between CDC display code characters and ASCII characters.

FP6064 and FP6460

Converts between CDC 60-bit and Cray SV1 series systems 64-bit numbers.

INT6064 and INT6460

Converts between CDC 60-bit integers and Cray SV1 series systems 64-bit integers.

Table 4-16. Unsupported IBM Conversion Routines

Name

Purpose

CRAY2IBD and IBD2CRAY

Converts between IBM and Cray SV1 series systems. Single and double floating-point values are both treated as 64 bits.

CRAY2IBM and IBM2CRAY

Converts between IBM and Cray SV1 series systems data types.

P32 and U32

Packs and unpacks 32-bit items from 64-bit items.

USDCTC

Converts IBM 64-bit floating-point to Cray SV1 series systems real data type.

USDCTI

Converts Cray SV1 series systems real data type to IBM 64-bit floating point.

USICTC

Converts an IBM 2-byte or 4-byte integer to a Cray SV1 series systems 8-byte integer.

USICTI

Converts a Cray SV1 series systems 8-byte integer to an IBM 2-byte or 4-byte integer.

USICTP

Converts a Cray SV1 series systems integer to an IBM packed decimal.

USLCTC

Converts an IBM 1-byte or IBM 4-byte logical to a Cray SV1 series systems 8-byte logical.

USLCTI

Converts a Cray SV1 series systems 8-byte logical to an IBM 1-byte or IBM 4-byte logical.

USPCTC

Converts an IBM pack decimal to a 64-bit integer.

USSCTC

Converts two IBM (32-bit) single precision reals, packed two per Cray SV1 series systems 64-bit word, into two Cray SV1 series systems single precision (64-bit) floating-point variables.

USSCTI

Converts two Cray SV1 series systems single precision values (64-bits each) into two IBM single precision values (32-bits each) packed in a Cray SV1 series systems 64-bit word.

Table 4-17. Unsupported VAX/VMS Conversion Routines

Name

Purpose

VAX2CRAY and CRAY2VAX

Converts between Cray SV1 series systems data types and VAX/VMS data types.

VXBCTI and VXBCTC

Converts between Cray SV1 series systems non-IEEE double precision numbers and VAX 64-bit D format values.

VXDCTC and VXDCTI

Converts between Cray SV1 series systems non-IEEE single precision numbers and VAX 64-bit D format values.

VXGCTC and VXGCTI

Converts between Cray SV1 series systems non-IEEE single precision numbers and VAX 64-bit G format values.

VXICTC and VXITI

Converts between Cray SV1 series systems 64-bit integers and VAX 16-bit and 32-bit integers.

VXLCTC and VXLCTI

Converts between Cray SV1 series systems 64-bit logical values and VAX logical values.

VXSCTC and VXSCTI

Converts between Cray SV1 series systems non-IEEE single precision numbers and VAX 32-bit F format values.

VXZCTC and VXZCTI

Converts between Cray SV1 series systems non-IEEE complex single precision numbers and VAX 64-bit D format complex values.