@@ -2168,10 +2168,17 @@ enum vkd3d_result vkd3d_dxbc_binary_to_text(const struct vsir_program *program, void vkd3d_shader_trace(const struct vsir_program *program) { - const char *p, *q, *end; + struct vkd3d_shader_compile_info compile_info = {0}; + struct vkd3d_shader_compile_option options[1]; struct vkd3d_shader_code code; + const char *p, *q, *end; + + options[0].name = VKD3D_SHADER_COMPILE_OPTION_FORMATTING; + options[0].value = VKD3D_SHADER_COMPILE_OPTION_FORMATTING_NUMBERS; + compile_info.options = options; + compile_info.option_count = ARRAY_SIZE(options); - if (vkd3d_dxbc_binary_to_text(program, NULL, &code, VSIR_ASM_VSIR) != VKD3D_OK) + if (vkd3d_dxbc_binary_to_text(program, &compile_info, &code, VSIR_ASM_VSIR) != VKD3D_OK) return;
I suppose that works, but it seems tempting to suggest simply adding something like ```c if (dialect == VSIR_ASM_VSIR) formatting |= VKD3D_SHADER_COMPILE_OPTION_FORMATTING_NUMBERS; ``` to vkd3d_dxbc_binary_to_text().