diff --git a/crates/shaders/src/compile/mod.rs b/crates/shaders/src/compile/mod.rs index 0a2dc5a0f..fca4a504a 100644 --- a/crates/shaders/src/compile/mod.rs +++ b/crates/shaders/src/compile/mod.rs @@ -47,11 +47,8 @@ pub struct ShaderInfo { impl ShaderInfo { pub fn new(source: String, entry_point: &str) -> Result { let module = wgsl::parse_str(&source)?; - let module_info = naga::valid::Validator::new( - ValidationFlags::all() & !ValidationFlags::CONTROL_FLOW_UNIFORMITY, - Capabilities::all(), - ) - .validate(&module)?; + let module_info = naga::valid::Validator::new(ValidationFlags::all(), Capabilities::all()) + .validate(&module)?; let (entry_index, entry) = module .entry_points .iter() diff --git a/crates/shaders/src/compile/msl.rs b/crates/shaders/src/compile/msl.rs index e02486ecf..4c7d2ccdd 100644 --- a/crates/shaders/src/compile/msl.rs +++ b/crates/shaders/src/compile/msl.rs @@ -43,7 +43,7 @@ pub fn translate(shader: &ShaderInfo) -> Result { spirv_cross_compatibility: false, fake_missing_bindings: false, bounds_check_policies: naga::proc::BoundsCheckPolicies::default(), - zero_initialize_workgroup_memory: false, + zero_initialize_workgroup_memory: true, }; let (source, _) = naga_msl::write_string( &shader.module,