// File: /workspace/github_c_makefile_star2_O0/Oric4ever[P]lcc65/6502/build/../src/main.c
// Function: bbvars
static void bbvars(yylink) Symbol yylink; {
	int i, j, n = npoints;
	Value v;
	struct map **mp;
	Symbol coords, files, *p;

	if (!YYcounts && !yylink)
		return;
	if (YYcounts) {
		if (n <= 0)
			n = 1;
		defglobal(YYcounts, BSS);
		space(n*YYcounts->type->type->size);
	}
	files = genident(STATIC, array(ptr(chartype), 1, 0), GLOBAL);
	defglobal(files, LIT);
	for (p = (Symbol *)list_to_a(filelist, 0); *p; p++)
		defpointer((*p)->u.c.loc);
	defpointer(0);
	coords = genident(STATIC, array(unsignedtype, n, 0), GLOBAL);
	defglobal(coords, LIT);
	for (i = n, mp = (struct map **)list_to_a(maplist, 0); *mp; i -= (*mp)->size, mp++)
		for (j = 0; j < (*mp)->size; j++)
			defconst(U, (v.u = (*mp)->u[j].coord, v));
	if (i > 0)
		space(i*coords->type->type->size);
	defpointer(0);
	defglobal(yylink, DATA);
	defpointer(0);
	defconst(U, (v.u = n, v));
	defpointer(YYcounts);
	defpointer(coords);
	defpointer(files);
	defpointer(funclist);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x8(%rbp)
movl 0x24b66(%rip), %eax     # 0x3dc48
movl %eax, -0x14(%rbp)
cmpq $0x0, 0x24b23(%rip)     # 0x3dc10
jne 0x190fb
cmpq $0x0, -0x8(%rbp)
jne 0x190fb
jmp 0x1930e
cmpq $0x0, 0x24b0d(%rip)     # 0x3dc10
je 0x1913e
cmpl $0x0, -0x14(%rbp)
jg 0x19112
movl $0x1, -0x14(%rbp)
movq 0x24af7(%rip), %rdi     # 0x3dc10
movl $0x2, %esi
callq 0x129d0
movl -0x14(%rbp), %edi
movq 0x24ae3(%rip), %rax     # 0x3dc10
movq 0x20(%rax), %rax
movq 0x10(%rax), %rax
imull 0x8(%rax), %edi
callq 0x2a9c0
leaq 0x2b09b(%rip), %rax     # 0x441e0
movq (%rax), %rdi
callq 0x27120
movq %rax, %rdi
movl $0x1, %esi
xorl %edx, %edx
callq 0x27160
movq %rax, %rsi
movl $0x51, %edi
movl $0x3, %edx
callq 0x24b00
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rdi
movl $0x4, %esi
callq 0x129d0
movq 0x24ae9(%rip), %rdi     # 0x3dc70
xorl %eax, %eax
movl %eax, %esi
callq 0x23670
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rax
cmpq $0x0, (%rax)
je 0x191bc
movq -0x40(%rbp), %rax
movq (%rax), %rax
movq 0x50(%rax), %rdi
callq 0x12a70
movq -0x40(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x40(%rbp)
jmp 0x19194
xorl %eax, %eax
movl %eax, %edi
callq 0x12a70
leaq 0x2b06c(%rip), %rax     # 0x44238
movq (%rax), %rdi
movl -0x14(%rbp), %esi
xorl %edx, %edx
callq 0x27160
movq %rax, %rsi
movl $0x51, %edi
movl $0x3, %edx
callq 0x24b00
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
movl $0x4, %esi
callq 0x129d0
movl -0x14(%rbp), %eax
movl %eax, -0xc(%rbp)
movq 0x24a0e(%rip), %rdi     # 0x3dc18
xorl %eax, %eax
movl %eax, %esi
callq 0x23670
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, (%rax)
je 0x1928a
movl $0x0, -0x10(%rbp)
movl -0x10(%rbp), %eax
movq -0x28(%rbp), %rcx
movq (%rcx), %rcx
cmpl (%rcx), %eax
jge 0x19269
movq -0x28(%rbp), %rax
movq (%rax), %rax
movslq -0x10(%rbp), %rcx
movl 0x4(%rax,%rcx,4), %eax
movl %eax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x48(%rbp), %rsi
movl $0x6, %edi
callq 0x2a830
movl -0x10(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x10(%rbp)
jmp 0x19228
jmp 0x1926b
movq -0x28(%rbp), %rax
movq (%rax), %rax
movl (%rax), %ecx
movl -0xc(%rbp), %eax
subl %ecx, %eax
movl %eax, -0xc(%rbp)
movq -0x28(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0x19217
cmpl $0x0, -0xc(%rbp)
jle 0x192a8
movl -0xc(%rbp), %edi
movq -0x30(%rbp), %rax
movq 0x20(%rax), %rax
movq 0x10(%rax), %rax
imull 0x8(%rax), %edi
callq 0x2a9c0
xorl %eax, %eax
movl %eax, %edi
callq 0x12a70
movq -0x8(%rbp), %rdi
movl $0x3, %esi
callq 0x129d0
xorl %eax, %eax
movl %eax, %edi
callq 0x12a70
movl -0x14(%rbp), %eax
movl %eax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x50(%rbp), %rsi
movl $0x6, %edi
callq 0x2a830
movq 0x24925(%rip), %rdi     # 0x3dc10
callq 0x12a70
movq -0x30(%rbp), %rdi
callq 0x12a70
movq -0x38(%rbp), %rdi
callq 0x12a70
movq 0x2495f(%rip), %rdi     # 0x3dc68
callq 0x12a70
addq $0x50, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)