cry2mips(3F)
CRY2MIPS, MIPS2CRY - Converts Fortran data types between Cray Fortran data types and MIPS IEEE Fortran data types
As shipped in IRIX 6.5.7. Last changed in IRIX 6.5.5.
NAME CRY2MIPS, MIPS2CRY - Converts Fortran data types between Cray Fortran data types and MIPS IEEE Fortran data types SYNOPSIS INTEGER CRY2MIPS, MIPS2CRY ierr = CRY2MIPS(type, num, foreign, bitoff, native, stride, natlen, forlen[,nativech]) ierr = MIPS2CRY(type, num, foreign, bitoff, native, stride, natlen, forlen[,nativech]) IMPLEMENTATION UNICOS systems (except CRAY T90 systems that support IEEE arithmetic) IRIX systems DESCRIPTION CRY2MIPS converts Cray Fortran data types (abbreviated as "Cray" in the following text) to data for systems that use MIPS IEEE Fortran data types (abbreviated as "MIPS" in the following text). MIPS2CRY converts MIPS IEEE Fortran data types to Cray Fortran data types. When using the CF90 compiler or MIPSpro 7 Fortran 90 compiler on UNICOS or IRIX systems, all arguments must be of default kind unless documented otherwise. On UNICOS systems, the default kind is KIND=8 for integer, real, complex, and logical arguments; on IRIX systems, the default kind is KIND=4. The following is a list of valid parameters for this routine. type An integer giving the data type code, as follows. Code Description 1 Typeless (no translation; natlen and forlen must be equal and must be 64-, 128-, or 256-bits.) 2 Integer Cray: 64-bit twos complement MIPS: 8-, 16-, 32- or 64-bit twos complement 3 Real Cray: 64- or 128-bit Cray real MIPS: 32-, 64-, or 128-bit MIPS real 4 Complex Cray: 2 x 64 bit or 128-bit floating-point MIPS: 2 x 32, 64-bit, or 128-bit floating-point 5 Logical CRAY: 64-bit positive/negative logical MIPS: 8-, 16-, 32-, or 64-bit zero/nonzero logical 6 Character ASCII to ASCII; no translation. The natlen and forlen parameters select the size of the data. num Number of data items to convert. Type integer variable, expression, or constant. foreign Variable or array of any noncharacter type or length to contain data which is not native to the current system. bitoff Integer variable, expression, or constant giving the bit offset within the foreign data variable or array to begin the conversion. bitoff must be at least 0 and no more than 63. native Variable or array of any noncharacter type or length to contain data which is native to the current system. This variable or array should be of a type that corresponds to type. If type=6, use a dummy integer variable and the nativech parameter (see description of nativech). stride Integer variable or constant giving the memory increment for loading or storing data to the native array. For two and four-word items (complex and double-precision), this is a stride of items, not of words. For typeless, stride is always in words. This parameter is ignored for CHARACTER (type = 6). Data in the foreign array is loaded or stored in a continuous bit stream regardless of this parameter. natlen Native storage length of an item, in bits. For COMPLEX data, natlen counts the total size of the real and imaginary component. forlen Foreign storage length of an item, in bits. For COMPLEX data, forlen counts the total size of the real and imaginary components. nativech Optional character parameter specifying native target variable if it is of type character (type = 6). This parameter is ignored if type is not character. CAUTION The foreign and native variables should not be associated (aliased to each other). RETURN VALUES The returned function values are as follows: <0 Parameter error; no translation performed. -1 Parameter error; too few arguments or nativech not specified with type = 6. This error is not returned on IRIX systems. -2 Parameter error; invalid type. -3 Parameter error; invalid num. -4 Parameter error; invalid bitoff. -5 Parameter error; invalid natlen. -6 Parameter error; invalid forlen. -7 Unable to malloc() memory for translation. -8 Combination of natlen and forlen is invalid. -9 native must be 64-bit word-aligned (CRAY only) -10 foreign must be 64-bit word-aligned. 0 Translation complete; no errors. >0 Translation complete; return value is the number of integer or real values that completely overflowed during conversion. Overflows and NaNs which exist before conversion are not included. SEE ALSO Application Programmer's Library Reference Manual for the printed version of this man page.