On 03/15/2016 05:53 AM, Matteo Bruni wrote:
- {sizeof(float), 4, PRES_VT_FLOAT } /* PRES_REGTAB_REG */
I think I had tested this in the past and it turned out temporaries are stored as doubles. I'll see if I can find something.
Oh, this looks very likely. I will check it somehow.
I feel like I might have already asked this, sorry if that's the case: do you really need this field? At least for what I can see at the moment you can do without since it's used only in d3dx_create_param_eval(), which is where you set the field, and in d3dx_param_eval_set_shader_constants(), where you don't really need it.
Yes, I don't need it actually. I will get rid of it.
- if (ninp_args != pres_op_info[i].ninp_args)
- {
FIXME("Actual input args %u, expected %u, instruction %s.\n", ninp_args,
pres_op_info[i].ninp_args, pres_op_info[i].mnem);
return NULL;
- }
- ins->ninp_args = ninp_args;
It shouldn't be necessary to store the number of arguments in the instruction structure at the moment, although maybe there is some variable-arguments opcode?
None as far as I know so far, so currently no case when it is really needed. I will remove it.