Giovanni Mascellani (@giomasce) commented about libs/vkd3d-shader/d3d_asm.c:
case VKD3DSIH_DCL_CONSTANT_BUFFER: vkd3d_string_buffer_printf(buffer, " "); shader_dump_register(compiler, &ins->declaration.cb.src.reg, true);
if (shader_ver_ge(&compiler->shader_version, 5, 1))
if (shader_ver_ge(&compiler->shader_version, 6, 0)) shader_print_subscript(compiler, ins->declaration.cb.size, NULL);
else if (shader_ver_ge(&compiler->shader_version, 5, 1))
shader_print_subscript(compiler, ins->declaration.cb.size / VKD3D_VEC4_SIZE / sizeof(float), NULL);
I don't oppose to this specific change, but it feels like another sign of the fact that using VSIR both for disassembling and as an internal IR is going to be more and more complicated. In particular, with this change if you look at a `dcl_constant_buffer` instruction you don't know what's the actual size unless you know which SM you're using, which I don't find a very desirable property.