Skip to content

zink: Switch to register intrinsics

Faith Ekstrand requested to merge gfxstrand/mesa:zink/nir-reg into main

What does this MR do and why?

SPIR-V does not have anything like nir_register natively, so we were already inserting loads/stores for register sources/destinations. That means it's easy to switch to register intrinsics, getting explicit load_reg/store_reg intrinsics in the NIR and translating those to the SPIR-V load/stores, dropping the handling for nir_register. There's no need to use any of the chasing helpers for coalescing the load/stores, like a hardware backend would. (In fact, the underlying Vulkan driver will probably turn this back into SSA.)

Merge request reports