Approving. However, we still may want a better criteria for a variable begin used that `var->last_read`, probably something regset-wise.
This compiles in native (ps_5_0), yet we would be detecting overlaps:
```hlsl struct { Texture2D tex; sampler sam; } a : register(s0);
sampler sam_alone : register(s0);
float4 main() : sv_target { return a.tex.Sample(sam_alone, float2(0, 0)); } ```