// File: /workspace/github_c_makefile_star2_O1/georgeweigt[P]sassafras/sassafras.c
// Function: proc_reg_compute_mse
void
proc_reg_compute_mse(void)
{
	int i;
	double d;

	dfm = npar - 1;
	dfe = nrow - npar;
	dft = nrow - 1;

	ybar = 0;

	for (i = 0; i < nrow; i++)
		ybar += (Y[i] - ybar) / (i + 1);

	ssr = 0;
	sse = 0;
	sst = 0;

	for (i = 0; i < nrow; i++) {

		d = Yhat[i] - ybar;
		ssr += d * d;

		d = Y[i] - Yhat[i];
		sse += d * d;

		d = Y[i] - ybar;
		sst += d * d;
	}

	mse = sse / dfe;

	rootmse = sqrt(mse);

	msr = ssr / dfm;

	fval = msr / mse;

	pval = 1.0 - fdist(fval, dfm, dfe);

	rsquare = 1.0 - sse / sst;

	adjrsq = 1.0 - dft / dfe * sse / sst;

	cv = 100.0 * rootmse / ybar;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movl 0xa7a3(%rip), %ecx      # 0x14a48
leal -0x1(%rcx), %eax
cvtsi2sd %eax, %xmm0
movsd %xmm0, 0xb90c(%rip)     # 0x15bc0
movslq 0xb515(%rip), %rax      # 0x157d0
movl %eax, %edx
subl %ecx, %edx
leal -0x1(%rax), %ecx
cvtsi2sd %edx, %xmm1
xorps %xmm0, %xmm0
cvtsi2sd %ecx, %xmm0
movsd %xmm1, 0xa77b(%rip)     # 0x14a50
movsd %xmm0, 0xb8eb(%rip)     # 0x15bc8
movq $0x0, 0xa7c0(%rip) # 0x14aa8
xorpd %xmm0, %xmm0
testq %rax, %rax
jle 0xa322
movq 0xa7e8(%rip), %rcx      # 0x14ae0
xorl %edx, %edx
movsd (%rcx,%rdx,8), %xmm2
subsd %xmm0, %xmm2
incq %rdx
xorps %xmm3, %xmm3
cvtsi2sd %edx, %xmm3
divsd %xmm3, %xmm2
addsd %xmm2, %xmm0
movsd %xmm0, 0xa78b(%rip)     # 0x14aa8
cmpq %rdx, %rax
jne 0xa2fa
xorl %ecx, %ecx
movq %rcx, 0xa745(%rip)      # 0x14a70
movq %rcx, 0xa726(%rip)      # 0x14a58
movq %rcx, 0xb897(%rip)      # 0x15bd0
testl %eax, %eax
jle 0xa3b9
movsd 0xb88b(%rip), %xmm2     # 0x15bd0
movsd 0xa70b(%rip), %xmm3     # 0x14a58
movsd 0xa71b(%rip), %xmm4     # 0x14a70
movq 0xa78c(%rip), %rcx      # 0x14ae8
movq 0xa77d(%rip), %rdx      # 0x14ae0
xorl %esi, %esi
movsd (%rcx,%rsi,8), %xmm5
subsd %xmm0, %xmm5
mulsd %xmm5, %xmm5
addsd %xmm5, %xmm4
movsd %xmm4, 0xa6f2(%rip)     # 0x14a70
movsd (%rdx,%rsi,8), %xmm5
subsd (%rcx,%rsi,8), %xmm5
mulsd %xmm5, %xmm5
addsd %xmm5, %xmm3
movsd %xmm3, 0xa6c0(%rip)     # 0x14a58
movsd (%rdx,%rsi,8), %xmm5
subsd %xmm0, %xmm5
mulsd %xmm5, %xmm5
addsd %xmm5, %xmm2
movsd %xmm2, 0xb81f(%rip)     # 0x15bd0
incq %rsi
cmpq %rsi, %rax
jne 0xa365
movsd 0xa697(%rip), %xmm0     # 0x14a58
divsd %xmm1, %xmm0
movsd %xmm0, 0xa693(%rip)     # 0x14a60
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0xa3dd
sqrtsd %xmm0, %xmm0
jmp 0xa3e2
callq 0x2200
movsd %xmm0, 0xa67e(%rip)     # 0x14a68
movsd 0xa67e(%rip), %xmm0     # 0x14a70
movsd 0xb7c6(%rip), %xmm1     # 0x15bc0
divsd %xmm1, %xmm0
movsd %xmm0, 0xa672(%rip)     # 0x14a78
divsd 0xa652(%rip), %xmm0     # 0x14a60
movsd %xmm0, 0xa66a(%rip)     # 0x14a80
movsd 0xa632(%rip), %xmm2     # 0x14a50
callq 0x7339
movsd 0xecd(%rip), %xmm1      # 0xb2f8
movapd %xmm1, %xmm2
subsd %xmm0, %xmm2
movsd %xmm2, 0xa64d(%rip)     # 0x14a88
movsd 0xa615(%rip), %xmm0     # 0x14a58
movsd 0xb77d(%rip), %xmm2     # 0x15bc8
divsd 0xa5fd(%rip), %xmm2     # 0x14a50
movsd 0xb775(%rip), %xmm3     # 0x15bd0
mulsd %xmm0, %xmm2
divsd %xmm3, %xmm0
movapd %xmm1, %xmm4
subsd %xmm0, %xmm4
movsd %xmm4, 0xa625(%rip)     # 0x14a98
divsd %xmm3, %xmm2
subsd %xmm2, %xmm1
movsd 0xa5e5(%rip), %xmm0     # 0x14a68
mulsd 0xead(%rip), %xmm0      # 0xb338
movsd %xmm1, 0xa60d(%rip)     # 0x14aa0
divsd 0xa60d(%rip), %xmm0     # 0x14aa8
movsd %xmm0, 0xa60d(%rip)     # 0x14ab0
popq %rbp
retq