      fn pad_formatted_parts(&mut self, formatted: &flt2dec::Formatted) -> Result {
          if let Some(mut width) = self.width {
              // for the sign-aware zero padding, we render the sign first and
-@@ -1027,6 +691,7 @@ impl<'a> Formatter<'a> {
+@@ -1042,6 +1044,7 @@
          }
      }
  

 // Common code of floating point Debug and Display.
 fn float_to_decimal_common<T>(fmt: &mut Formatter, num: &T, negative_zero: bool) -> Result
     where T: flt2dec::DecodableFloat
@@ -1415,6 +1082,7 @@ fn float_to_decimal_common<T>(fmt: &mut Formatter, num: &T, negative_zero: bool)
     fmt.pad_formatted_parts(&formatted)
 }
 

 #[path = "num/f64.rs"]   pub mod f64;
 
 #[macro_use]
@@ -159,6 +161,7 @@
 #[path = "simd_old.rs"]
 pub mod simd;
 #[cfg(not(stage0))]
+#[cfg(not(disable_float))]
 pub mod simd;
 
 pub mod slice;
diff -rub libcore_orig/num/flt2dec/decoder.rs libcore/num/flt2dec/decoder.rs
--- libcore_orig/num/flt2dec/decoder.rs	2015-09-22 19:09:25.174462098 +0800
+++ libcore/num/flt2dec/decoder.rs	2015-09-22 19:02:10.966704238 +0800
@@ -12,6 +12,7 @@
 
 use prelude::v1::*;
