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