Mercurial > octave-nkf
comparison liboctave/Array-d.cc @ 7924:4976f66d469b
miscellaneous cleanup
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 11 Jul 2008 17:59:28 -0400 |
parents | 2467639bd8c0 |
children | 7cbe01c21986 |
comparison
equal
deleted
inserted
replaced
7923:c3d21b9b94b6 | 7924:4976f66d469b |
---|---|
137 { | 137 { |
138 if (mode == ASCENDING) | 138 if (mode == ASCENDING) |
139 { | 139 { |
140 octave_idx_type i = 0; | 140 octave_idx_type i = 0; |
141 double *vtmp = reinterpret_cast<double *> (p); | 141 double *vtmp = reinterpret_cast<double *> (p); |
142 while (xisnan (vtmp[i++]) && i < ns); | 142 while (xisnan (vtmp[i++]) && i < ns) |
143 /* do nothing */; | |
143 for (octave_idx_type l = 0; l < ns - i + 1; l++) | 144 for (octave_idx_type l = 0; l < ns - i + 1; l++) |
144 vtmp[l] = vtmp[l+i-1]; | 145 vtmp[l] = vtmp[l+i-1]; |
145 for (octave_idx_type l = ns - i + 1; l < ns; l++) | 146 for (octave_idx_type l = ns - i + 1; l < ns; l++) |
146 vtmp[l] = octave_NaN; | 147 vtmp[l] = octave_NaN; |
147 } | 148 } |
148 else | 149 else |
149 { | 150 { |
150 octave_idx_type i = ns; | 151 octave_idx_type i = ns; |
151 double *vtmp = reinterpret_cast<double *> (p); | 152 double *vtmp = reinterpret_cast<double *> (p); |
152 while (xisnan (vtmp[--i]) && i > 0); | 153 while (xisnan (vtmp[--i]) && i > 0) |
154 /* do nothing */; | |
153 for (octave_idx_type l = i; l >= 0; l--) | 155 for (octave_idx_type l = i; l >= 0; l--) |
154 vtmp[l-i+ns-1] = vtmp[l]; | 156 vtmp[l-i+ns-1] = vtmp[l]; |
155 for (octave_idx_type l = 0; l < ns - i - 1; l++) | 157 for (octave_idx_type l = 0; l < ns - i - 1; l++) |
156 vtmp[l] = octave_NaN; | 158 vtmp[l] = octave_NaN; |
157 } | 159 } |
197 if (lo_ieee_signbit (octave_NaN)) | 199 if (lo_ieee_signbit (octave_NaN)) |
198 { | 200 { |
199 if (mode == ASCENDING) | 201 if (mode == ASCENDING) |
200 { | 202 { |
201 octave_idx_type i = 0; | 203 octave_idx_type i = 0; |
202 while (xisnan (v[i++*stride + offset]) && i < ns); | 204 while (xisnan (v[i++*stride + offset]) && i < ns) |
205 /* do nothing */; | |
203 for (octave_idx_type l = 0; l < ns - i + 1; l++) | 206 for (octave_idx_type l = 0; l < ns - i + 1; l++) |
204 v[l*stride + offset] = v[(l+i-1)*stride + offset]; | 207 v[l*stride + offset] = v[(l+i-1)*stride + offset]; |
205 for (octave_idx_type l = ns - i + 1; l < ns; l++) | 208 for (octave_idx_type l = ns - i + 1; l < ns; l++) |
206 v[l*stride + offset] = octave_NaN; | 209 v[l*stride + offset] = octave_NaN; |
207 } | 210 } |
208 else | 211 else |
209 { | 212 { |
210 octave_idx_type i = ns; | 213 octave_idx_type i = ns; |
211 while (xisnan (v[--i*stride + offset]) && i > 0); | 214 while (xisnan (v[--i*stride + offset]) && i > 0) |
215 /* do nothing */; | |
212 for (octave_idx_type l = i; l >= 0; l--) | 216 for (octave_idx_type l = i; l >= 0; l--) |
213 v[(l-i+ns-1)*stride + offset] = v[l*stride + offset]; | 217 v[(l-i+ns-1)*stride + offset] = v[l*stride + offset]; |
214 for (octave_idx_type l = 0; l < ns - i - 1; l++) | 218 for (octave_idx_type l = 0; l < ns - i - 1; l++) |
215 v[l*stride + offset] = octave_NaN; | 219 v[l*stride + offset] = octave_NaN; |
216 } | 220 } |
301 if (lo_ieee_signbit (octave_NaN)) | 305 if (lo_ieee_signbit (octave_NaN)) |
302 { | 306 { |
303 if (mode == ASCENDING) | 307 if (mode == ASCENDING) |
304 { | 308 { |
305 octave_idx_type i = 0; | 309 octave_idx_type i = 0; |
306 while (xisnan (v[i++*stride+offset]) && i < ns); | 310 while (xisnan (v[i++*stride+offset]) && i < ns) |
311 /* do nothing */; | |
307 OCTAVE_LOCAL_BUFFER (double, itmp, i - 1); | 312 OCTAVE_LOCAL_BUFFER (double, itmp, i - 1); |
308 for (octave_idx_type l = 0; l < i -1; l++) | 313 for (octave_idx_type l = 0; l < i -1; l++) |
309 itmp[l] = sidx(l*stride + offset); | 314 itmp[l] = sidx(l*stride + offset); |
310 for (octave_idx_type l = 0; l < ns - i + 1; l++) | 315 for (octave_idx_type l = 0; l < ns - i + 1; l++) |
311 { | 316 { |
320 } | 325 } |
321 } | 326 } |
322 else | 327 else |
323 { | 328 { |
324 octave_idx_type i = ns; | 329 octave_idx_type i = ns; |
325 while (xisnan (v[--i*stride+offset]) && i > 0); | 330 while (xisnan (v[--i*stride+offset]) && i > 0) |
331 /* do nothing */; | |
326 OCTAVE_LOCAL_BUFFER (double, itmp, ns - i - 1); | 332 OCTAVE_LOCAL_BUFFER (double, itmp, ns - i - 1); |
327 for (octave_idx_type l = 0; l < ns - i -1; l++) | 333 for (octave_idx_type l = 0; l < ns - i -1; l++) |
328 itmp[l] = sidx((l+i+1)*stride + offset); | 334 itmp[l] = sidx((l+i+1)*stride + offset); |
329 for (octave_idx_type l = i; l >= 0; l--) | 335 for (octave_idx_type l = i; l >= 0; l--) |
330 { | 336 { |