Changeset 2701c91 for src/libcfa/limits.c
- Timestamp:
- Mar 1, 2018, 5:45:58 PM (7 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- 3d97b78
- Parents:
- 446ffa3
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/libcfa/limits.c
r446ffa3 r2701c91 10 10 // Created On : Wed Apr 6 18:06:52 2016 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Sep 12 10:34:48 201613 // Update Count : 1712 // Last Modified On : Thu Mar 1 16:22:51 2018 13 // Update Count : 74 14 14 // 15 15 16 #include <limits.h> 17 #include <float.h> 18 #define __USE_GNU // get M_* constants 19 #include <math.h> 20 #include <complex.h> 16 21 #include "limits" 17 22 18 23 // Integral Constants 19 24 20 const short int MIN = -32768; 21 const int MIN = -2147483648; 22 #if __WORDSIZE == 64 23 const long int MIN = -9223372036854775807L - 1L; 24 #else 25 const long int MIN = (int)MIN; 26 #endif // M64 27 const long long int MIN = -9223372036854775807LL - 1LL; 25 const signed char MIN = SCHAR_MIN; 26 const unsigned char MIN = 0; 27 const short int MIN = SHRT_MIN; 28 const unsigned short int MIN = 0; 29 const int MIN = INT_MIN; 30 const unsigned int MIN = 0; 31 const long int MIN = LONG_MIN; 32 const unsigned long int MIN = 0; 33 const long long int MIN = LLONG_MIN; 34 const unsigned long long int MIN = 0; 28 35 29 const short int MAX = 32767; 30 const unsigned short int MAX = 65535; 31 const int MAX = 2147483647; 32 const unsigned int MAX = 4294967295_U; 33 #if __WORDSIZE == 64 34 const long int MAX = 9223372036854775807_L; 35 #else 36 const long int MAX = (int)MAX; 37 #endif // M64 38 const unsigned long int MAX = 4294967295_U; 39 const long long int MAX = 9223372036854775807_LL; 40 const unsigned long long int MAX = 18446744073709551615_ULL; 36 const signed char MAX = SCHAR_MAX; 37 const unsigned char MAX = UCHAR_MAX; 38 const short int MAX = SHRT_MAX; 39 const unsigned short int MAX = USHRT_MAX; 40 const int MAX = INT_MAX; 41 const unsigned int MAX = UINT_MAX; 42 const long int MAX = LONG_MAX; 43 const unsigned long int MAX = ULONG_MAX; 44 const long long int MAX = LLONG_MAX; 45 const unsigned long long int MAX = ULLONG_MAX; 41 46 42 47 // Floating-Point Constants 43 48 44 const float PI = 3.141592_F; // pi45 const float PI_2 = 1.570796_F; // pi / 246 const float PI_4 = 0.7853981_F; // pi / 447 const float _ 1_PI = 0.3183098_F; // 1 / pi48 const float _2_PI = 0.6366197_F; // 2 / pi49 const float _2_SQRT_PI = 1.128379_F; // 2 / sqrt(pi)49 const float MIN = FLT_MIN; 50 const double MIN = DBL_MIN; 51 const long double MIN = LDBL_MIN; 52 const float _Complex MIN = __FLT_MIN__ + __FLT_MIN__ * I; 53 const double _Complex MIN = DBL_MIN + DBL_MIN * I; 54 const long double _Complex MIN = LDBL_MIN + LDBL_MIN * I; 50 55 51 const double PI = 3.14159265358979323846_D; // pi52 const double PI_2 = 1.57079632679489661923_D; // pi / 253 const double PI_4 = 0.78539816339744830962_D; // pi / 454 const double _1_PI = 0.31830988618379067154_D; // 1 / pi55 const double _ 2_PI = 0.63661977236758134308_D; // 2 / pi56 const double _2_SQRT_PI = 1.12837916709551257390_D; // 2 / sqrt(pi)56 const float MAX = FLT_MAX; 57 const double MAX = DBL_MAX; 58 const long double MAX = LDBL_MAX; 59 const float _Complex MAX = FLT_MAX + FLT_MAX * I; 60 const double _Complex MAX = DBL_MAX + DBL_MAX * I; 61 const long double _Complex MAX = LDBL_MAX + LDBL_MAX * I; 57 62 58 const long double PI = 3.1415926535897932384626433832795029_DL;// pi59 const long double PI_2 = 1.5707963267948966192313216916397514_DL;// pi / 260 const long double PI_4 = 0.7853981633974483096156608458198757_DL;// pi / 461 const long double _1_PI = 0.3183098861837906715377675267450287_DL;// 1 / pi62 const long double _2_PI = 0.6366197723675813430755350534900574_DL;// 2 / pi63 const long double _2_SQRT_PI = 1.1283791670955125738961589031215452_DL;// 2 / sqrt(pi)63 const float PI = (float)M_PI; // pi 64 const float PI_2 = (float)M_PI_2; // pi / 2 65 const float PI_4 = (float)M_PI_4; // pi / 4 66 const float _1_PI = (float)M_1_PI; // 1 / pi 67 const float _2_PI = (float)M_2_PI; // 2 / pi 68 const float _2_SQRT_PI = (float)M_2_SQRTPI; // 2 / sqrt(pi) 64 69 65 const double _Complex PI = 3.14159265358979323846_D+0.0_iD;// pi66 const double _Complex PI_2 = 1.57079632679489661923_D+0.0_iD;// pi / 267 const double _Complex PI_4 = 0.78539816339744830962_D+0.0_iD;// pi / 468 const double _ Complex _1_PI = 0.31830988618379067154_D+0.0_iD;// 1 / pi69 const double _ Complex _2_PI = 0.63661977236758134308_D+0.0_iD;// 2 / pi70 const double _ Complex _2_SQRT_PI = 1.12837916709551257390_D+0.0_iD;// 2 / sqrt(pi)70 const double PI = M_PI; // pi 71 const double PI_2 = M_PI_2; // pi / 2 72 const double PI_4 = M_PI_4; // pi / 4 73 const double _1_PI = M_1_PI; // 1 / pi 74 const double _2_PI = M_2_PI; // 2 / pi 75 const double _2_SQRT_PI = M_2_SQRTPI; // 2 / sqrt(pi) 71 76 72 const long double _Complex PI = 3.1415926535897932384626433832795029_L+0.0iL;// pi73 const long double _Complex PI_2 = 1.5707963267948966192313216916397514_L+0.0iL;// pi / 274 const long double _Complex PI_4 = 0.7853981633974483096156608458198757_L+0.0iL;// pi / 475 const long double _ Complex _1_PI = 0.3183098861837906715377675267450287_L+0.0iL;// 1 / pi76 const long double _ Complex _2_PI = 0.6366197723675813430755350534900574_L+0.0iL;// 2 / pi77 const long double _ Complex _2_SQRT_PI = 1.1283791670955125738961589031215452_L+0.0iL;// 2 / sqrt(pi)77 const long double PI = M_PIl; // pi 78 const long double PI_2 = M_PI_2l; // pi / 2 79 const long double PI_4 = M_PI_4l; // pi / 4 80 const long double _1_PI = M_1_PIl; // 1 / pi 81 const long double _2_PI = M_2_PIl; // 2 / pi 82 const long double _2_SQRT_PI = M_2_SQRTPIl; // 2 / sqrt(pi) 78 83 79 const float E = 2.718281; // e 80 const float LOG2_E = 1.442695; // log_2(e) 81 const float LOG10_E = 0.4342944; // log_10(e) 82 const float LN_2 = 0.6931471; // log_e(2) 83 const float LN_10 = 2.302585; // log_e(10) 84 const float SQRT_2 = 1.414213; // sqrt(2) 85 const float _1_SQRT_2 = 0.7071067; // 1 / sqrt(2) 84 const float _Complex PI = (float)M_PI + 0.0_iF; // pi 85 const float _Complex PI_2 = (float)M_PI_2 + 0.0_iF; // pi / 2 86 const float _Complex PI_4 = (float)M_PI_4 + 0.0_iF; // pi / 4 87 const float _Complex _1_PI = (float)M_1_PI + 0.0_iF; // 1 / pi 88 const float _Complex _2_PI = (float)M_2_PI + 0.0_iF; // 2 / pi 89 const float _Complex _2_SQRT_PI = (float)M_2_SQRTPI + 0.0_iF; // 2 / sqrt(pi) 86 90 87 const double E = 2.7182818284590452354_D; // e 88 const double LOG2_E = 1.4426950408889634074_D; // log_2(e) 89 const double LOG10_E = 0.43429448190325182765_D; // log_10(e) 90 const double LN_2 = 0.69314718055994530942_D; // log_e(2) 91 const double LN_10 = 2.30258509299404568402_D; // log_e(10) 92 const double SQRT_2 = 1.41421356237309504880_D; // sqrt(2) 93 const double _1_SQRT_2 = 0.70710678118654752440_D; // 1 / sqrt(2) 91 const double _Complex PI = M_PI + 0.0_iD; // pi 92 const double _Complex PI_2 = M_PI_2 + 0.0_iD; // pi / 2 93 const double _Complex PI_4 = M_PI_4 + 0.0_iD; // pi / 4 94 const double _Complex _1_PI = M_1_PI + 0.0_iD; // 1 / pi 95 const double _Complex _2_PI = M_2_PI + 0.0_iD; // 2 / pi 96 const double _Complex _2_SQRT_PI = M_2_SQRTPI + 0.0_iD; // 2 / sqrt(pi) 94 97 95 const long double E = 2.7182818284590452353602874713526625_DL; // e 96 const long double LOG2_E = 1.4426950408889634073599246810018921_DL; // log_2(e) 97 const long double LOG10_E = 0.4342944819032518276511289189166051_DL; // log_10(e) 98 const long double LN_2 = 0.6931471805599453094172321214581766_DL; // log_e(2) 99 const long double LN_10 = 2.3025850929940456840179914546843642_DL; // log_e(10) 100 const long double SQRT_2 = 1.4142135623730950488016887242096981_DL; // sqrt(2) 101 const long double _1_SQRT_2 = 0.7071067811865475244008443621048490_DL; // 1/sqrt(2) 98 const long double _Complex PI = M_PIl + 0.0_iL; // pi 99 const long double _Complex PI_2 = M_PI_2l + 0.0_iL; // pi / 2 100 const long double _Complex PI_4 = M_PI_4l + 0.0_iL; // pi / 4 101 const long double _Complex _1_PI = M_1_PIl + 0.0_iL; // 1 / pi 102 const long double _Complex _2_PI = M_2_PIl + 0.0_iL; // 2 / pi 103 const long double _Complex _2_SQRT_PI = M_2_SQRTPIl + 0.0_iL; // 2 / sqrt(pi) 102 104 103 const double _Complex E = 2.7182818284590452354_D+0.0_iD;// e104 const double _Complex LOG2_E = 1.4426950408889634074_D+0.0_iD;// log_2(e)105 const double _Complex LOG10_E = 0.43429448190325182765_D+0.0_iD;// log_10(e)106 const double _Complex LN_2 = 0.69314718055994530942_D+0.0_iD;// log_e(2)107 const double _Complex LN_10 = 2.30258509299404568402_D+0.0_iD;// log_e(10)108 const double _Complex SQRT_2 = 1.41421356237309504880_D+0.0_iD;// sqrt(2)109 const double _Complex _1_SQRT_2 = 0.70710678118654752440_D+0.0_iD;// 1 / sqrt(2)105 const float E = (float)M_E; // e 106 const float LOG2_E = (float)M_LOG2E; // log_2(e) 107 const float LOG10_E = (float)M_LOG10E; // log_10(e) 108 const float LN_2 = (float)M_LN2; // log_e(2) 109 const float LN_10 = (float)M_LN10; // log_e(10) 110 const float SQRT_2 = (float)M_SQRT2; // sqrt(2) 111 const float _1_SQRT_2 = (float)M_SQRT1_2; // 1 / sqrt(2) 110 112 111 const long double _Complex E = 2.7182818284590452353602874713526625_L+0.0_iL; // e 112 const long double _Complex LOG2_E = 1.4426950408889634073599246810018921_L+0.0_iL; // log_2(e) 113 const long double _Complex LOG10_E = 0.4342944819032518276511289189166051_L+0.0_iL; // log_10(e) 114 const long double _Complex LN_2 = 0.6931471805599453094172321214581766_L+0.0_iL; // log_e(2) 115 const long double _Complex LN_10 = 2.3025850929940456840179914546843642_L+0.0_iL; // log_e(10) 116 const long double _Complex SQRT_2 = 1.4142135623730950488016887242096981_L+0.0_iL; // sqrt(2) 117 const long double _Complex _1_SQRT_2 = 0.7071067811865475244008443621048490_L+0.0_iL; // 1 / sqrt(2) 113 const double E = M_E; // e 114 const double LOG2_E = M_LOG2E; // log_2(e) 115 const double LOG10_E = M_LOG10E; // log_10(e) 116 const double LN_2 = M_LN2; // log_e(2) 117 const double LN_10 = M_LN10; // log_e(10) 118 const double SQRT_2 = M_SQRT2; // sqrt(2) 119 const double _1_SQRT_2 = M_SQRT1_2; // 1 / sqrt(2) 120 121 const long double E = M_El; // e 122 const long double LOG2_E = M_LOG2El; // log_2(e) 123 const long double LOG10_E = M_LOG10El; // log_10(e) 124 const long double LN_2 = M_LN2l; // log_e(2) 125 const long double LN_10 = M_LN10l; // log_e(10) 126 const long double SQRT_2 = M_SQRT2l; // sqrt(2) 127 const long double _1_SQRT_2 = M_SQRT1_2l; // 1 / sqrt(2) 128 129 const float _Complex E = M_E + 0.0_iF; // e 130 const float _Complex LOG2_E = M_LOG2E + 0.0_iF; // log_2(e) 131 const float _Complex LOG10_E = M_LOG10E + 0.0_iF; // log_10(e) 132 const float _Complex LN_2 = M_LN2 + 0.0_iF; // log_e(2) 133 const float _Complex LN_10 = M_LN10 + 0.0_iF; // log_e(10) 134 const float _Complex SQRT_2 = M_SQRT2 + 0.0_iF; // sqrt(2) 135 const float _Complex _1_SQRT_2 = M_SQRT1_2 + 0.0_iF; // 1 / sqrt(2) 136 137 const double _Complex E = M_E + 0.0_iD; // e 138 const double _Complex LOG2_E = M_LOG2E + 0.0_iD; // log_2(e) 139 const double _Complex LOG10_E = M_LOG10E + 0.0_iD; // log_10(e) 140 const double _Complex LN_2 = M_LN2 + 0.0_iD; // log_e(2) 141 const double _Complex LN_10 = M_LN10 + 0.0_iD; // log_e(10) 142 const double _Complex SQRT_2 = M_SQRT2 + 0.0_iD; // sqrt(2) 143 const double _Complex _1_SQRT_2 = M_SQRT1_2 + 0.0_iD; // 1 / sqrt(2) 144 145 const long double _Complex E = M_El + 0.0_iL; // e 146 const long double _Complex LOG2_E = M_LOG2El + 0.0_iL; // log_2(e) 147 const long double _Complex LOG10_E = M_LOG10El + 0.0_iL; // log_10(e) 148 const long double _Complex LN_2 = M_LN2l + 0.0_iL; // log_e(2) 149 const long double _Complex LN_10 = M_LN10l + 0.0_iL; // log_e(10) 150 const long double _Complex SQRT_2 = M_SQRT2l + 0.0_iL; // sqrt(2) 151 const long double _Complex _1_SQRT_2 = M_SQRT1_2l + 0.0_iL; // 1 / sqrt(2) 118 152 119 153 // Local Variables: //
Note: See TracChangeset
for help on using the changeset viewer.