Skip to content
This repository was archived by the owner on Apr 28, 2025. It is now read-only.

Commit b4bd41e

Browse files
rint/rintf instead of roundeven/roundevenf
1 parent d8dd41a commit b4bd41e

File tree

4 files changed

+22
-33
lines changed

4 files changed

+22
-33
lines changed

libm/build.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,6 @@ mod musl_reference_tests {
3939
"jnf.rs",
4040
"j1.rs",
4141
"j1f.rs",
42-
// musl doens't have these
43-
"roundeven.rs",
44-
"roundevenf.rs",
4542
];
4643

4744
struct Function {

libm/src/math/mod.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -170,9 +170,9 @@ mod remainder;
170170
mod remainderf;
171171
mod remquo;
172172
mod remquof;
173+
mod rint;
174+
mod rintf;
173175
mod round;
174-
mod roundeven;
175-
mod roundevenf;
176176
mod roundf;
177177
mod scalbn;
178178
mod scalbnf;
@@ -286,9 +286,9 @@ pub use self::remainder::remainder;
286286
pub use self::remainderf::remainderf;
287287
pub use self::remquo::remquo;
288288
pub use self::remquof::remquof;
289+
pub use self::rint::rint;
290+
pub use self::rintf::rintf;
289291
pub use self::round::round;
290-
pub use self::roundeven::roundeven;
291-
pub use self::roundevenf::roundevenf;
292292
pub use self::roundf::roundf;
293293
pub use self::scalbn::scalbn;
294294
pub use self::scalbnf::scalbnf;

libm/src/math/roundeven.rs renamed to libm/src/math/rint.rs

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
1-
// Source: musl libm rint
2-
// (equivalent to roundeven when rounding mode is default,
3-
// which Rust assumes)
4-
51
#[cfg_attr(all(test, assert_no_panic), no_panic::no_panic)]
6-
pub fn roundeven(x: f64) -> f64 {
2+
pub fn rint(x: f64) -> f64 {
73
let one_over_e = 1.0 / f64::EPSILON;
84
let as_u64: u64 = x.to_bits();
95
let exponent: u64 = as_u64 >> 52 & 0x7ff;
@@ -31,20 +27,20 @@ pub fn roundeven(x: f64) -> f64 {
3127

3228
#[cfg(test)]
3329
mod tests {
34-
use super::roundeven;
30+
use super::rint;
3531

3632
#[test]
3733
fn negative_zero() {
38-
assert_eq!(roundeven(-0.0_f64).to_bits(), (-0.0_f64).to_bits());
34+
assert_eq!(rint(-0.0_f64).to_bits(), (-0.0_f64).to_bits());
3935
}
4036

4137
#[test]
4238
fn sanity_check() {
43-
assert_eq!(roundeven(-1.0), -1.0);
44-
assert_eq!(roundeven(2.8), 3.0);
45-
assert_eq!(roundeven(-0.5), -0.0);
46-
assert_eq!(roundeven(0.5), 0.0);
47-
assert_eq!(roundeven(-1.5), -2.0);
48-
assert_eq!(roundeven(1.5), 2.0);
39+
assert_eq!(rint(-1.0), -1.0);
40+
assert_eq!(rint(2.8), 3.0);
41+
assert_eq!(rint(-0.5), -0.0);
42+
assert_eq!(rint(0.5), 0.0);
43+
assert_eq!(rint(-1.5), -2.0);
44+
assert_eq!(rint(1.5), 2.0);
4945
}
5046
}

libm/src/math/roundevenf.rs renamed to libm/src/math/rintf.rs

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
1-
// Source: musl libm rintf
2-
// (equivalent to roundevenf when rounding mode is default,
3-
// which Rust assumes)
4-
51
#[cfg_attr(all(test, assert_no_panic), no_panic::no_panic)]
6-
pub fn roundevenf(x: f32) -> f32 {
2+
pub fn rintf(x: f32) -> f32 {
73
let one_over_e = 1.0 / f32::EPSILON;
84
let as_u32: u32 = x.to_bits();
95
let exponent: u32 = as_u32 >> 23 & 0xff;
@@ -31,20 +27,20 @@ pub fn roundevenf(x: f32) -> f32 {
3127

3228
#[cfg(test)]
3329
mod tests {
34-
use super::roundevenf;
30+
use super::rintf;
3531

3632
#[test]
3733
fn negative_zero() {
38-
assert_eq!(roundevenf(-0.0_f32).to_bits(), (-0.0_f32).to_bits());
34+
assert_eq!(rintf(-0.0_f32).to_bits(), (-0.0_f32).to_bits());
3935
}
4036

4137
#[test]
4238
fn sanity_check() {
43-
assert_eq!(roundevenf(-1.0), -1.0);
44-
assert_eq!(roundevenf(2.8), 3.0);
45-
assert_eq!(roundevenf(-0.5), -0.0);
46-
assert_eq!(roundevenf(0.5), 0.0);
47-
assert_eq!(roundevenf(-1.5), -2.0);
48-
assert_eq!(roundevenf(1.5), 2.0);
39+
assert_eq!(rintf(-1.0), -1.0);
40+
assert_eq!(rintf(2.8), 3.0);
41+
assert_eq!(rintf(-0.5), -0.0);
42+
assert_eq!(rintf(0.5), 0.0);
43+
assert_eq!(rintf(-1.5), -2.0);
44+
assert_eq!(rintf(1.5), 2.0);
4945
}
5046
}

0 commit comments

Comments
 (0)