Zebediah Figura (@zfigura) commented about libs/vkd3d-shader/hlsl.h:
struct hlsl_src *path; /* Single instruction node of data type uint used to represent the register offset (in register
* components), from the start of the variable, of the part referenced.
* components, within the pertaining regset), from the start of the variable, of the part
struct hlsl_src offset;* referenced. * The path is lowered to this single offset -- whose value may vary between SM1 and SM4 -- * before writing the bytecode. */
- enum hlsl_regset offset_regset;
It seems suspicious that we are storing this, since it can be purely calculated from the hlsl_deref (and also since it's kind of backend-specific).