src/libm/s_floor.c
changeset 2760 02aa80d7905f
parent 2758 045d9976f285
child 2765 f55c87ae336b
equal deleted inserted replaced
2759:95fccd9bf262 2760:02aa80d7905f
    79             if (i0 < 0) {
    79             if (i0 < 0) {
    80                 if (j0 == 20)
    80                 if (j0 == 20)
    81                     i0 += 1;
    81                     i0 += 1;
    82                 else {
    82                 else {
    83                     j = i1 + (1 << (52 - j0));
    83                     j = i1 + (1 << (52 - j0));
    84                     if (j < i1)
    84                     if (j < (u_int32_t)i1)
    85                         i0 += 1;        /* got a carry */
    85                         i0 += 1;        /* got a carry */
    86                     i1 = j;
    86                     i1 = j;
    87                 }
    87                 }
    88             }
    88             }
    89             i1 &= (~i);
    89             i1 &= (~i);