xref: /plan9/sys/src/cmd/gs/default.386.h (revision 593dc095aefb2a85c828727bbfa9da139a49bdf4)
1*593dc095SDavid du Colombier /* Parameters derived from machine and compiler architecture. */
2*593dc095SDavid du Colombier /* This file is generated mechanically by genarch.c. */
359cc4ca5SDavid du Colombier 
459cc4ca5SDavid du Colombier 	 /* ---------------- Scalar alignments ---------------- */
559cc4ca5SDavid du Colombier 
659cc4ca5SDavid du Colombier #define ARCH_ALIGN_SHORT_MOD 2
759cc4ca5SDavid du Colombier #define ARCH_ALIGN_INT_MOD 4
859cc4ca5SDavid du Colombier #define ARCH_ALIGN_LONG_MOD 4
959cc4ca5SDavid du Colombier #define ARCH_ALIGN_PTR_MOD 4
1059cc4ca5SDavid du Colombier #define ARCH_ALIGN_FLOAT_MOD 4
1159cc4ca5SDavid du Colombier #define ARCH_ALIGN_DOUBLE_MOD 4
12*593dc095SDavid du Colombier #define ARCH_ALIGN_STRUCT_MOD 4
1359cc4ca5SDavid du Colombier 
1459cc4ca5SDavid du Colombier 	 /* ---------------- Scalar sizes ---------------- */
1559cc4ca5SDavid du Colombier 
16*593dc095SDavid du Colombier #define ARCH_LOG2_SIZEOF_CHAR 0
1759cc4ca5SDavid du Colombier #define ARCH_LOG2_SIZEOF_SHORT 1
1859cc4ca5SDavid du Colombier #define ARCH_LOG2_SIZEOF_INT 2
1959cc4ca5SDavid du Colombier #define ARCH_LOG2_SIZEOF_LONG 2
20*593dc095SDavid du Colombier #define ARCH_LOG2_SIZEOF_LONG_LONG 3
2159cc4ca5SDavid du Colombier #define ARCH_SIZEOF_PTR 4
2259cc4ca5SDavid du Colombier #define ARCH_SIZEOF_FLOAT 4
2359cc4ca5SDavid du Colombier #define ARCH_SIZEOF_DOUBLE 8
2459cc4ca5SDavid du Colombier #define ARCH_FLOAT_MANTISSA_BITS 24
2559cc4ca5SDavid du Colombier #define ARCH_DOUBLE_MANTISSA_BITS 53
2659cc4ca5SDavid du Colombier 
2759cc4ca5SDavid du Colombier 	 /* ---------------- Unsigned max values ---------------- */
2859cc4ca5SDavid du Colombier 
2959cc4ca5SDavid du Colombier #define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0)
3059cc4ca5SDavid du Colombier #define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0)
3159cc4ca5SDavid du Colombier #define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0)
3259cc4ca5SDavid du Colombier #define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0)
3359cc4ca5SDavid du Colombier 
3459cc4ca5SDavid du Colombier 	 /* ---------------- Cache sizes ---------------- */
3559cc4ca5SDavid du Colombier 
36*593dc095SDavid du Colombier #define ARCH_CACHE1_SIZE 131072
37*593dc095SDavid du Colombier #define ARCH_CACHE2_SIZE 4194304
3859cc4ca5SDavid du Colombier 
3959cc4ca5SDavid du Colombier 	 /* ---------------- Miscellaneous ---------------- */
4059cc4ca5SDavid du Colombier 
4159cc4ca5SDavid du Colombier #define ARCH_IS_BIG_ENDIAN 0
4259cc4ca5SDavid du Colombier #define ARCH_PTRS_ARE_SIGNED 0
4359cc4ca5SDavid du Colombier #define ARCH_FLOATS_ARE_IEEE 1
4459cc4ca5SDavid du Colombier #define ARCH_ARITH_RSHIFT 2
4559cc4ca5SDavid du Colombier #define ARCH_CAN_SHIFT_FULL_LONG 0
4659cc4ca5SDavid du Colombier #define ARCH_DIV_NEG_POS_TRUNCATES 1
47