xref: /plan9-contrib/sys/src/cmd/gs/mips.h (revision 219b2ee8daee37f4aad58d63f21287faa8e4ffdc)
1 /* Parameters derived from machine and compiler architecture */
2 
3 	/* ---------------- Scalar alignments ---------------- */
4 
5 #define arch_align_short_mod 2
6 #define arch_align_int_mod 4
7 #define arch_align_long_mod 4
8 #define arch_align_ptr_mod 4
9 #define arch_align_float_mod 4
10 #define arch_align_double_mod 4
11 #define arch_align_ref_mod 4
12 
13 	/* ---------------- Scalar sizes ---------------- */
14 
15 #define arch_log2_sizeof_short 1
16 #define arch_log2_sizeof_int 2
17 #define arch_log2_sizeof_long 2
18 #define arch_sizeof_ds_ptr 4
19 #define arch_sizeof_ptr 4
20 #define arch_sizeof_float 4
21 #define arch_sizeof_double 8
22 #define arch_sizeof_ref 8
23 
24 	/* ---------------- Unsigned max values ---------------- */
25 
26 #define arch_max_uchar ((unsigned char)0xff + (unsigned char)0)
27 #define arch_max_ushort ((unsigned short)0xffff + (unsigned short)0)
28 #define arch_max_uint ((unsigned int)0xffffffff + (unsigned int)0)
29 #define arch_max_ulong ((unsigned long)0xffffffffL + (unsigned long)0)
30 
31 	/* ---------------- Miscellaneous ---------------- */
32 
33 #define arch_is_big_endian 1
34 #define arch_ptrs_are_signed 0
35 #define arch_floats_are_IEEE 1
36 #define arch_arith_rshift 2
37 #define arch_can_shift_full_long 0
38