branch | RCL_3 |
changeset 43 | c1f20ce4abcf |
parent 0 | a41df078684a |
child 44 | 3e88ff8f41d5 |
42:a179b74831c9 | 43:c1f20ce4abcf |
---|---|
31 TReal64 AntiOptimization[16] = {0.1, 1, 3.14159265358979323846, 10.01, |
31 TReal64 AntiOptimization[16] = {0.1, 1, 3.14159265358979323846, 10.01, |
32 2.7, 3, 27.2, 11.23, |
32 2.7, 3, 27.2, 11.23, |
33 76.1, 9, 56.1, 1/9, |
33 76.1, 9, 56.1, 1/9, |
34 1/3, 22, 99.7, 42}; |
34 1/3, 22, 99.7, 42}; |
35 |
35 |
36 GLREF_D volatile TUint count; |
36 GLREF_D volatile TUint Count; |
37 |
|
38 #include <e32btrace.h> |
|
39 |
|
40 void Step() |
|
41 { |
|
42 if (++Count & 0xffff) |
|
43 return; |
|
44 BTrace4(BTrace::ETest1, 0, Count); |
|
45 } |
|
37 |
46 |
38 TInt TReal64Addition(TAny*) |
47 TInt TReal64Addition(TAny*) |
39 { |
48 { |
40 count=0; |
49 Count=0; |
41 |
50 |
42 FOREVER |
51 FOREVER |
43 { |
52 { |
44 r=AntiOptimization[count & 0xf]; |
53 r=AntiOptimization[Count & 0xf]; |
45 r+=One; |
54 r+=One; |
46 r+=One; |
55 r+=One; |
47 r+=One; |
56 r+=One; |
48 r+=One; |
57 r+=One; |
49 r+=One; |
58 r+=One; |
50 r+=One; |
59 r+=One; |
51 r+=One; |
60 r+=One; |
52 r+=One; |
61 r+=One; |
53 r+=One; |
62 r+=One; |
54 r+=One; |
63 r+=One; |
55 count++; |
64 Step(); |
56 } |
65 } |
57 } |
66 } |
58 |
67 |
59 TInt TReal64Subtraction(TAny*) |
68 TInt TReal64Subtraction(TAny*) |
60 { |
69 { |
61 count=0; |
70 Count=0; |
62 |
71 |
63 FOREVER |
72 FOREVER |
64 { |
73 { |
65 r=AntiOptimization[count & 0xf]; |
74 r=AntiOptimization[Count & 0xf]; |
66 r-=Ten; |
75 r-=Ten; |
67 r-=Ten; |
76 r-=Ten; |
68 r-=Ten; |
77 r-=Ten; |
69 r-=Ten; |
78 r-=Ten; |
70 r-=Ten; |
79 r-=Ten; |
71 r-=Ten; |
80 r-=Ten; |
72 r-=Ten; |
81 r-=Ten; |
73 r-=Ten; |
82 r-=Ten; |
74 r-=Ten; |
83 r-=Ten; |
75 r-=Ten; |
84 r-=Ten; |
76 count++; |
85 Step(); |
77 } |
86 } |
78 } |
87 } |
79 |
88 |
80 TInt TReal64Multiplication(TAny*) |
89 TInt TReal64Multiplication(TAny*) |
81 { |
90 { |
82 count=0; |
91 Count=0; |
83 FOREVER |
92 FOREVER |
84 { |
93 { |
85 r=AntiOptimization[count & 0xf]; |
94 r=AntiOptimization[Count & 0xf]; |
86 r*=Pi; |
95 r*=Pi; |
87 r*=Pi; |
96 r*=Pi; |
88 r*=Pi; |
97 r*=Pi; |
89 r*=Pi; |
98 r*=Pi; |
90 r*=Pi; |
99 r*=Pi; |
91 r*=Pi; |
100 r*=Pi; |
92 r*=Pi; |
101 r*=Pi; |
93 r*=Pi; |
102 r*=Pi; |
94 r*=Pi; |
103 r*=Pi; |
95 r*=Pi; |
104 r*=Pi; |
96 count++; |
105 Step(); |
97 } |
106 } |
98 } |
107 } |
99 |
108 |
100 TInt TReal64Division(TAny*) |
109 TInt TReal64Division(TAny*) |
101 { |
110 { |
102 count=0; |
111 Count=0; |
103 |
112 |
104 FOREVER |
113 FOREVER |
105 { |
114 { |
106 r=AntiOptimization[count & 0xf]; |
115 r=AntiOptimization[Count & 0xf]; |
107 r/=Ten; |
116 r/=Ten; |
108 r/=Ten; |
117 r/=Ten; |
109 r/=Ten; |
118 r/=Ten; |
110 r/=Ten; |
119 r/=Ten; |
111 r/=Ten; |
120 r/=Ten; |
112 r/=Ten; |
121 r/=Ten; |
113 r/=Ten; |
122 r/=Ten; |
114 r/=Ten; |
123 r/=Ten; |
115 r/=Ten; |
124 r/=Ten; |
116 r/=Ten; |
125 r/=Ten; |
117 count++; |
126 Step(); |
118 } |
127 } |
119 } |
128 } |
120 |
129 |
121 TInt TRealSqrt(TAny*) |
130 TInt TRealSqrt(TAny*) |
122 { |
131 { |
132 Count=0; |
|
123 |
133 |
124 TReal r; |
134 TReal r; |
125 |
135 |
126 FOREVER |
136 FOREVER |
127 { |
137 { |
133 Math::Sqrt(r,2.71828182845904524); |
143 Math::Sqrt(r,2.71828182845904524); |
134 Math::Sqrt(r,0.69314718055994531); |
144 Math::Sqrt(r,0.69314718055994531); |
135 Math::Sqrt(r,1.414213562373); |
145 Math::Sqrt(r,1.414213562373); |
136 Math::Sqrt(r,1.7320508078); |
146 Math::Sqrt(r,1.7320508078); |
137 Math::Sqrt(r,299792458.0); |
147 Math::Sqrt(r,299792458.0); |
138 count++; |
148 Step(); |
139 } |
149 } |
140 } |
150 } |
141 |
151 |
142 TInt TRealSin(TAny*) |
152 TInt TRealSin(TAny*) |
143 { |
153 { |
154 Count=0; |
|
144 |
155 |
145 TReal r=7; |
156 TReal r=7; |
146 |
157 |
147 FOREVER |
158 FOREVER |
148 { |
159 { |
154 Math::Sin(r,6.0); |
165 Math::Sin(r,6.0); |
155 Math::Sin(r,7.0); |
166 Math::Sin(r,7.0); |
156 Math::Sin(r,8.0); |
167 Math::Sin(r,8.0); |
157 Math::Sin(r,9.0); |
168 Math::Sin(r,9.0); |
158 Math::Sin(r,-1.0); |
169 Math::Sin(r,-1.0); |
159 count++; |
170 Step(); |
160 } |
171 } |
161 } |
172 } |
162 |
173 |
163 TInt TRealLn(TAny*) |
174 TInt TRealLn(TAny*) |
164 { |
175 { |
176 Count=0; |
|
165 |
177 |
166 TReal r=7; |
178 TReal r=7; |
167 |
179 |
168 FOREVER |
180 FOREVER |
169 { |
181 { |
175 Math::Ln(r,5.0); |
187 Math::Ln(r,5.0); |
176 Math::Ln(r,7.0); |
188 Math::Ln(r,7.0); |
177 Math::Ln(r,11.0); |
189 Math::Ln(r,11.0); |
178 Math::Ln(r,13.0); |
190 Math::Ln(r,13.0); |
179 Math::Ln(r,17.0); |
191 Math::Ln(r,17.0); |
180 count++; |
192 Step(); |
181 } |
193 } |
182 } |
194 } |
183 |
195 |
184 TInt TRealExp(TAny*) |
196 TInt TRealExp(TAny*) |
185 { |
197 { |
198 Count=0; |
|
186 |
199 |
187 TReal r=7; |
200 TReal r=7; |
188 |
201 |
189 FOREVER |
202 FOREVER |
190 { |
203 { |
196 Math::Exp(r,-1.0); |
209 Math::Exp(r,-1.0); |
197 Math::Exp(r,2.0); |
210 Math::Exp(r,2.0); |
198 Math::Exp(r,-2.0); |
211 Math::Exp(r,-2.0); |
199 Math::Exp(r,11.0); |
212 Math::Exp(r,11.0); |
200 Math::Exp(r,-11.0); |
213 Math::Exp(r,-11.0); |
201 count++; |
214 Step(); |
202 } |
215 } |
203 } |
216 } |
204 |
217 |
205 TInt TRealAsin(TAny*) |
218 TInt TRealAsin(TAny*) |
206 { |
219 { |
220 Count=0; |
|
207 |
221 |
208 TReal r=7; |
222 TReal r=7; |
209 |
223 |
210 FOREVER |
224 FOREVER |
211 { |
225 { |
217 Math::ASin(r,0.6); |
231 Math::ASin(r,0.6); |
218 Math::ASin(r,0.7); |
232 Math::ASin(r,0.7); |
219 Math::ASin(r,0.8); |
233 Math::ASin(r,0.8); |
220 Math::ASin(r,0.9); |
234 Math::ASin(r,0.9); |
221 Math::ASin(r,-0.9); |
235 Math::ASin(r,-0.9); |
222 count++; |
236 Step(); |
223 } |
237 } |
224 } |
238 } |
225 |
239 |
226 TInt TRealAtan(TAny*) |
240 TInt TRealAtan(TAny*) |
227 { |
241 { |
242 Count=0; |
|
228 |
243 |
229 TReal r=7; |
244 TReal r=7; |
230 |
245 |
231 FOREVER |
246 FOREVER |
232 { |
247 { |
238 Math::ATan(r,1.1); |
253 Math::ATan(r,1.1); |
239 Math::ATan(r,1.3); |
254 Math::ATan(r,1.3); |
240 Math::ATan(r,1.5); |
255 Math::ATan(r,1.5); |
241 Math::ATan(r,1.7); |
256 Math::ATan(r,1.7); |
242 Math::ATan(r,2.9); |
257 Math::ATan(r,2.9); |
243 count++; |
258 Step(); |
244 } |
259 } |
245 } |
260 } |
246 |
261 |
247 TInt TRealTan(TAny*) |
262 TInt TRealTan(TAny*) |
248 { |
263 { |
264 Count=0; |
|
249 |
265 |
250 TReal r=7; |
266 TReal r=7; |
251 |
267 |
252 FOREVER |
268 FOREVER |
253 { |
269 { |
259 Math::Tan(r,6.0); |
275 Math::Tan(r,6.0); |
260 Math::Tan(r,7.0); |
276 Math::Tan(r,7.0); |
261 Math::Tan(r,8.0); |
277 Math::Tan(r,8.0); |
262 Math::Tan(r,9.0); |
278 Math::Tan(r,9.0); |
263 Math::Tan(r,-1.0); |
279 Math::Tan(r,-1.0); |
264 count++; |
280 Step(); |
265 } |
281 } |
266 } |
282 } |
267 |
283 |
268 TInt TRealPower(TAny*) |
284 TInt TRealPower(TAny*) |
269 { |
285 { |
286 Count=0; |
|
270 |
287 |
271 TReal r=7; |
288 TReal r=7; |
272 |
289 |
273 FOREVER |
290 FOREVER |
274 { |
291 { |
280 Math::Pow(r,0.86602540378,-1.6180334); |
297 Math::Pow(r,0.86602540378,-1.6180334); |
281 Math::Pow(r,7.0,0.5772156649); |
298 Math::Pow(r,7.0,0.5772156649); |
282 Math::Pow(r,95.4,1.57079); |
299 Math::Pow(r,95.4,1.57079); |
283 Math::Pow(r,317.9,0.3333333333333333); |
300 Math::Pow(r,317.9,0.3333333333333333); |
284 Math::Pow(r,299792458,-2.718281828459045235); |
301 Math::Pow(r,299792458,-2.718281828459045235); |
285 count++; |
302 Step(); |
286 } |
303 } |
287 } |
304 } |
288 |
305 |