@@ -574,11 +574,23 @@ impl WasmtimeConfig {
574574 match self . compiler_strategy {
575575 CompilerStrategy :: CraneliftNative => { }
576576
577- // Winch doesn't support the same set of wasm proposal as Cranelift
578- // at this time, so if winch is selected be sure to disable wasm
579- // proposals in `Config` to ensure that Winch can compile the
580- // module that wasm-smith generates.
581577 CompilerStrategy :: Winch => {
578+ // Winch is not complete on non-x64 targets, so just abandon this test
579+ // case. We don't want to force Cranelift because we change what module
580+ // config features are enabled based on the compiler strategy, and we
581+ // don't want to make the same fuzz input DNA generate different test
582+ // cases on different targets.
583+ if cfg ! ( not( target_arch = "x86_64" ) ) {
584+ log:: warn!(
585+ "want to compile with Winch but host architecture does not support it"
586+ ) ;
587+ return Err ( arbitrary:: Error :: IncorrectFormat ) ;
588+ }
589+
590+ // Winch doesn't support the same set of wasm proposal as Cranelift
591+ // at this time, so if winch is selected be sure to disable wasm
592+ // proposals in `Config` to ensure that Winch can compile the
593+ // module that wasm-smith generates.
582594 config. simd_enabled = false ;
583595 config. relaxed_simd_enabled = false ;
584596 config. gc_enabled = false ;
0 commit comments