1*ce95e1b3SDavid du Colombier /* Parameters derived from machine and compiler architecture */ 2*ce95e1b3SDavid du Colombier 3*ce95e1b3SDavid du Colombier /* ---------------- Scalar alignments ---------------- */ 4*ce95e1b3SDavid du Colombier 5*ce95e1b3SDavid du Colombier #define ARCH_ALIGN_SHORT_MOD 2 6*ce95e1b3SDavid du Colombier #define ARCH_ALIGN_INT_MOD 4 7*ce95e1b3SDavid du Colombier #define ARCH_ALIGN_LONG_MOD 4 8*ce95e1b3SDavid du Colombier #define ARCH_ALIGN_PTR_MOD 4 9*ce95e1b3SDavid du Colombier #define ARCH_ALIGN_FLOAT_MOD 4 10*ce95e1b3SDavid du Colombier #define ARCH_ALIGN_DOUBLE_MOD 8 11*ce95e1b3SDavid du Colombier #define ARCH_ALIGN_STRUCT_MOD 8 12*ce95e1b3SDavid du Colombier 13*ce95e1b3SDavid du Colombier /* ---------------- Scalar sizes ---------------- */ 14*ce95e1b3SDavid du Colombier 15*ce95e1b3SDavid du Colombier #define ARCH_LOG2_SIZEOF_SHORT 1 16*ce95e1b3SDavid du Colombier #define ARCH_LOG2_SIZEOF_INT 2 17*ce95e1b3SDavid du Colombier #define ARCH_LOG2_SIZEOF_LONG 2 18*ce95e1b3SDavid du Colombier #define ARCH_LOG2_SIZEOF_LONG_LONG 3 19*ce95e1b3SDavid du Colombier #define ARCH_SIZEOF_PTR 4 20*ce95e1b3SDavid du Colombier #define ARCH_SIZEOF_FLOAT 4 21*ce95e1b3SDavid du Colombier #define ARCH_SIZEOF_DOUBLE 8 22*ce95e1b3SDavid du Colombier #define ARCH_FLOAT_MANTISSA_BITS 24 23*ce95e1b3SDavid du Colombier #define ARCH_DOUBLE_MANTISSA_BITS 53 24*ce95e1b3SDavid du Colombier 25*ce95e1b3SDavid du Colombier /* ---------------- Unsigned max values ---------------- */ 26*ce95e1b3SDavid du Colombier 27*ce95e1b3SDavid du Colombier #define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0) 28*ce95e1b3SDavid du Colombier #define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0) 29*ce95e1b3SDavid du Colombier #define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0) 30*ce95e1b3SDavid du Colombier #define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0) 31*ce95e1b3SDavid du Colombier 32*ce95e1b3SDavid du Colombier /* ---------------- Cache sizes ---------------- */ 33*ce95e1b3SDavid du Colombier 34*ce95e1b3SDavid du Colombier #define ARCH_CACHE1_SIZE 4096 35*ce95e1b3SDavid du Colombier #define ARCH_CACHE2_SIZE 524288 36*ce95e1b3SDavid du Colombier 37*ce95e1b3SDavid du Colombier /* ---------------- Miscellaneous ---------------- */ 38*ce95e1b3SDavid du Colombier 39*ce95e1b3SDavid du Colombier #define ARCH_IS_BIG_ENDIAN 0 40*ce95e1b3SDavid du Colombier #define ARCH_PTRS_ARE_SIGNED 0 41*ce95e1b3SDavid du Colombier #define ARCH_FLOATS_ARE_IEEE 1 42*ce95e1b3SDavid du Colombier #define ARCH_ARITH_RSHIFT 2 43*ce95e1b3SDavid du Colombier #define ARCH_CAN_SHIFT_FULL_LONG 0 44*ce95e1b3SDavid du Colombier #define ARCH_DIV_NEG_POS_TRUNCATES 1 45