[PATCH] d3dx9: Dump preshader immediates table.
Matteo Bruni
mbruni at codeweavers.com
Mon Apr 3 10:26:16 CDT 2017
Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
---
dlls/d3dx9_36/preshader.c | 19 ++++++++++++++++---
1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/dlls/d3dx9_36/preshader.c b/dlls/d3dx9_36/preshader.c
index 9aedc99..b3481f8 100644
--- a/dlls/d3dx9_36/preshader.c
+++ b/dlls/d3dx9_36/preshader.c
@@ -599,7 +599,7 @@ static void dump_ins(struct d3dx_regstore *rs, const struct d3dx_pres_ins *ins)
{
unsigned int i;
- TRACE(" %s ", pres_op_info[ins->op].mnem);
+ TRACE("%s ", pres_op_info[ins->op].mnem);
dump_arg(rs, &ins->output, pres_op_info[ins->op].func_all_comps ? 1 : ins->component_count);
for (i = 0; i < pres_op_info[ins->op].input_count; ++i)
{
@@ -611,11 +611,24 @@ static void dump_ins(struct d3dx_regstore *rs, const struct d3dx_pres_ins *ins)
static void dump_preshader(struct d3dx_preshader *pres)
{
- unsigned int i;
+ unsigned int i, immediate_count = pres->regs.table_sizes[PRES_REGTAB_IMMED];
+ const double *immediates = pres->regs.tables[PRES_REGTAB_IMMED];
+ if (immediate_count)
+ TRACE("// Immediates:\n");
+ for (i = 0; i < immediate_count; ++i)
+ {
+ if (!(i % 4))
+ TRACE("// ");
+ TRACE("%.8e", immediates[i]);
+ if (i % 4 == 3)
+ TRACE("\n");
+ else
+ TRACE(", ");
+ }
TRACE("// Preshader registers:\n");
dump_registers(&pres->inputs);
- TRACE(" preshader\n");
+ TRACE("preshader\n");
for (i = 0; i < pres->ins_count; ++i)
dump_ins(&pres->regs, &pres->ins[i]);
}
--
2.10.2
More information about the wine-patches
mailing list