// File: /workspace/github_c_makefile_star2_O0/darwin-on-arm[P]darwin-sdk/developer_cmds/ctags/print.c
// Function: ct_getline
void
ct_getline()
{
	long	saveftell;
	int	c;
	int	cnt;
	char	*cp;

	saveftell = ftell(inf);
	(void)fseek(inf, lineftell, SEEK_SET);
	if (xflag)
		for (cp = lbuf; GETC(!=, '\n'); *cp++ = c)
			continue;
	/*
	 * do all processing here, so we don't step through the
	 * line more than once; means you don't call this routine
	 * unless you're sure you've got a keeper.
	 */
	else for (cnt = 0, cp = lbuf; GETC(!=, EOF) && cnt < ENDLINE; ++cnt) {
		if (c == '\\') {		/* backslashes */
			if (cnt > ENDLINE - 2)
				break;
			*cp++ = '\\'; *cp++ = '\\';
			++cnt;
		}
		else if (c == (int)searchar) {	/* search character */
			if (cnt > ENDLINE - 2)
				break;
			*cp++ = '\\'; *cp++ = c;
			++cnt;
		}
		else if (c == '\n') {	/* end of keep */
			*cp++ = '$';		/* can find whole line */
			break;
		}
		else
			*cp++ = c;
	}
	*cp = EOS;
	(void)fseek(inf, saveftell, SEEK_SET);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
leaq 0x3111(%rip), %rax      # 0x6140
movq (%rax), %rdi
callq 0x1110
movq %rax, -0x8(%rbp)
leaq 0x30fe(%rip), %rax      # 0x6140
movq (%rax), %rdi
leaq 0x3e24(%rip), %rax      # 0x6e70
movq (%rax), %rsi
xorl %edx, %edx
callq 0x1150
leaq 0x30df(%rip), %rax      # 0x613c
cmpl $0x0, (%rax)
je 0x30a3
leaq 0x3607(%rip), %rax      # 0x6670
movq %rax, -0x18(%rbp)
leaq 0x30cc(%rip), %rax      # 0x6140
movq (%rax), %rdi
callq 0x11b0
movl %eax, -0xc(%rbp)
cmpl $0xa, %eax
je 0x309e
jmp 0x3086
movl -0xc(%rbp), %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x18(%rbp)
movb %cl, (%rax)
jmp 0x306d
jmp 0x31be
movl $0x0, -0x10(%rbp)
leaq 0x35bf(%rip), %rax      # 0x6670
movq %rax, -0x18(%rbp)
leaq 0x3084(%rip), %rax      # 0x6140
movq (%rax), %rdi
callq 0x11b0
movl %eax, %ecx
movl %ecx, -0xc(%rbp)
xorl %eax, %eax
cmpl $-0x1, %ecx
movb %al, -0x19(%rbp)
je 0x30dd
cmpl $0x32, -0x10(%rbp)
setl %al
movb %al, -0x19(%rbp)
movb -0x19(%rbp), %al
testb $0x1, %al
jne 0x30e9
jmp 0x31bc
cmpl $0x5c, -0xc(%rbp)
jne 0x312c
cmpl $0x30, -0x10(%rbp)
jle 0x30fa
jmp 0x31bc
movq -0x18(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x18(%rbp)
movb $0x5c, (%rax)
movq -0x18(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x18(%rbp)
movb $0x5c, (%rax)
movl -0x10(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x10(%rbp)
jmp 0x31ac
movl -0xc(%rbp), %eax
leaq 0x2fd6(%rip), %rcx      # 0x610c
movsbl (%rcx), %ecx
cmpl %ecx, %eax
jne 0x3178
cmpl $0x30, -0x10(%rbp)
jle 0x3145
jmp 0x31bc
movq -0x18(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x18(%rbp)
movb $0x5c, (%rax)
movl -0xc(%rbp), %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x18(%rbp)
movb %cl, (%rax)
movl -0x10(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x10(%rbp)
jmp 0x31aa
cmpl $0xa, -0xc(%rbp)
jne 0x3192
movq -0x18(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x18(%rbp)
movb $0x24, (%rax)
jmp 0x31bc
movl -0xc(%rbp), %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x18(%rbp)
movb %cl, (%rax)
jmp 0x31aa
jmp 0x31ac
jmp 0x31ae
movl -0x10(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x10(%rbp)
jmp 0x30b5
jmp 0x31be
movq -0x18(%rbp), %rax
movb $0x0, (%rax)
leaq 0x2f74(%rip), %rax      # 0x6140
movq (%rax), %rdi
movq -0x8(%rbp), %rsi
xorl %edx, %edx
callq 0x1150
addq $0x20, %rsp
popq %rbp
retq