Skip to content

Commit 0aacfea

Browse files
committed
fix(hal): adjust the conditions when F16_IN_F32 is available
1 parent 03513e8 commit 0aacfea

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

wgpu-hal/src/gles/adapter.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -384,7 +384,8 @@ impl super::Adapter {
384384
let mut downlevel_flags = wgt::DownlevelFlags::empty()
385385
| wgt::DownlevelFlags::NON_POWER_OF_TWO_MIPMAPPED_TEXTURES
386386
| wgt::DownlevelFlags::CUBE_ARRAY_TEXTURES
387-
| wgt::DownlevelFlags::COMPARISON_SAMPLERS;
387+
| wgt::DownlevelFlags::COMPARISON_SAMPLERS
388+
| wgt::DownlevelFlags::SHADER_F16_IN_F32;
388389
downlevel_flags.set(wgt::DownlevelFlags::COMPUTE_SHADERS, supports_compute);
389390
downlevel_flags.set(
390391
wgt::DownlevelFlags::FRAGMENT_WRITABLE_STORAGE,

wgpu-hal/src/vulkan/adapter.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -575,7 +575,8 @@ impl PhysicalDeviceFeatures {
575575
| Df::INDIRECT_EXECUTION
576576
| Df::VIEW_FORMATS
577577
| Df::UNRESTRICTED_EXTERNAL_TEXTURE_COPIES
578-
| Df::NONBLOCKING_QUERY_RESOLVE;
578+
| Df::NONBLOCKING_QUERY_RESOLVE
579+
| Df::SHADER_F16_IN_F32;
579580

580581
dl_flags.set(
581582
Df::SURFACE_VIEW_FORMATS,
@@ -1693,9 +1694,9 @@ impl super::Instance {
16931694
);
16941695
};
16951696

1696-
if info.driver_info.contains("Mesa ") {
1697+
if info.driver == "llvmpipe" {
16971698
// The `F16_IN_F32` instructions do not normally require native `F16` support, but on
1698-
// Mesa, they do.
1699+
// llvmpipe, they do.
16991700
downlevel_flags.set(
17001701
wgt::DownlevelFlags::SHADER_F16_IN_F32,
17011702
available_features.contains(wgt::Features::SHADER_F16),

0 commit comments

Comments
 (0)