xref: /plan9/sys/src/cmd/gs/default.arm.h (revision 593dc095aefb2a85c828727bbfa9da139a49bdf4)
180ee5cbfSDavid du Colombier /* Parameters derived from machine and compiler architecture */
280ee5cbfSDavid du Colombier 
380ee5cbfSDavid du Colombier 	 /* ---------------- Scalar alignments ---------------- */
480ee5cbfSDavid du Colombier 
580ee5cbfSDavid du Colombier #define ARCH_ALIGN_SHORT_MOD 2
680ee5cbfSDavid du Colombier #define ARCH_ALIGN_INT_MOD 4
780ee5cbfSDavid du Colombier #define ARCH_ALIGN_LONG_MOD 4
880ee5cbfSDavid du Colombier #define ARCH_ALIGN_PTR_MOD 4
980ee5cbfSDavid du Colombier #define ARCH_ALIGN_FLOAT_MOD 4
1080ee5cbfSDavid du Colombier #define ARCH_ALIGN_DOUBLE_MOD 4
11*593dc095SDavid du Colombier #define ARCH_ALIGN_STRUCT_MOD 4
1280ee5cbfSDavid du Colombier 
1380ee5cbfSDavid du Colombier 	 /* ---------------- Scalar sizes ---------------- */
1480ee5cbfSDavid du Colombier 
1580ee5cbfSDavid du Colombier #define ARCH_LOG2_SIZEOF_SHORT 1
1680ee5cbfSDavid du Colombier #define ARCH_LOG2_SIZEOF_INT 2
1780ee5cbfSDavid du Colombier #define ARCH_LOG2_SIZEOF_LONG 2
18*593dc095SDavid du Colombier #define ARCH_LOG2_SIZEOF_LONG_LONG 3
1980ee5cbfSDavid du Colombier #define ARCH_SIZEOF_PTR 4
2080ee5cbfSDavid du Colombier #define ARCH_SIZEOF_FLOAT 4
2180ee5cbfSDavid du Colombier #define ARCH_SIZEOF_DOUBLE 8
2280ee5cbfSDavid du Colombier #define ARCH_FLOAT_MANTISSA_BITS 24
2380ee5cbfSDavid du Colombier #define ARCH_DOUBLE_MANTISSA_BITS 53
2480ee5cbfSDavid du Colombier 
2580ee5cbfSDavid du Colombier 	 /* ---------------- Unsigned max values ---------------- */
2680ee5cbfSDavid du Colombier 
2780ee5cbfSDavid du Colombier #define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0)
2880ee5cbfSDavid du Colombier #define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0)
2980ee5cbfSDavid du Colombier #define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0)
3080ee5cbfSDavid du Colombier #define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0)
3180ee5cbfSDavid du Colombier 
3280ee5cbfSDavid du Colombier 	 /* ---------------- Cache sizes ---------------- */
3380ee5cbfSDavid du Colombier 
349a747e4fSDavid du Colombier #define ARCH_CACHE1_SIZE 1048576
359a747e4fSDavid du Colombier #define ARCH_CACHE2_SIZE 1048576
3680ee5cbfSDavid du Colombier 
3780ee5cbfSDavid du Colombier 	 /* ---------------- Miscellaneous ---------------- */
3880ee5cbfSDavid du Colombier 
3980ee5cbfSDavid du Colombier #define ARCH_IS_BIG_ENDIAN 0
4080ee5cbfSDavid du Colombier #define ARCH_PTRS_ARE_SIGNED 0
4180ee5cbfSDavid du Colombier #define ARCH_FLOATS_ARE_IEEE 1
4280ee5cbfSDavid du Colombier #define ARCH_ARITH_RSHIFT 2
439a747e4fSDavid du Colombier #define ARCH_CAN_SHIFT_FULL_LONG 1
4480ee5cbfSDavid du Colombier #define ARCH_DIV_NEG_POS_TRUNCATES 1
45