reduce CPP noise

This commit is contained in:
Matthew Flatt 2014-11-05 09:00:18 -07:00
parent 1d09fbde37
commit b9d8f65fc9

View File

@ -3557,10 +3557,8 @@ scheme_expt(int argc, Scheme_Object *argv[])
if ((d == 0.0) if ((d == 0.0)
#ifdef NAN_EQUALS_ANYTHING #ifdef NAN_EQUALS_ANYTHING
&& !MZ_IS_NAN(d) && !MZ_IS_NAN(d)
#else
&& 1
#endif #endif
) { && 1) {
if (SCHEME_REALP(e)) { if (SCHEME_REALP(e)) {
int norm = 0; int norm = 0;
@ -3578,6 +3576,9 @@ scheme_expt(int argc, Scheme_Object *argv[])
int isnonneg, iseven, negz; int isnonneg, iseven, negz;
#ifdef MZ_USE_SINGLE_FLOATS #ifdef MZ_USE_SINGLE_FLOATS
int sgl = !SCHEME_DBLP(n) && !SCHEME_DBLP(e); int sgl = !SCHEME_DBLP(n) && !SCHEME_DBLP(e);
# define SELECT_EXPT_PRECISION(f, d) (sgl ? f : d)
#else
# define SELECT_EXPT_PRECISION(f, d) d
#endif #endif
if (scheme_is_integer(e)) { if (scheme_is_integer(e)) {
@ -3590,33 +3591,17 @@ scheme_expt(int argc, Scheme_Object *argv[])
negz = scheme_minus_zero_p(d); negz = scheme_minus_zero_p(d);
if (isnonneg) { if (isnonneg) {
if (iseven || !negz) { if (iseven || !negz)
#ifdef MZ_USE_SINGLE_FLOATS return SELECT_EXPT_PRECISION(scheme_zerof, scheme_zerod);
if (sgl) else
return scheme_zerof; return SELECT_EXPT_PRECISION(scheme_nzerof, scheme_nzerod);
#endif
return scheme_zerod;
} else { } else {
#ifdef MZ_USE_SINGLE_FLOATS if (iseven || !negz)
if (sgl) return SELECT_EXPT_PRECISION(scheme_single_inf_object,
return scheme_nzerof; scheme_inf_object);
#endif else
return scheme_nzerod; return SELECT_EXPT_PRECISION(scheme_single_minus_inf_object,
} scheme_minus_inf_object);
} else {
if (iseven || !negz) {
#ifdef MZ_USE_SINGLE_FLOATS
if (sgl)
return scheme_single_inf_object;
#endif
return scheme_inf_object;
} else {
#ifdef MZ_USE_SINGLE_FLOATS
if (sgl)
return scheme_single_minus_inf_object;
#endif
return scheme_minus_inf_object;
}
} }
} }
} }