Update naga to 0.12.0@git:409239c0e2313bfd0dc4fd64f8c3021185ccef1b (#3935)

This commit is contained in:
Nicolas Silva 2023-07-18 13:25:48 +02:00 committed by GitHub
parent e4eb5b38ec
commit 80d19d890c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 24 additions and 16 deletions

2
Cargo.lock generated
View File

@ -1523,7 +1523,7 @@ dependencies = [
[[package]]
name = "naga"
version = "0.12.0"
source = "git+https://github.com/gfx-rs/naga?rev=76003dc0035d53a474d366dcdf49d2e4d12e921f#76003dc0035d53a474d366dcdf49d2e4d12e921f"
source = "git+https://github.com/gfx-rs/naga?rev=409239c0e2313bfd0dc4fd64f8c3021185ccef1b#409239c0e2313bfd0dc4fd64f8c3021185ccef1b"
dependencies = [
"bit-set",
"bitflags 2.3.2",

View File

@ -51,7 +51,7 @@ version = "0.16"
[workspace.dependencies.naga]
git = "https://github.com/gfx-rs/naga"
rev = "76003dc0035d53a474d366dcdf49d2e4d12e921f"
rev = "409239c0e2313bfd0dc4fd64f8c3021185ccef1b"
version = "0.12.0"
[workspace.dependencies]

View File

@ -72,7 +72,7 @@ thiserror = "1"
[dependencies.naga]
git = "https://github.com/gfx-rs/naga"
rev = "76003dc0035d53a474d366dcdf49d2e4d12e921f"
rev = "409239c0e2313bfd0dc4fd64f8c3021185ccef1b"
version = "0.12.0"
features = ["clone", "span", "validate"]

View File

@ -120,14 +120,14 @@ android_system_properties = "0.1.1"
[dependencies.naga]
git = "https://github.com/gfx-rs/naga"
rev = "76003dc0035d53a474d366dcdf49d2e4d12e921f"
rev = "409239c0e2313bfd0dc4fd64f8c3021185ccef1b"
version = "0.12.0"
features = ["clone"]
# DEV dependencies
[dev-dependencies.naga]
git = "https://github.com/gfx-rs/naga"
rev = "76003dc0035d53a474d366dcdf49d2e4d12e921f"
rev = "409239c0e2313bfd0dc4fd64f8c3021185ccef1b"
version = "0.12.0"
features = ["wgsl-in"]

View File

@ -221,7 +221,8 @@ impl super::Device {
let policies = naga::proc::BoundsCheckPolicies {
index: BoundsCheckPolicy::Unchecked,
buffer: BoundsCheckPolicy::Unchecked,
image: image_check,
image_load: image_check,
image_store: image_check,
binding_array: BoundsCheckPolicy::Unchecked,
};

View File

@ -99,7 +99,8 @@ impl super::Device {
bounds_check_policies: naga::proc::BoundsCheckPolicies {
index: bounds_check_policy,
buffer: bounds_check_policy,
image: bounds_check_policy,
image_load: bounds_check_policy,
image_store: bounds_check_policy,
// TODO: support bounds checks on binding arrays
binding_array: naga::proc::BoundsCheckPolicy::Unchecked,
},
@ -107,7 +108,7 @@ impl super::Device {
};
let pipeline_options = naga::back::msl::PipelineOptions {
allow_point_size: match primitive_class {
allow_and_force_point_size: match primitive_class {
metal::MTLPrimitiveTopologyClass::Point => true,
_ => false,
},

View File

@ -1201,6 +1201,12 @@ impl super::Adapter {
None
};
let image_checks = if self.private_caps.robust_image_access {
naga::proc::BoundsCheckPolicy::Unchecked
} else {
naga::proc::BoundsCheckPolicy::Restrict
};
let naga_options = {
use naga::back::spv;
@ -1262,11 +1268,8 @@ impl super::Adapter {
} else {
naga::proc::BoundsCheckPolicy::Restrict
},
image: if self.private_caps.robust_image_access {
naga::proc::BoundsCheckPolicy::Unchecked
} else {
naga::proc::BoundsCheckPolicy::Restrict
},
image_load: image_checks,
image_store: image_checks,
// TODO: support bounds checks on binding arrays
binding_array: naga::proc::BoundsCheckPolicy::Unchecked,
},
@ -1280,6 +1283,7 @@ impl super::Adapter {
},
// We need to build this separately for each invocation, so just default it out here
binding_map: BTreeMap::default(),
debug_info: None,
}
};

View File

@ -731,7 +731,8 @@ impl super::Device {
temp_options.bounds_check_policies = naga::proc::BoundsCheckPolicies {
index: naga::proc::BoundsCheckPolicy::Unchecked,
buffer: naga::proc::BoundsCheckPolicy::Unchecked,
image: naga::proc::BoundsCheckPolicy::Unchecked,
image_load: naga::proc::BoundsCheckPolicy::Unchecked,
image_store: naga::proc::BoundsCheckPolicy::Unchecked,
binding_array: naga::proc::BoundsCheckPolicy::Unchecked,
};
}
@ -1525,7 +1526,8 @@ impl crate::Device<super::Api> for super::Device {
naga_options.bounds_check_policies = naga::proc::BoundsCheckPolicies {
index: naga::proc::BoundsCheckPolicy::Unchecked,
buffer: naga::proc::BoundsCheckPolicy::Unchecked,
image: naga::proc::BoundsCheckPolicy::Unchecked,
image_load: naga::proc::BoundsCheckPolicy::Unchecked,
image_store: naga::proc::BoundsCheckPolicy::Unchecked,
binding_array: naga::proc::BoundsCheckPolicy::Unchecked,
};
}

View File

@ -283,7 +283,7 @@ pub struct Device {
desc_allocator:
Mutex<gpu_descriptor::DescriptorAllocator<vk::DescriptorPool, vk::DescriptorSet>>,
valid_ash_memory_types: u32,
naga_options: naga::back::spv::Options,
naga_options: naga::back::spv::Options<'static>,
#[cfg(feature = "renderdoc")]
render_doc: crate::auxil::renderdoc::RenderDoc,
}