Skip to content

anv/radv: 'GetInstanceProcAddr' entrypoint also don't need a valid instance

Since vk_icdGetInstanceProcAddr() is wired through vkGetInstanceProcAddr() in both drivers, we need a way of resolving 'GetInstanceProcAddr' entrypoint prior to having a valid instance, because the spec forbids vkGetInstanceProcAddr() to resolve itself without a valid instance.

Applications might rely on this behavior since it used to work before vk_icdGetInstanceProcAddr() became an alias of vkGetInstanceProcAddr(). Also, it is (arguably) more familiar to developers coming from OpenGL world.

Interesting that everybody out there seem to be using vk_icdGetInstanceProcAddr() directly to resolve all other symbols, including vulkan loader.

Issue first detected for turnip and fixed at !4257 (merged).

Edited by Eduardo Lima Mitev

Merge request reports