Skip to content

ir3: Disable copy prop for immediate ldlw offsets

Brian Ho requested to merge brkho/mesa:copy-prop into master

Immediate offsets are currently collapsed for ldlw, but ldlw does behave correctly with immediate values. For example, ldlw.u32 r0.x, l[4], 1 actually means to use the value of regid 4 (r1.x) as the offset when we actually want it to use the imm value of 4 as the offset.

This commit disables copy prop for ldlw offsets so the same intrinsic gets compiled to:

mov.u32u32 r0.y, 0x00000004
ldlw.u32 r0.x, l[r0.y], 1

This is useful for debugging shaders. For example, while adding support for geometry shaders, I wanted to manually check that the stores from the vs were actually visible to the gs.

Merge request reports