Просмотр исходного кода

Disable quickcheck tests on mips

Two reasons:
    * the C versions __divti3 and __modti3 are apparently broken,
      at least when used in quickcheck. They change their own arguments.
    * compiler_rt's support for mips is disabled already on clang [1].
      Its desireable to support working "cargo test" on that compiler
      as well, and not greet the tester with linker errors.

[1]: http://llvm.org/viewvc/llvm-project?view=revision&revision=224488
est31 8 лет назад
Родитель
Сommit
37d349015e
5 измененных файлов с 21 добавлено и 6 удалено
  1. 4 1
      compiler-rt/compiler-rt-cdylib/src/lib.rs
  2. 4 1
      src/int/mul.rs
  3. 5 2
      src/int/sdiv.rs
  4. 4 1
      src/int/shift.rs
  5. 4 1
      src/int/udiv.rs

+ 4 - 1
compiler-rt/compiler-rt-cdylib/src/lib.rs

@@ -58,7 +58,10 @@ declare!(___adddf3, __adddf3);
 declare!(___powisf2, __powisf2);
 declare!(___powidf2, __powidf2);
 
-#[cfg(all(not(windows), target_pointer_width="64"))]
+#[cfg(all(not(windows),
+          not(target_arch = "mips64"),
+          not(target_arch = "mips64el"),
+          target_pointer_width="64"))]
 pub mod int_128 {
     extern {
         fn __lshrti3();

+ 4 - 1
src/int/mul.rs

@@ -122,7 +122,10 @@ mod tests {
 }
 
 #[cfg(test)]
-#[cfg(all(not(windows), target_pointer_width="64"))]
+#[cfg(all(not(windows),
+          not(target_arch = "mips64"),
+          not(target_arch = "mips64el"),
+          target_pointer_width="64"))]
 mod tests_i128 {
     use qc::I128;
 

+ 5 - 2
src/int/sdiv.rs

@@ -164,11 +164,14 @@ mod tests {
 }
 
 #[cfg(test)]
-#[cfg(all(not(windows), target_pointer_width="64"))]
+#[cfg(all(not(windows),
+          not(target_arch = "mips64"),
+          not(target_arch = "mips64el"),
+          target_pointer_width="64"))]
 mod tests_i128 {
     use qc::U128;
-
     check! {
+
         fn __divti3(f: extern fn(i128, i128) -> i128, n: U128, d: U128) -> Option<i128> {
             let (n, d) = (n.0 as i128, d.0 as i128);
             if d == 0 {

+ 4 - 1
src/int/shift.rs

@@ -105,7 +105,10 @@ mod tests {
 }
 
 #[cfg(test)]
-#[cfg(all(not(windows), target_pointer_width="64"))]
+#[cfg(all(not(windows),
+          not(target_arch = "mips64"),
+          not(target_arch = "mips64el"),
+          target_pointer_width="64"))]
 mod tests_i128 {
     use qc::{I128, U128};
 

+ 4 - 1
src/int/udiv.rs

@@ -382,7 +382,10 @@ mod tests {
 }
 
 #[cfg(test)]
-#[cfg(all(not(windows), target_pointer_width="64"))]
+#[cfg(all(not(windows),
+          not(target_arch = "mips64"),
+          not(target_arch = "mips64el"),
+          target_pointer_width="64"))]
 mod tests_i128 {
     use qc::U128;