1 1.1 jmc /* 2 1.1 jmc * Get everything SOFTFLOAT_FOR_GCC normally would rename out of the users 3 1.1 jmc * namespace. Much of this isn't used but to avoid dissecting softloat.c 4 1.1 jmc * all of it is pulled in even for just the _Qp* case 5 1.1 jmc */ 6 1.1 jmc 7 1.1 jmc #if defined(SOFTFLOATSPARC64_FOR_GCC) && !defined(SOFTFLOAT_FOR_GCC) 8 1.1 jmc #define float_exception_flags _softfloat_float_exception_flags 9 1.1 jmc #define float_rounding_mode _softfloat_float_rounding_mode 10 1.1 jmc #define float_raise _softfloat_float_raise 11 1.1 jmc 12 1.1 jmc #define float32_eq _softfloat_float32_eq 13 1.1 jmc #define float32_le _softfloat_float32_le 14 1.1 jmc #define float32_lt _softfloat_float32_lt 15 1.1 jmc #define float64_eq _softfloat_float64_eq 16 1.1 jmc #define float64_le _softfloat_float64_le 17 1.1 jmc #define float64_lt _softfloat_float64_lt 18 1.1 jmc 19 1.1 jmc #define float32_add _softfloat_float32_add 20 1.1 jmc #define float64_add _softfloat_float64_add 21 1.1 jmc #define float32_sub _softfloat_float32_sub 22 1.1 jmc #define float64_sub _softfloat_float64_sub 23 1.1 jmc #define float32_mul _softfloat_float32_mul 24 1.1 jmc #define float64_mul _softfloat_float64_mul 25 1.1 jmc #define float32_div _softfloat_float32_div 26 1.1 jmc #define float64_div _softfloat_float64_div 27 1.1 jmc #define int32_to_float32 _softfloat_int32_to_float32 28 1.1 jmc #define int32_to_float64 _softfloat_int32_to_float64 29 1.1 jmc #define int64_to_float32 _softfloat_int64_to_float32 30 1.1 jmc #define int64_to_float64 _softfloat_int64_to_float64 31 1.1 jmc #define float32_to_int32_round_to_zero _softfloat_float32_to_int32_round_to_zero 32 1.1 jmc #define float64_to_int32_round_to_zero _softfloat_float64_to_int32_round_to_zero 33 1.1 jmc #define float32_to_int64_round_to_zero _softfloat_float32_to_int64_round_to_zero 34 1.1 jmc #define float64_to_int64_round_to_zero _softfloat_float64_to_int64_round_to_zero 35 1.1 jmc #define float32_to_uint32_round_to_zero _softfloat_float32_to_uint32_round_to_zero 36 1.1 jmc #define float64_to_uint32_round_to_zero _softfloat_float64_to_uint32_round_to_zero 37 1.1 jmc #define float32_to_float64 _softfloat_float32_to_float64 38 1.1 jmc #define float64_to_float32 _softfloat_float64_to_float32 39 1.1 jmc #define float32_is_signaling_nan _softfloat_float32_is_signaling_nan 40 1.1 jmc #define float64_is_signaling_nan _softfloat_float64_is_signaling_nan 41 1.1 jmc 42 1.1 jmc #endif /* SOFTFLOATSPARC64_FOR_GCC and !SOFTFLOAT_FOR_GCC */ 43 1.1 jmc 44 1.1 jmc /* 45 1.1 jmc * The following will always end up in the namespace if FLOAT128 is 46 1.1 jmc * defined and SOFTFLOAT_FOR_GCC isn't. So rename them out of the user's 47 1.1 jmc * namespace. 48 1.1 jmc */ 49 1.1 jmc 50 1.1 jmc #ifdef SOFTFLOATSPARC64_FOR_GCC 51 1.1 jmc #define float128_add _softfloat_float128_add 52 1.1 jmc #define float128_div _softfloat_float128_div 53 1.1 jmc #define float128_eq _softfloat_float128_eq 54 1.1 jmc #define float128_eq_signaling _softfloat_float128_eq_signaling 55 1.1 jmc #define float128_is_nan _softfloat_float128_is_nan 56 1.1 jmc #define float128_is_signaling_nan _softfloat_float128_is_signaling_nan 57 1.1 jmc #define float128_le _softfloat_float128_le 58 1.1 jmc #define float128_le_quiet _softfloat_float128_le_quiet 59 1.1 jmc #define float128_lt _softfloat_float128_lt 60 1.1 jmc #define float128_lt_quiet _softfloat_float128_lt_quiet 61 1.1 jmc #define float128_mul _softfloat_float128_mul 62 1.1 jmc #define float128_rem _softfloat_float128_rem 63 1.1 jmc #define float128_round_to_int _softfloat_float128_round_to_int 64 1.1 jmc #define float128_sqrt _softfloat_float128_sqrt 65 1.1 jmc #define float128_sub _softfloat_float128_sub 66 1.1 jmc #define float128_to_float32 _softfloat_float128_to_float32 67 1.1 jmc #define float128_to_float64 _softfloat_float128_to_float64 68 1.1 jmc #define float128_to_int32 _softfloat_float128_to_int32 69 1.1 jmc #define float128_to_int32_round_to_zero _softfloat_float128_to_int32_round_to_zero 70 1.1 jmc #define float128_to_int64 _softfloat_float128_to_int64 71 1.1 jmc #define float128_to_int64_round_to_zero _softfloat_float128_to_int64_round_to_zero 72 1.2 martin #define float128_to_uint64_round_to_zero _softfloat_float128_to_uint64_round_to_zero 73 1.1 jmc #define float32_to_float128 _softfloat_float32_to_float128 74 1.1 jmc #define float64_to_float128 _softfloat_float64_to_float128 75 1.1 jmc #define int32_to_float128 _softfloat_int32_to_float128 76 1.1 jmc #define int64_to_float128 _softfloat_int64_to_float128 77 1.1 jmc 78 1.1 jmc /* 79 1.1 jmc * If this isn't defined go ahead and set it now since this is now past 80 1.1 jmc * anywhere define's are happening and this will conditionally compile out 81 1.1 jmc * a lot of extraneous code in softfloat.c 82 1.1 jmc */ 83 1.1 jmc 84 1.1 jmc #ifndef SOFTFLOAT_FOR_GCC 85 1.1 jmc #define SOFTFLOAT_FOR_GCC 86 1.1 jmc #endif 87 1.1 jmc 88 1.1 jmc #endif /* SOFTFLOATSPARC64_FOR_GCC */ 89