diff options
| author | Szabolcs Nagy <nsz@port70.net> | 2013-10-04 18:10:17 +0000 | 
|---|---|---|
| committer | Szabolcs Nagy <nsz@port70.net> | 2013-10-04 18:10:17 +0000 | 
| commit | e5100b32d29b4249989f2423063baab3beffea06 (patch) | |
| tree | f953f6cad929ce6ccee9245f0976723e476f37c8 | |
| parent | e71981af77c360d4a2a17030c7cef4f4eedf66f1 (diff) | |
| download | musl-e5100b32d29b4249989f2423063baab3beffea06.tar.gz | |
math: remove code duplication in erfl found by clang analyzer
erfl had some superflous code left around after the last erf cleanup.
the issue was reported by Alexander Monakov
| -rw-r--r-- | src/math/erfl.c | 15 | 
1 files changed, 2 insertions, 13 deletions
diff --git a/src/math/erfl.c b/src/math/erfl.c index 42bb1a17..96b74dee 100644 --- a/src/math/erfl.c +++ b/src/math/erfl.c @@ -266,23 +266,12 @@ static long double erfc2(uint32_t ix, long double x)  		     s * (ra[5] + s * (ra[6] + s * (ra[7] + s * ra[8])))))));  		S = sa[0] + s * (sa[1] + s * (sa[2] + s * (sa[3] + s * (sa[4] +  		     s * (sa[5] + s * (sa[6] + s * (sa[7] + s * (sa[8] + s)))))))); -	} else {  /* 2.857 <= |x| */ +	} else if (ix < 0x4001d555) {  /* 2.857 <= |x| < 6.6666259765625 */  		R = rb[0] + s * (rb[1] + s * (rb[2] + s * (rb[3] + s * (rb[4] +  		     s * (rb[5] + s * (rb[6] + s * rb[7]))))));  		S = sb[0] + s * (sb[1] + s * (sb[2] + s * (sb[3] + s * (sb[4] +  		     s * (sb[5] + s * (sb[6] + s)))))); -	} -	if (ix < 0x4000b6db) {  /* 1.25 <= |x| < 2.85711669921875 ~ 1/.35 */ -		R = ra[0] + s * (ra[1] + s * (ra[2] + s * (ra[3] + s * (ra[4] + -		     s * (ra[5] + s * (ra[6] + s * (ra[7] + s * ra[8]))))))); -		S = sa[0] + s * (sa[1] + s * (sa[2] + s * (sa[3] + s * (sa[4] + -		     s * (sa[5] + s * (sa[6] + s * (sa[7] + s * (sa[8] + s)))))))); -	} else if (ix < 0x4001d555) {  /* 6.6666259765625 > |x| >= 1/.35 ~ 2.857143 */ -		R = rb[0] + s * (rb[1] + s * (rb[2] + s * (rb[3] + s * (rb[4] + -		     s * (rb[5] + s * (rb[6] + s * rb[7])))))); -		S = sb[0] + s * (sb[1] + s * (sb[2] + s * (sb[3] + s * (sb[4] + -		     s * (sb[5] + s * (sb[6] + s)))))); -	} else { /* 107 > |x| >= 6.666 */ +	} else { /* 6.666 <= |x| < 107 (erfc only) */  		R = rc[0] + s * (rc[1] + s * (rc[2] + s * (rc[3] +  		     s * (rc[4] + s * rc[5]))));  		S = sc[0] + s * (sc[1] + s * (sc[2] + s * (sc[3] +  | 
