Skip to content

nir: rework and fix rotate lowering

Karol Herbst requested to merge karolherbst/mesa:fix/mr/25660 into main

No driver supports urol/uror on all bit sizes. Intel gen11+ only for 16 and 32 bit, Nvidia GV100+ only for 32 bit.

Also turn the lower into a has option as only two drivers actually support uror and urol.

Fixes crashes with CL integer_rotate on iris and nouveau since we emit urol for rotate.

Fixes: fe0965af ("spirv: Don't use libclc for rotate")

Note: this might also allow more drivers to implement urol and uror now that it's not a all or nothing thing.

Edited by Karol Herbst

Merge request reports