Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(21)

Side by Side Diff: base/third_party/dmg_fp/dtoa.cc

Issue 179028: Revert "Fix a ton of compiler warnings." (Closed)
Patch Set: Created 11 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « base/third_party/dmg_fp/README.chromium ('k') | base/time.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /**************************************************************** 1 /****************************************************************
2 * 2 *
3 * The author of this software is David M. Gay. 3 * The author of this software is David M. Gay.
4 * 4 *
5 * Copyright (c) 1991, 2000, 2001 by Lucent Technologies. 5 * Copyright (c) 1991, 2000, 2001 by Lucent Technologies.
6 * 6 *
7 * Permission to use, copy, modify, and distribute this software for any 7 * Permission to use, copy, modify, and distribute this software for any
8 * purpose without fee is hereby granted, provided that this entire notice 8 * purpose without fee is hereby granted, provided that this entire notice
9 * is included in all copies of any software which is or includes a copy 9 * is included in all copies of any software which is or includes a copy
10 * or modification of this software and in all copies of the supporting 10 * or modification of this software and in all copies of the supporting
(...skipping 1541 matching lines...) Expand 10 before | Expand all | Expand 10 after
1552 #ifdef KR_headers 1552 #ifdef KR_headers
1553 (rvp, sp) U *rvp; CONST char **sp; 1553 (rvp, sp) U *rvp; CONST char **sp;
1554 #else 1554 #else
1555 (U *rvp, CONST char **sp) 1555 (U *rvp, CONST char **sp)
1556 #endif 1556 #endif
1557 { 1557 {
1558 ULong c, x[2]; 1558 ULong c, x[2];
1559 CONST char *s; 1559 CONST char *s;
1560 int c1, havedig, udx0, xshift; 1560 int c1, havedig, udx0, xshift;
1561 1561
1562 » if (!hexdig[static_cast<int>('0')]) 1562 » if (!hexdig['0'])
1563 hexdig_init(); 1563 hexdig_init();
1564 x[0] = x[1] = 0; 1564 x[0] = x[1] = 0;
1565 havedig = xshift = 0; 1565 havedig = xshift = 0;
1566 udx0 = 1; 1566 udx0 = 1;
1567 s = *sp; 1567 s = *sp;
1568 /* allow optional initial 0x or 0X */ 1568 /* allow optional initial 0x or 0X */
1569 while((c = *(CONST unsigned char*)(s+1)) && c <= ' ') 1569 while((c = *(CONST unsigned char*)(s+1)) && c <= ' ')
1570 ++s; 1570 ++s;
1571 if (s[1] == '0' && (s[2] == 'x' || s[2] == 'X')) 1571 if (s[1] == '0' && (s[2] == 'x' || s[2] == 'X'))
1572 s += 2; 1572 s += 2;
(...skipping 1703 matching lines...) Expand 10 before | Expand all | Expand 10 after
3276 word1(&rv) = Big1; 3276 word1(&rv) = Big1;
3277 goto cont; 3277 goto cont;
3278 } 3278 }
3279 else 3279 else
3280 word0(&rv) += P*Exp_msk1; 3280 word0(&rv) += P*Exp_msk1;
3281 } 3281 }
3282 else { 3282 else {
3283 #ifdef Avoid_Underflow 3283 #ifdef Avoid_Underflow
3284 if (bc.scale && y <= 2*P*Exp_msk1) { 3284 if (bc.scale && y <= 2*P*Exp_msk1) {
3285 if (aadj <= 0x7fffffff) { 3285 if (aadj <= 0x7fffffff) {
3286 » » » » » if ((z = static_cast<ULong>(aadj)) <= 0) 3286 » » » » » if ((z = aadj) <= 0)
3287 z = 1; 3287 z = 1;
3288 aadj = z; 3288 aadj = z;
3289 aadj1 = bc.dsign ? aadj : -aadj; 3289 aadj1 = bc.dsign ? aadj : -aadj;
3290 } 3290 }
3291 dval(&aadj2) = aadj1; 3291 dval(&aadj2) = aadj1;
3292 word0(&aadj2) += (2*P+1)*Exp_msk1 - y; 3292 word0(&aadj2) += (2*P+1)*Exp_msk1 - y;
3293 aadj1 = dval(&aadj2); 3293 aadj1 = dval(&aadj2);
3294 } 3294 }
3295 adj.d = aadj1 * ulp(&rv); 3295 adj.d = aadj1 * ulp(&rv);
3296 dval(&rv) += adj.d; 3296 dval(&rv) += adj.d;
(...skipping 533 matching lines...) Expand 10 before | Expand all | Expand 10 after
3830 goto no_digits; 3830 goto no_digits;
3831 goto fast_failed; 3831 goto fast_failed;
3832 } 3832 }
3833 #ifndef No_leftright 3833 #ifndef No_leftright
3834 if (leftright) { 3834 if (leftright) {
3835 /* Use Steele & White method of only 3835 /* Use Steele & White method of only
3836 * generating digits needed. 3836 * generating digits needed.
3837 */ 3837 */
3838 dval(&eps) = 0.5/tens[ilim-1] - dval(&eps); 3838 dval(&eps) = 0.5/tens[ilim-1] - dval(&eps);
3839 for(i = 0;;) { 3839 for(i = 0;;) {
3840 » » » » L = static_cast<long>(dval(&u)); 3840 » » » » L = dval(&u);
3841 dval(&u) -= L; 3841 dval(&u) -= L;
3842 *s++ = '0' + (int)L; 3842 *s++ = '0' + (int)L;
3843 if (dval(&u) < dval(&eps)) 3843 if (dval(&u) < dval(&eps))
3844 goto ret1; 3844 goto ret1;
3845 if (1. - dval(&u) < dval(&eps)) 3845 if (1. - dval(&u) < dval(&eps))
3846 goto bump_up; 3846 goto bump_up;
3847 if (++i >= ilim) 3847 if (++i >= ilim)
3848 break; 3848 break;
3849 dval(&eps) *= 10.; 3849 dval(&eps) *= 10.;
3850 dval(&u) *= 10.; 3850 dval(&u) *= 10.;
(...skipping 349 matching lines...) Expand 10 before | Expand all | Expand 10 after
4200 #endif 4200 #endif
4201 Bfree(b); 4201 Bfree(b);
4202 *s = 0; 4202 *s = 0;
4203 *decpt = k + 1; 4203 *decpt = k + 1;
4204 if (rve) 4204 if (rve)
4205 *rve = s; 4205 *rve = s;
4206 return s0; 4206 return s0;
4207 } 4207 }
4208 4208
4209 } // namespace dmg_fp 4209 } // namespace dmg_fp
OLDNEW
« no previous file with comments | « base/third_party/dmg_fp/README.chromium ('k') | base/time.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698