private AstNodeStm _vhtfm_x(int VectorSize)
{
var VecVD = VEC(VD, VType.VFloat, VectorSize);
var VecVT = VEC(VT, VType.VFloat, VectorSize);
var MatVS = MAT(VS, VType.VFloat, VectorSize);
return VecVD.SetVector(Index =>
_Aggregate(0f, VectorSize, (Aggregated, Index2) => Aggregated + MatVS[Index, Index2] * ((Index2 == VectorSize - 1) ? 1f : VecVT[Index2]))
, PC);
}