freebsd-ports/lang/rust/files/log2.patch
Li-Wen Hsu 363f864259 - Update to 0.6
PR:		ports/177665
Submitted by:	Jyun-Yan You <jyyou@cs.nctu.edu.tw> (maintainer)
2013-04-24 13:46:41 +00:00

66 lines
2.7 KiB
Diff

--- src/libcore/num/cmath.rs.orig 2013-04-06 12:52:09.596039132 +0800
+++ src/libcore/num/cmath.rs 2013-04-06 12:53:24.474452681 +0800
@@ -64,7 +64,6 @@
// renamed: to be consitent with log as ln
#[link_name="log1p"] unsafe fn ln1p(n: c_double) -> c_double;
unsafe fn log10(n: c_double) -> c_double;
- unsafe fn log2(n: c_double) -> c_double;
#[link_name="ilogb"] unsafe fn ilog_radix(n: c_double) -> c_int;
unsafe fn modf(n: c_double, iptr: &mut c_double) -> c_double;
unsafe fn pow(n: c_double, e: c_double) -> c_double;
@@ -148,7 +147,6 @@
#[link_name="logf"] unsafe fn ln(n: c_float) -> c_float;
#[link_name="logbf"] unsafe fn log_radix(n: c_float) -> c_float;
#[link_name="log1pf"] unsafe fn ln1p(n: c_float) -> c_float;
- #[link_name="log2f"] unsafe fn log2(n: c_float) -> c_float;
#[link_name="log10f"] unsafe fn log10(n: c_float) -> c_float;
#[link_name="ilogbf"] unsafe fn ilog_radix(n: c_float) -> c_int;
#[link_name="modff"] unsafe fn modf(n: c_float,
--- src/libcore/num/f32.rs.orig 2013-04-06 12:52:15.395037527 +0800
+++ src/libcore/num/f32.rs 2013-04-06 13:00:55.623679761 +0800
@@ -81,7 +81,6 @@
cmath::c_float_utils::log_radix)
delegate!(fn ln1p(n: c_float) -> c_float = cmath::c_float_utils::ln1p)
delegate!(fn log10(n: c_float) -> c_float = cmath::c_float_utils::log10)
-delegate!(fn log2(n: c_float) -> c_float = cmath::c_float_utils::log2)
delegate!(fn ilog_radix(n: c_float) -> c_int =
cmath::c_float_utils::ilog_radix)
delegate!(fn modf(n: c_float, iptr: &mut c_float) -> c_float =
@@ -254,7 +253,12 @@
#[inline(always)]
pub fn logarithm(n: f32, b: f32) -> f32 {
- return log2(n) / log2(b);
+ return ln(n) / ln(b);
+}
+
+#[inline(always)]
+pub fn log2(n: f32) -> f32 {
+ return ln(n) / consts::ln_2;
}
#[cfg(notest)]
--- src/libcore/num/f64.rs.orig 2013-04-06 12:52:25.866037307 +0800
+++ src/libcore/num/f64.rs 2013-04-06 13:02:33.051357016 +0800
@@ -82,7 +82,6 @@
cmath::c_double_utils::log_radix)
delegate!(fn ln1p(n: c_double) -> c_double = cmath::c_double_utils::ln1p)
delegate!(fn log10(n: c_double) -> c_double = cmath::c_double_utils::log10)
-delegate!(fn log2(n: c_double) -> c_double = cmath::c_double_utils::log2)
delegate!(fn ilog_radix(n: c_double) -> c_int =
cmath::c_double_utils::ilog_radix)
delegate!(fn modf(n: c_double, iptr: &mut c_double) -> c_double =
@@ -276,7 +275,12 @@
#[inline(always)]
pub fn logarithm(n: f64, b: f64) -> f64 {
- return log2(n) / log2(b);
+ return ln(n) / ln(b);
+}
+
+#[inline(always)]
+pub fn log2(n: f64) -> f64 {
+ return ln(n) / consts::ln_2;
}
#[cfg(notest)]