v3dv: expose VK_KHR_shader_float_controls
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16424>
This commit is contained in:

committed by
Marge Bot

parent
187d3df52c
commit
e981ed21e3
@@ -457,7 +457,7 @@ Vulkan 1.2 -- all DONE: anv, vn
|
|||||||
VK_KHR_separate_depth_stencil_layouts DONE (anv, lvp, radv, vn, v3dv, tu)
|
VK_KHR_separate_depth_stencil_layouts DONE (anv, lvp, radv, vn, v3dv, tu)
|
||||||
VK_KHR_shader_atomic_int64 DONE (anv/gen9+, lvp, radv, vn)
|
VK_KHR_shader_atomic_int64 DONE (anv/gen9+, lvp, radv, vn)
|
||||||
VK_KHR_shader_float16_int8 DONE (anv/gen8+, lvp, radv, tu, vn)
|
VK_KHR_shader_float16_int8 DONE (anv/gen8+, lvp, radv, tu, vn)
|
||||||
VK_KHR_shader_float_controls DONE (anv/gen8+, lvp, radv, tu, vn)
|
VK_KHR_shader_float_controls DONE (anv/gen8+, lvp, radv, tu, v3dv, vn)
|
||||||
VK_KHR_shader_subgroup_extended_types DONE (anv/gen8+, lvp, radv, tu, vn)
|
VK_KHR_shader_subgroup_extended_types DONE (anv/gen8+, lvp, radv, tu, vn)
|
||||||
VK_KHR_spirv_1_4 DONE (anv, lvp, radv, tu, vn)
|
VK_KHR_spirv_1_4 DONE (anv, lvp, radv, tu, vn)
|
||||||
VK_KHR_timeline_semaphore DONE (anv, lvp, radv, tu, v3dv, vn)
|
VK_KHR_timeline_semaphore DONE (anv, lvp, radv, tu, v3dv, vn)
|
||||||
|
@@ -139,6 +139,7 @@ get_device_extensions(const struct v3dv_physical_device *device,
|
|||||||
.KHR_multiview = true,
|
.KHR_multiview = true,
|
||||||
.KHR_pipeline_executable_properties = true,
|
.KHR_pipeline_executable_properties = true,
|
||||||
.KHR_separate_depth_stencil_layouts = true,
|
.KHR_separate_depth_stencil_layouts = true,
|
||||||
|
.KHR_shader_float_controls = true,
|
||||||
.KHR_shader_non_semantic_info = true,
|
.KHR_shader_non_semantic_info = true,
|
||||||
.KHR_sampler_mirror_clamp_to_edge = true,
|
.KHR_sampler_mirror_clamp_to_edge = true,
|
||||||
.KHR_storage_buffer_storage_class = true,
|
.KHR_storage_buffer_storage_class = true,
|
||||||
@@ -1557,6 +1558,24 @@ v3dv_GetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice,
|
|||||||
.independentResolveNone = false,
|
.independentResolveNone = false,
|
||||||
.independentResolve = false,
|
.independentResolve = false,
|
||||||
.maxTimelineSemaphoreValueDifference = UINT64_MAX,
|
.maxTimelineSemaphoreValueDifference = UINT64_MAX,
|
||||||
|
|
||||||
|
.denormBehaviorIndependence = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL,
|
||||||
|
.roundingModeIndependence = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL,
|
||||||
|
.shaderSignedZeroInfNanPreserveFloat16 = true,
|
||||||
|
.shaderSignedZeroInfNanPreserveFloat32 = true,
|
||||||
|
.shaderSignedZeroInfNanPreserveFloat64 = false,
|
||||||
|
.shaderDenormPreserveFloat16 = true,
|
||||||
|
.shaderDenormPreserveFloat32 = true,
|
||||||
|
.shaderDenormPreserveFloat64 = false,
|
||||||
|
.shaderDenormFlushToZeroFloat16 = false,
|
||||||
|
.shaderDenormFlushToZeroFloat32 = false,
|
||||||
|
.shaderDenormFlushToZeroFloat64 = false,
|
||||||
|
.shaderRoundingModeRTEFloat16 = true,
|
||||||
|
.shaderRoundingModeRTEFloat32 = true,
|
||||||
|
.shaderRoundingModeRTEFloat64 = false,
|
||||||
|
.shaderRoundingModeRTZFloat16 = false,
|
||||||
|
.shaderRoundingModeRTZFloat32 = false,
|
||||||
|
.shaderRoundingModeRTZFloat64 = false,
|
||||||
};
|
};
|
||||||
memset(vk12.driverName, 0, VK_MAX_DRIVER_NAME_SIZE_KHR);
|
memset(vk12.driverName, 0, VK_MAX_DRIVER_NAME_SIZE_KHR);
|
||||||
snprintf(vk12.driverName, VK_MAX_DRIVER_NAME_SIZE_KHR, "V3DV Mesa");
|
snprintf(vk12.driverName, VK_MAX_DRIVER_NAME_SIZE_KHR, "V3DV Mesa");
|
||||||
|
@@ -185,6 +185,7 @@ v3dv_DestroyPipeline(VkDevice _device,
|
|||||||
static const struct spirv_to_nir_options default_spirv_options = {
|
static const struct spirv_to_nir_options default_spirv_options = {
|
||||||
.caps = {
|
.caps = {
|
||||||
.device_group = true,
|
.device_group = true,
|
||||||
|
.float_controls = true,
|
||||||
.multiview = true,
|
.multiview = true,
|
||||||
.storage_8bit = true,
|
.storage_8bit = true,
|
||||||
.storage_16bit = true,
|
.storage_16bit = true,
|
||||||
|
Reference in New Issue
Block a user