1 #define ALIGNMENT 4 2 #define CHAR_BIT 8 3 #define D_BIT (D_SIZE * CHAR_BIT) 4 #define D_EXP_BIAS ((1 << (D_EXP_BIT - 1)) - 1) 5 #define D_EXP_BIT 11 6 #define D_EXP_INFINITE ((1 << D_EXP_BIT) - 1) 7 #define D_EXP_MASK (((1 << D_EXP_BIT) - 1) << D_EXP_SHIFT) 8 #define D_EXP_SHIFT (REG_BIT - (1 + D_EXP_BIT)) 9 #define D_FRAC_BIT 53 10 #define D_FRAC_MASK (D_NORM_MASK - 1) 11 #define D_HIGH 4 12 #define D_HUGE_HIGH (D_EXP_MASK - 1) 13 #define D_HUGE_LOW 0xFFFFFFFF 14 #define D_LOW 0 15 #define D_NORM_BIT (D_FRAC_BIT - 1 - REG_BIT) 16 #define D_NORM_MASK (1 << D_NORM_BIT) 17 #define D_SIGN_BIT 63 18 #define D_SIGN_MASK (1 << (D_SIGN_BIT - REG_BIT)) 19 #define D_SIZE 8 20 #define F_BIT (F_SIZE * CHAR_BIT) 21 #define F_EXP_BIAS ((1 << (F_EXP_BIT - 1)) - 1) 22 #define F_EXP_BIT 8 23 #define F_EXP_INFINITE ((1 << F_EXP_BIT) - 1) 24 #define F_EXP_MASK (((1 << F_EXP_BIT) - 1) << F_EXP_SHIFT) 25 #define F_EXP_SHIFT (REG_BIT - (1 + F_EXP_BIT)) 26 #define F_FRAC_BIT 24 27 #define F_FRAC_MASK (F_NORM_MASK - 1) 28 #define F_HIGH 0 29 #define F_HUGE_HIGH (F_EXP_MASK - 1) 30 #define F_NORM_BIT (F_FRAC_BIT - 1) 31 #define F_NORM_MASK (1 << F_NORM_BIT) 32 #define F_SIGN_BIT 31 33 #define F_SIGN_MASK (1 << F_SIGN_BIT) 34 #define F_SIZE 4 35 #define FREE_D_SIGN_BIT_TEST (D_SIGN_BIT % REG_BIT == REG_BIT - 1) 36 #define GENREG_SIZE 4 37 #define INT_BIT 32 38 #define INT_MAX 0x7FFFFFFF 39 #define INT_MIN (-0x7FFFFFFF - 1) 40 #define PC_SIZE 4 41 #define REG_BIT 32 42 #define SHORT_BIT 16 43 #define UINT_MAX 0xFFFFFFFF 44