ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libev/ev.c
(Generate patch)

Comparing libev/ev.c (file contents):
Revision 1.503 by root, Wed Jul 3 21:52:04 2019 UTC vs.
Revision 1.504 by root, Sun Jul 7 06:00:32 2019 UTC

1726 const ev_tstamp shift = sizeof (unsigned long) >= 8 ? 10000000000000000000. : 1000000000.; 1726 const ev_tstamp shift = sizeof (unsigned long) >= 8 ? 10000000000000000000. : 1000000000.;
1727#else 1727#else
1728 const ev_tstamp shift = sizeof (unsigned long) >= 8 ? 18446744073709551616. : 4294967296.; 1728 const ev_tstamp shift = sizeof (unsigned long) >= 8 ? 18446744073709551616. : 4294967296.;
1729#endif 1729#endif
1730 1730
1731 /* special treatment for negative arguments */
1732 if (ecb_expect_false (v < 0.))
1733 {
1734 ev_tstamp f = -ev_floor (-v);
1735
1736 return f - (f == v ? 0 : 1);
1737 }
1738
1731 /* argument too large for an unsigned long? */ 1739 /* argument too large for an unsigned long? then reduce it */
1732 if (ecb_expect_false (v >= shift)) 1740 if (ecb_expect_false (v >= shift))
1733 { 1741 {
1734 ev_tstamp f; 1742 ev_tstamp f;
1735 1743
1736 if (v == v - 1.) 1744 if (v == v - 1.)
1737 return v; /* very large number */ 1745 return v; /* very large numbers are assumed to be integer */
1738 1746
1739 f = shift * ev_floor (v * (1. / shift)); 1747 f = shift * ev_floor (v * (1. / shift));
1740 return f + ev_floor (v - f); 1748 return f + ev_floor (v - f);
1741 }
1742
1743 /* special treatment for negative args? */
1744 if (ecb_expect_false (v < 0.))
1745 {
1746 ev_tstamp f = -ev_floor (-v);
1747
1748 return f - (f == v ? 0 : 1);
1749 } 1749 }
1750 1750
1751 /* fits into an unsigned long */ 1751 /* fits into an unsigned long */
1752 return (unsigned long)v; 1752 return (unsigned long)v;
1753} 1753}

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines