Skip to content

vkd3d-shader/dxil: Do not encode the offset twice for structured TGSM loads.

Currently structured TGSM loads are encoded to something like this:

ld_structured sr12 <s:float>, sr1 <s:uint>, l(0) <s:uint>, g0[sr1 <s:uint> + 0] <s:float>

Notice how the TGSM offset, expressed by sr1, is encoded twice in the instruction. In TPF there is no expectation of two indices in the resource source, so let's avoid producing it for DXIL as well. The same instruction will therefore become:

ld_structured sr12 <s:float>, sr1 <s:uint>, l(0) <s:uint>, g0 <s:float>

Merge request reports

Loading