// File: /workspace/github_c_makefile_star2_O0/georgeweigt[P]sassafras/sassafras.c
// Function: proc_anova_parse_means_stmt
void
proc_anova_parse_means_stmt(void)
{
	int i, lsd, n, ttest, x;
	char *s;

	alpha = 0.05;
	ttest = 0;
	lsd = 0;
	n = 0;

	scan();

	for (;;) {

		if (token == ';' || token == '/')
			break;

		proc_anova_parse_means_item();

		for (i = 0; i < dataset->nvar; i++) {
			s = dataset->spec[i].name;
			if (strcmp(s, bigbuf) == 0)
				break;
		}

		if (i == dataset->nvar)
			stop("Not in data set");

		if (dataset->spec[i].ltab == NULL)
			stop("Not categorical");

		if (n == MAXITEM)
			stop("Buffer overrun");

		item[n++] = i;
	}

	// parse options

	if (token == '/') {
		scan();
		while (token != ';') {
			keyword();
			switch (token) {
			case KALPHA:
				parse_alpha_option();
				break;
			case KT:
			case KLSD:
				lsd = 1;
				break;
			case KTTEST:
				ttest = 1;
				break;
			default:
				expected("statement option");
				break;
			}
			scan();
		}
	}

	scan(); // eat end of line

	for (i = 0; i < n; i++) {
		x = item[i];
		proc_anova_compute_means(x);
		proc_anova_print_means(x);
		if (lsd)
			proc_anova_print_lsd(x);
		if (ttest)
			proc_anova_print_ttest(x);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movsd 0x9878(%rip), %xmm0     # 0xf208
movsd %xmm0, 0x12530(%rip)    # 0x17ec8
movl $0x0, -0x10(%rbp)
movl $0x0, -0x8(%rbp)
movl $0x0, -0xc(%rbp)
callq 0x2d30
cmpl $0x3b, 0xdecb(%rip)     # 0x13884
je 0x59c4
cmpl $0x2f, 0xdec2(%rip)     # 0x13884
jne 0x59c9
jmp 0x5a9b
callq 0x5d30
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
movq 0x124d9(%rip), %rcx     # 0x17eb8
cmpl 0x10(%rcx), %eax
jge 0x5a25
movq 0x124cd(%rip), %rax     # 0x17eb8
addq $0x20, %rax
movslq -0x4(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movq (%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rdi
leaq 0x114a4(%rip), %rsi     # 0x16eb0
callq 0x2140
cmpl $0x0, %eax
jne 0x5a18
jmp 0x5a25
jmp 0x5a1a
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x59d5
movl -0x4(%rbp), %eax
movq 0x12489(%rip), %rcx     # 0x17eb8
cmpl 0x10(%rcx), %eax
jne 0x5a40
leaq 0x9b76(%rip), %rdi      # 0xf5b1
callq 0x2790
movq 0x12471(%rip), %rax     # 0x17eb8
addq $0x20, %rax
movslq -0x4(%rbp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
cmpq $0x0, 0x10(%rax)
jne 0x5a69
leaq 0x9b5d(%rip), %rdi      # 0xf5c1
callq 0x2790
cmpl $0x64, -0xc(%rbp)
jne 0x5a7b
leaq 0x9b5b(%rip), %rdi      # 0xf5d1
callq 0x2790
movl -0x4(%rbp), %edx
movl -0xc(%rbp), %eax
movl %eax, %ecx
addl $0x1, %ecx
movl %ecx, -0xc(%rbp)
movslq %eax, %rcx
leaq 0x1294d(%rip), %rax     # 0x183e0
movl %edx, (%rax,%rcx,4)
jmp 0x59b2
cmpl $0x2f, 0xdde2(%rip)     # 0x13884
jne 0x5b1b
callq 0x2d30
cmpl $0x3b, 0xddd4(%rip)     # 0x13884
je 0x5b19
callq 0x25e0
movl 0xddc7(%rip), %eax      # 0x13884
movl %eax, -0x24(%rbp)
subl $0x12d, %eax            # imm = 0x12D
je 0x5aed
jmp 0x5ac9
movl -0x24(%rbp), %eax
subl $0x13d, %eax            # imm = 0x13D
je 0x5af4
jmp 0x5ad5
movl -0x24(%rbp), %eax
subl $0x150, %eax            # imm = 0x150
je 0x5af4
jmp 0x5ae1
movl -0x24(%rbp), %eax
subl $0x155, %eax            # imm = 0x155
je 0x5afd
jmp 0x5b06
callq 0x4f30
jmp 0x5b12
movl $0x1, -0x8(%rbp)
jmp 0x5b12
movl $0x1, -0x10(%rbp)
jmp 0x5b12
leaq 0x9ad3(%rip), %rdi      # 0xf5e0
callq 0x2670
callq 0x2d30
jmp 0x5aa9
jmp 0x5b1b
callq 0x2d30
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
cmpl -0xc(%rbp), %eax
jge 0x5b79
movslq -0x4(%rbp), %rcx
leaq 0x128a6(%rip), %rax     # 0x183e0
movl (%rax,%rcx,4), %eax
movl %eax, -0x14(%rbp)
movl -0x14(%rbp), %edi
callq 0x5e30
movl -0x14(%rbp), %edi
callq 0x6050
cmpl $0x0, -0x8(%rbp)
je 0x5b5e
movl -0x14(%rbp), %edi
callq 0x67e0
cmpl $0x0, -0x10(%rbp)
je 0x5b6c
movl -0x14(%rbp), %edi
callq 0x6e80
jmp 0x5b6e
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x5b27
addq $0x30, %rsp
popq %rbp
retq
nop