radv: enable advertising of VK_KHR_pipeline_library under llvm

KHR_pipeline_library is a base extension whose semantics can only
be exercised by extensions: EXT_graphics_pipeline_library
and KHR_ray_tracing_pipeline. Both remain gated under LLVM,
so advertising the KHR base extension is inert for conformant apps.

The reason for the change is a hard requirement for KHR_pipeline_library
in DXVK 2.7+. DX games under Proton, which uses DXVK, fail adapter
creation if this extension is absent. DXVK supports scenario when
KHR_pipeline_library is available but two dependent extensions aren't.

The !use_llvm condition originated in f1095260a4 when
KHR_pipeline_library was first wired up for ray tracing only. It was
touched also in 045c96d896 when EXT_graphics_pipeline_library also took
it as a dependency.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41134>
This commit is contained in:
Andrzej Datczuk 2026-04-23 16:58:51 +02:00 committed by Marge Bot
parent 0422165d9a
commit d476c96bad

View file

@ -681,7 +681,7 @@ radv_physical_device_get_supported_extensions(const struct radv_physical_device
.KHR_performance_query = radv_perf_query_supported(pdev),
.KHR_pipeline_binary = true,
.KHR_pipeline_executable_properties = true,
.KHR_pipeline_library = !pdev->use_llvm,
.KHR_pipeline_library = true,
#ifdef RADV_USE_WSI_PLATFORM
.KHR_present_id = true,
.KHR_present_id2 = true,