// File: /workspace/github_c_makefile_star2_O0/Oric4ever[P]lcc65/6502/build/../src/profio.c
// Function: acaller
static void acaller(caller, file, x, y, count, callee) char *caller, *file; int x, y, count; struct func *callee; {
	struct caller *q;

	assert(callee);
	for (q = callee->callers; q && (caller != q->name
		|| file != q->file || x != q->x || y != q->y); q = q->link)
		;
	if (!q) {
		struct caller **r;
		q = (struct caller *)alloc(sizeof *q);
		q->name = caller;
		q->file = file;
		q->x = x;
		q->y = y;
		q->count = 0;
		for (r = &callee->callers; *r && (strcmp(q->name, (*r)->name) > 0
			|| strcmp(q->file, (*r)->file) > 0 || q->y > (*r)->y || q->y > (*r)->y); r = &(*r)->link)
			;
		q->link = *r;
		*r = q;
	}
	q->count += count;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movl %ecx, -0x18(%rbp)
movl %r8d, -0x1c(%rbp)
movq %r9, -0x28(%rbp)
cmpq $0x0, -0x28(%rbp)
je 0x1bd77
jmp 0x1bd96
leaq 0x15419(%rip), %rdi     # 0x31197
leaq 0x153dc(%rip), %rsi     # 0x31161
movl $0x42, %edx
leaq 0x1540d(%rip), %rcx     # 0x3119e
callq 0x30c0
movq -0x28(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x30(%rbp)
xorl %eax, %eax
cmpq $0x0, -0x30(%rbp)
movb %al, -0x39(%rbp)
je 0x1bdfb
movq -0x8(%rbp), %rcx
movq -0x30(%rbp), %rdx
movb $0x1, %al
cmpq 0x8(%rdx), %rcx
movb %al, -0x3a(%rbp)
jne 0x1bdf5
movq -0x10(%rbp), %rcx
movq -0x30(%rbp), %rdx
movb $0x1, %al
cmpq 0x10(%rdx), %rcx
movb %al, -0x3a(%rbp)
jne 0x1bdf5
movl -0x14(%rbp), %ecx
movq -0x30(%rbp), %rdx
movb $0x1, %al
cmpl 0x18(%rdx), %ecx
movb %al, -0x3a(%rbp)
jne 0x1bdf5
movl -0x18(%rbp), %eax
movq -0x30(%rbp), %rcx
cmpl 0x1c(%rcx), %eax
setne %al
movb %al, -0x3a(%rbp)
movb -0x3a(%rbp), %al
movb %al, -0x39(%rbp)
movb -0x39(%rbp), %al
testb $0x1, %al
jne 0x1be04
jmp 0x1be13
jmp 0x1be06
movq -0x30(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x30(%rbp)
jmp 0x1bda2
cmpq $0x0, -0x30(%rbp)
jne 0x1bfd0
leaq 0x1f81b(%rip), %rax     # 0x3b640
movq (%rax), %rax
movl $0x28, (%rax)
leaq 0x1f80b(%rip), %rax     # 0x3b640
movq (%rax), %rax
movq 0x8(%rax), %rax
leaq 0x1f7fd(%rip), %rcx     # 0x3b640
movq (%rcx), %rcx
movslq (%rcx), %rcx
addq %rcx, %rax
leaq 0x1f7ed(%rip), %rcx     # 0x3b640
movq (%rcx), %rcx
cmpq 0x10(%rcx), %rax
jb 0x1be7a
leaq 0x1f7dd(%rip), %rax     # 0x3b640
movq (%rax), %rax
movl (%rax), %edi
leaq 0x1f7d1(%rip), %rsi     # 0x3b640
callq 0x253d0
movq %rax, -0x48(%rbp)
jmp 0x1bec5
leaq 0x1f7bf(%rip), %rax     # 0x3b640
movq (%rax), %rax
movl (%rax), %edx
leaq 0x1f7b3(%rip), %rax     # 0x3b640
movq (%rax), %rax
movq 0x8(%rax), %rcx
movslq %edx, %rdx
addq %rdx, %rcx
movq %rcx, 0x8(%rax)
leaq 0x1f79b(%rip), %rax     # 0x3b640
movq (%rax), %rax
movq 0x8(%rax), %rax
leaq 0x1f78d(%rip), %rcx     # 0x3b640
movq (%rcx), %rcx
movslq (%rcx), %rdx
xorl %ecx, %ecx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, -0x48(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x8(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, 0x8(%rax)
movq -0x10(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, 0x10(%rax)
movl -0x14(%rbp), %ecx
movq -0x30(%rbp), %rax
movl %ecx, 0x18(%rax)
movl -0x18(%rbp), %ecx
movq -0x30(%rbp), %rax
movl %ecx, 0x1c(%rax)
movq -0x30(%rbp), %rax
movl $0x0, 0x20(%rax)
movq -0x28(%rbp), %rax
addq $0x20, %rax
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rcx
xorl %eax, %eax
cmpq $0x0, (%rcx)
movb %al, -0x49(%rbp)
je 0x1bf9c
movq -0x30(%rbp), %rax
movq 0x8(%rax), %rdi
movq -0x38(%rbp), %rax
movq (%rax), %rax
movq 0x8(%rax), %rsi
callq 0x30f0
movl %eax, %ecx
movb $0x1, %al
cmpl $0x0, %ecx
movb %al, -0x4a(%rbp)
jg 0x1bf96
movq -0x30(%rbp), %rax
movq 0x10(%rax), %rdi
movq -0x38(%rbp), %rax
movq (%rax), %rax
movq 0x10(%rax), %rsi
callq 0x30f0
movl %eax, %ecx
movb $0x1, %al
cmpl $0x0, %ecx
movb %al, -0x4a(%rbp)
jg 0x1bf96
movq -0x30(%rbp), %rax
movl 0x1c(%rax), %ecx
movq -0x38(%rbp), %rax
movq (%rax), %rdx
movb $0x1, %al
cmpl 0x1c(%rdx), %ecx
movb %al, -0x4a(%rbp)
jg 0x1bf96
movq -0x30(%rbp), %rax
movl 0x1c(%rax), %eax
movq -0x38(%rbp), %rcx
movq (%rcx), %rcx
cmpl 0x1c(%rcx), %eax
setg %al
movb %al, -0x4a(%rbp)
movb -0x4a(%rbp), %al
movb %al, -0x49(%rbp)
movb -0x49(%rbp), %al
testb $0x1, %al
jne 0x1bfa5
jmp 0x1bfb7
jmp 0x1bfa7
movq -0x38(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x38(%rbp)
jmp 0x1bf10
movq -0x38(%rbp), %rax
movq (%rax), %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movq -0x30(%rbp), %rcx
movq -0x38(%rbp), %rax
movq %rcx, (%rax)
movl -0x1c(%rbp), %ecx
movq -0x30(%rbp), %rax
addl 0x20(%rax), %ecx
movl %ecx, 0x20(%rax)
addq $0x50, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)