Bläddra i källkod

Include `ldexp*` intrinsics on the wasm target

Looks like LLVM optimizes programs like:

    fn foo(a: u8) -> f32 {
        2.0f32.powf(a as f32)
    }

to actually invoking `ldexpf`, so let's be sure to include bindings so
there's not undefined symbols.
Alex Crichton 6 år sedan
förälder
incheckning
4012b9c4f5
2 ändrade filer med 3 tillägg och 1 borttagningar
  1. 1 1
      libm
  2. 2 0
      src/math.rs

+ 1 - 1
libm

@@ -1 +1 @@
-Subproject commit 3559e703795d33e84a91da2a35f2f3baac47e872
+Subproject commit 0ae442888c7af72c0a335edd43dbbd74c751f119

+ 2 - 0
src/math.rs

@@ -71,6 +71,8 @@ no_mangle! {
     fn sinhf(n: f32) -> f32;
     fn tanf(n: f32) -> f32;
     fn tanhf(n: f32) -> f32;
+    fn ldexp(f: f64, n: i32) -> f64;
+    fn ldexpf(f: f32, n: i32) -> f32;
 }
 
 #[cfg(all(target_vendor = "fortanix", target_env = "sgx"))]