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 + * referenced. * The path is lowered to this single offset -- whose value may vary between SM1 and SM4 -- * before writing the bytecode. */ struct hlsl_src offset; + 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). -- https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/66#note_21402