1 /* 2 * Copyright (c) 2000-2003 LSI Logic Corporation. 3 * 4 * 5 * Name: mpi_type.h 6 * Title: MPI Basic type definitions 7 * Creation Date: June 6, 2000 8 * 9 * mpi_type.h Version: 01.05.xx 10 * 11 * Version History 12 * --------------- 13 * 14 * Date Version Description 15 * -------- -------- ------------------------------------------------------ 16 * 05-08-00 00.10.01 Original release for 0.10 spec dated 4/26/2000. 17 * 06-06-00 01.00.01 Update version number for 1.0 release. 18 * 11-02-00 01.01.01 Original release for post 1.0 work 19 * 02-20-01 01.01.02 Added define and ifdef for MPI_POINTER. 20 * 08-08-01 01.02.01 Original release for v1.2 work. 21 * -------------------------------------------------------------------------- 22 */ 23 24 #ifndef MPI_TYPE_H 25 #define MPI_TYPE_H 26 27 28 /******************************************************************************* 29 * Define MPI_POINTER if it hasn't already been defined. By default MPI_POINTER 30 * is defined to be a near pointer. MPI_POINTER can be defined as a far pointer 31 * by defining MPI_POINTER as "far *" before this header file is included. 32 */ 33 #ifndef MPI_POINTER 34 #define MPI_POINTER * 35 #endif 36 37 38 /***************************************************************************** 39 * 40 * B a s i c T y p e s 41 * 42 *****************************************************************************/ 43 44 typedef signed char S8; 45 typedef unsigned char U8; 46 typedef signed short S16; 47 typedef unsigned short U16; 48 49 50 #if defined(unix) || defined(__arm) || defined(ALPHA) 51 52 typedef signed int S32; 53 typedef unsigned int U32; 54 55 #else 56 57 typedef signed long S32; 58 typedef unsigned long U32; 59 60 #endif 61 62 63 typedef struct _S64 64 { 65 U32 Low; 66 S32 High; 67 } S64; 68 69 typedef struct _U64 70 { 71 U32 Low; 72 U32 High; 73 } U64; 74 75 76 /****************************************************************************/ 77 /* Pointers */ 78 /****************************************************************************/ 79 80 typedef S8 *PS8; 81 typedef U8 *PU8; 82 typedef S16 *PS16; 83 typedef U16 *PU16; 84 typedef S32 *PS32; 85 typedef U32 *PU32; 86 typedef S64 *PS64; 87 typedef U64 *PU64; 88 89 90 #endif 91 92