00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040 #if 0
00041 #include <math.h>
00042 #endif
00043
00044 extern double acos (double);
00045 extern double asin (double);
00046 extern double atan (double);
00047 extern double atan2 (double, double);
00048 extern double cos (double);
00049 extern double sin (double);
00050 extern double tan (double);
00051 extern double cosh (double);
00052 extern double sinh (double);
00053 extern double tanh (double);
00054 extern double exp (double);
00055 extern double frexp (double, int *);
00056 extern double ldexp (double, int);
00057 extern double log (double);
00058 extern double log10 (double);
00059 extern double modf (double, double *);
00060 extern double pow (double, double);
00061 extern double sqrt (double);
00062 extern double ceil (double);
00063 extern double fabs (double);
00064 extern double floor (double);
00065 extern double fmod (double, double);
00066
00067 int i1, i2 = 2;
00068
00069 volatile signed char sc;
00070 volatile unsigned char uc;
00071
00072 volatile signed short ss;
00073 volatile unsigned short us;
00074
00075 volatile signed int si;
00076 volatile unsigned int ui;
00077
00078 volatile signed long sl;
00079 volatile unsigned long ul;
00080
00081 volatile float f1 = 1.0, f2 = 1.0, f3 = 1.0;
00082 volatile double d1 = 1.0, d2 = 1.0, d3 = 1.0;
00083 volatile long double D1 = 1.0, D2 = 1.0, D3 = 1.0;
00084
00085 int
00086 main ()
00087 {
00088
00089
00090 f1 = -f2;
00091 f1 = f2 + f3;
00092 f1 = f2 - f3;
00093 f1 = f2 * f3;
00094 f1 = f2 / f3;
00095 f1 += f2;
00096 f1 -= f2;
00097 f1 *= f2;
00098 f1 /= f2;
00099
00100 si = f1 == f2;
00101 si = f1 != f2;
00102 si = f1 > f2;
00103 si = f1 < f2;
00104 si = f1 >= f2;
00105 si = f1 <= f2;
00106
00107 si = __builtin_isgreater (f1, f2);
00108 si = __builtin_isgreaterequal (f1, f2);
00109 si = __builtin_isless (f1, f2);
00110 si = __builtin_islessequal (f1, f2);
00111 si = __builtin_islessgreater (f1, f2);
00112 si = __builtin_isunordered (f1, f2);
00113
00114 sc = f1;
00115 uc = f1;
00116 ss = f1;
00117 us = f1;
00118 si = f1;
00119 ui = f1;
00120 sl = f1;
00121 ul = f1;
00122 d1 = f1;
00123 D1 = f1;
00124
00125 f1 = sc;
00126 f1 = uc;
00127 f1 = ss;
00128 f1 = us;
00129 f1 = si;
00130 f1 = ui;
00131 f1 = sl;
00132 f1 = ul;
00133 f1 = d1;
00134 f1 = D1;
00135
00136 d1 = -d2;
00137 d1 = d2 + d3;
00138 d1 = d2 - d3;
00139 d1 = d2 * d3;
00140 d1 = d2 / d3;
00141 d1 += d2;
00142 d1 -= d2;
00143 d1 *= d2;
00144 d1 /= d2;
00145
00146 si = d1 == d2;
00147 si = d1 != d2;
00148 si = d1 > d2;
00149 si = d1 < d2;
00150 si = d1 >= d2;
00151 si = d1 <= d2;
00152
00153 si = __builtin_isgreater (d1, d2);
00154 si = __builtin_isgreaterequal (d1, d2);
00155 si = __builtin_isless (d1, d2);
00156 si = __builtin_islessequal (d1, d2);
00157 si = __builtin_islessgreater (d1, d2);
00158 si = __builtin_isunordered (d1, d2);
00159
00160 sc = d1;
00161 uc = d1;
00162 ss = d1;
00163 us = d1;
00164 si = d1;
00165 ui = d1;
00166 sl = d1;
00167 ul = d1;
00168 f1 = d1;
00169 D1 = d1;
00170
00171 d1 = sc;
00172 d1 = uc;
00173 d1 = ss;
00174 d1 = us;
00175 d1 = si;
00176 d1 = ui;
00177 d1 = sl;
00178 d1 = ul;
00179 d1 = f1;
00180 d1 = D1;
00181
00182 D1 = -D2;
00183 D1 = D2 + D3;
00184 D1 = D2 - D3;
00185 D1 = D2 * D3;
00186 D1 = D2 / D3;
00187 D1 += D2;
00188 D1 -= D2;
00189 D1 *= D2;
00190 D1 /= D2;
00191
00192 si = D1 == D2;
00193 si = D1 != D2;
00194 si = D1 > D2;
00195 si = D1 < D2;
00196 si = D1 >= D2;
00197 si = D1 <= D2;
00198
00199 si = __builtin_isgreater (D1, D2);
00200 si = __builtin_isgreaterequal (D1, D2);
00201 si = __builtin_isless (D1, D2);
00202 si = __builtin_islessequal (D1, D2);
00203 si = __builtin_islessgreater (D1, D2);
00204 si = __builtin_isunordered (D1, D2);
00205
00206 sc = D1;
00207 uc = D1;
00208 ss = D1;
00209 us = D1;
00210 si = D1;
00211 ui = D1;
00212 sl = D1;
00213 ul = D1;
00214 f1 = D1;
00215 d1 = D1;
00216
00217 D1 = sc;
00218 D1 = uc;
00219 D1 = ss;
00220 D1 = us;
00221 D1 = si;
00222 D1 = ui;
00223 D1 = sl;
00224 D1 = ul;
00225 D1 = f1;
00226 D1 = d1;
00227
00228 d1 = acos (d2);
00229 d1 = asin (d2);
00230 d1 = atan (d2);
00231 d1 = atan2 (d2, d3);
00232 d1 = cos (d2);
00233 d1 = sin (d2);
00234 d1 = tan (d2);
00235 d1 = cosh (d2);
00236 d1 = sinh (d2);
00237 d1 = tanh (d2);
00238 d1 = exp (d2);
00239 d1 = frexp (d2, &i1);
00240 d1 = ldexp (d2, i2);
00241 d1 = log (d2);
00242 d1 = log10 (d2);
00243 d1 = modf (d2, &d3);
00244 d1 = pow (d2, d3);
00245 d1 = sqrt (d2);
00246 d1 = ceil (d2);
00247 d1 = fabs (d2);
00248 d1 = floor (d2);
00249 d1 = fmod (d2, d3);
00250
00251 return 0;
00252 }