public AstNodeStm vmmul()
{
int VectorSize = Instruction.ONE_TWO;
//var Dest = MAT(VD_NoPrefix);
//var Src = MAT(VS_NoPrefix);
//var Target = MAT(VT_NoPrefix);
var Dest = MAT_VD;
var Src = MAT_VS;
var Target = MAT_VT;
return Dest.SetMatrix((Column, Row) =>
{
var Adder = (AstNodeExpr)ast.Immediate(0f);
for (int n = 0; n < VectorSize; n++)
{
Adder += Target[Column, n] * Src[Row, n];
//Adder += Target[Column, n] * Src[Row, n];
//Adder += Target[Row, n] * Src[Column, n];
//Adder += Target[n, Column] * Src[n, Row];
}
return Adder;
}, PC);
}