DBL_EXP_INFNAN
exp = DBL_EXP_INFNAN;
sign |= DBL_EXP(DBL_EXP_INFNAN);
if (exp >= DBL_EXP_INFNAN) {
return (sign | DBL_EXP(DBL_EXP_INFNAN) | 0);
return (sign | DBL_EXP(DBL_EXP_INFNAN - 1) | DBL_MASK);