diff --git a/build.rs b/build.rs index 2cbb4b3811..40b4385b5e 100644 --- a/build.rs +++ b/build.rs @@ -209,9 +209,14 @@ fn ignore(testsuite: &str, testname: &str, strategy: &str) -> bool { // testsuite repo. ("simd", "simd_const") => return true, + ("reference_types", "table_copy_on_imported_tables") + | ("reference_types", "externref_id_function") => { + // Ignore if this isn't x64, because Cranelift only supports + // reference types on x64. + return env::var("CARGO_CFG_TARGET_ARCH").unwrap() != "x86_64"; + } + // Still working on implementing these. See #929. - ("reference_types", "table_copy_on_imported_tables") => return false, - ("reference_types", "externref_id_function") => return false, ("reference_types", _) => return true, _ => {} diff --git a/tests/all/main.rs b/tests/all/main.rs index 5d8db9ffe2..a664807f50 100644 --- a/tests/all/main.rs +++ b/tests/all/main.rs @@ -4,7 +4,6 @@ mod debug; mod externals; mod func; mod fuzzing; -mod gc; mod globals; mod iloop; mod import_calling_export; @@ -19,3 +18,7 @@ mod table; mod traps; mod use_after_drop; mod wast; + +// Cranelift only supports reference types on x64. +#[cfg(target_arch = "x86_64")] +mod gc;