// File: /workspace/github_c_makefile_star2_O0/rakitzis[P]rc/input.c
// Function: doit
extern Node *doit(bool clobberexecit) {
	bool eof;
	bool execit;
	Jbwrap j;
	Estack e1;
	Edata jerror;

	if (dashen)
		clobberexecit = FALSE;
	execit = clobberexecit;
	sigsetjmp(j.j, 1);
	jerror.jb = &j;
	except(eError, jerror, &e1);
	for (eof = FALSE; !eof;) {
		Edata block;
		Estack e2;

		block.b = newblock();
		except(eArena, block, &e2);
		sigchk();

		if (interactive) {
			List *s;
			if (!dashen && fnlookup("prompt") != NULL) {
				static bool died = FALSE;
				static char *arglist[] = { "prompt", NULL };

				if (!died) {
					died = TRUE;
					funcall(arglist);
				}
				died = FALSE;
			}
			s = varlookup("prompt");
			if (s != NULL) {
				prompt = s->w;
				if (s->n != NULL)
					prompt2 = s->n->w;
				else
					prompt2 = "";
			} else {
				prompt = prompt2 = "";
			}
			if (istack->t == iFd)
				fprint(2, "%s", prompt);
			else if (istack->t == iEdit)
				edit_prompt(istack->cookie, prompt);
		}
		inityy();
		if (yyparse() == 1 && (execit || dashen))
			rc_raise(eError);
		eof = (lastchar == EOF); /* "lastchar" can be clobbered during a walk() */
		if (parsetree != NULL) {
#if RC_DEVELOP
			if (RC_DEVELOP)
				tree_dump(parsetree);
#endif
			if (execit)
				walk(parsetree, TRUE);
			else if (dashex && dashen)
				fprint(2, "%T\n", parsetree);
		}
		unexcept(eArena);
	}
	popinput();
	unexcept(eError);
	return parsetree;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x120, %rsp            # imm = 0x120
movl %edi, -0x4(%rbp)
leaq 0x14a47(%rip), %rax     # 0x1fc6c
cmpl $0x0, (%rax)
je 0xb231
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
movl %eax, -0xc(%rbp)
leaq -0xd8(%rbp), %rdi
movl $0x1, %esi
callq 0x3360
leaq -0xd8(%rbp), %rax
movq %rax, -0xf8(%rbp)
movq -0xf8(%rbp), %rsi
xorl %edi, %edi
leaq -0xf0(%rbp), %rdx
callq 0x4da0
movl $0x0, -0x8(%rbp)
cmpl $0x0, -0x8(%rbp)
setne %al
xorb $-0x1, %al
testb $0x1, %al
jne 0xb284
jmp 0xb47f
callq 0xd7d0
movq %rax, -0x100(%rbp)
movq -0x100(%rbp), %rsi
movl $0x4, %edi
leaq -0x118(%rbp), %rdx
callq 0x4da0
callq 0x104a0
leaq 0x149b0(%rip), %rax     # 0x1fc64
cmpl $0x0, (%rax)
je 0xb3d4
leaq 0x149a8(%rip), %rax     # 0x1fc6c
cmpl $0x0, (%rax)
jne 0xb304
leaq 0xa5f8(%rip), %rdi      # 0x158c8
callq 0x5d30
cmpq $0x0, %rax
je 0xb304
cmpl $0x0, 0x14916(%rip)     # 0x1fbf8
jne 0xb2fa
movl $0x1, 0x1490a(%rip)     # 0x1fbf8
leaq 0x1409b(%rip), %rdi     # 0x1f390
callq 0x3530
movl $0x0, 0x148f4(%rip)     # 0x1fbf8
leaq 0xa5bd(%rip), %rdi      # 0x158c8
callq 0x12110
movq %rax, -0x120(%rbp)
cmpq $0x0, -0x120(%rbp)
je 0xb367
movq -0x120(%rbp), %rax
movq (%rax), %rax
movq %rax, 0x148ce(%rip)     # 0x1fc00
movq -0x120(%rbp), %rax
cmpq $0x0, 0x10(%rax)
je 0xb357
movq -0x120(%rbp), %rax
movq 0x10(%rax), %rax
movq (%rax), %rax
movq %rax, 0x148b3(%rip)     # 0x1fc08
jmp 0xb365
leaq 0xad19(%rip), %rax      # 0x16077
movq %rax, 0x148a3(%rip)     # 0x1fc08
jmp 0xb383
leaq 0xad09(%rip), %rax      # 0x16077
movq %rax, 0x14893(%rip)     # 0x1fc08
leaq 0xacfb(%rip), %rax      # 0x16077
movq %rax, 0x1487d(%rip)     # 0x1fc00
movq 0x14836(%rip), %rax     # 0x1fbc0
cmpl $0x0, 0x4(%rax)
jne 0xb3ac
movq 0x14869(%rip), %rdx     # 0x1fc00
movl $0x2, %edi
leaq 0xa22d(%rip), %rsi      # 0x155d0
movb $0x0, %al
callq 0xf3a0
jmp 0xb3d2
movq 0x1480d(%rip), %rax     # 0x1fbc0
cmpl $0x2, 0x4(%rax)
jne 0xb3d0
movq 0x14800(%rip), %rax     # 0x1fbc0
movq 0x28(%rax), %rdi
movq 0x14835(%rip), %rsi     # 0x1fc00
callq 0x4ce0
jmp 0xb3d2
jmp 0xb3d4
callq 0xc880
callq 0xdae0
cmpl $0x1, %eax
jne 0xb3fc
cmpl $0x0, -0xc(%rbp)
jne 0xb3f5
leaq 0x1487c(%rip), %rax     # 0x1fc6c
cmpl $0x0, (%rax)
je 0xb3fc
xorl %edi, %edi
callq 0x4ef0
cmpl $-0x1, 0x147c5(%rip)    # 0x1fbc8
sete %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, -0x8(%rbp)
leaq 0x14903(%rip), %rax     # 0x1fd18
cmpq $0x0, (%rax)
je 0xb470
cmpl $0x0, -0xc(%rbp)
je 0xb437
leaq 0x148f0(%rip), %rax     # 0x1fd18
movq (%rax), %rdi
movl $0x1, %esi
callq 0x12d80
jmp 0xb46e
leaq 0x14842(%rip), %rax     # 0x1fc80
cmpl $0x0, (%rax)
je 0xb46c
leaq 0x14822(%rip), %rax     # 0x1fc6c
cmpl $0x0, (%rax)
je 0xb46c
leaq 0x148c2(%rip), %rax     # 0x1fd18
movq (%rax), %rdx
movl $0x2, %edi
leaq 0xa50f(%rip), %rsi      # 0x15974
movb $0x0, %al
callq 0xf3a0
jmp 0xb46e
jmp 0xb470
movl $0x4, %edi
callq 0x4e20
jmp 0xb272
callq 0xb0b0
xorl %edi, %edi
callq 0x4e20
leaq 0x14886(%rip), %rax     # 0x1fd18
movq (%rax), %rax
addq $0x120, %rsp            # imm = 0x120
popq %rbp
retq
nop