%define COVAR_STRIDE MAX_VARS_ALIGN*8
%define COVAR(x,y) [covarq + (x)*8 + (y)*COVAR_STRIDE]
-struc LLSModel
+struc LLSModel2
.covariance: resq MAX_VARS_ALIGN*MAX_VARS_ALIGN
.coeff: resq MAX_VARS*MAX_VARS
.variance: resq MAX_VARS
%define movdqa movaps
cglobal update_lls, 2,5,8, ctx, var, i, j, covar2
%define covarq ctxq
- mov id, [ctxq + LLSModel.indep_count]
+ mov id, [ctxq + LLSModel2.indep_count]
lea varq, [varq + iq*8]
neg iq
mov covar2q, covarq
INIT_YMM avx
cglobal update_lls, 3,6,8, ctx, var, count, i, j, count2
%define covarq ctxq
- mov countd, [ctxq + LLSModel.indep_count]
+ mov countd, [ctxq + LLSModel2.indep_count]
lea count2d, [countq-2]
xor id, id
.loopi:
%define coefsq ctxq
mov id, orderd
imul orderd, MAX_VARS
- lea coefsq, [ctxq + LLSModel.coeff + orderq*8]
+ lea coefsq, [ctxq + LLSModel2.coeff + orderq*8]
movsd m0, [varq]
movhpd m0, [varq + 8]
mulpd m0, [coefsq]