// File: /workspace/github_c_makefile_star2_O0/azhai[P]mlite/mlite.c
// Function: pat_infix
cell pat_infix(int k) {
	cell	ops, args, new;
	cell	n;

	n = pat_funapp(k);
	if ((Token == TOK_ID && is_binop(Attr)) || Token == TOK_CONS) {
		Tmp = n;
		save(Attr);
		args = NIL;
		save(args);
		ops = NIL;
		save(ops);
		set(cadr(Stack), node(n, cadr(Stack)));
		Tmp = NIL;
		if (Token == TOK_CONS)
			Attr = caddr(Stack) = S_cons;
		while (is_binop(Attr) && (Attr != S_equal || k > 0)) {
			pat_commit(symbol_name(Attr), 0);
			set(car(Stack), node(Attr, car(Stack)));
			Token = scan();
			caddr(Stack) = Attr;
			set(cadr(Stack), node(pat_funapp(k), cadr(Stack)));
			if (Token == TOK_CONS)
				Attr = caddr(Stack) = S_cons;
		}
		pat_commit("", 1);
		n = car(unsave(2));
		unsave(1);
		return n;
	}
	else {
		return n;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movl %edi, -0xc(%rbp)
movl -0xc(%rbp), %edi
callq 0xe210
movq %rax, -0x30(%rbp)
cmpl $0xfffffed1, 0x19c7f(%rip) # imm = 0xFFFFFED1
jne 0xea74
movq 0x196fe(%rip), %rdi     # 0x28168
callq 0xc680
cmpl $0x0, %eax
jne 0xea81
cmpl $-0x67, 0x19c65(%rip)   # 0x286e0
jne 0xed48
movq -0x30(%rbp), %rax
movq %rax, 0x19694(%rip)     # 0x28120
movq 0x196d5(%rip), %rdi     # 0x28168
movq 0x1969e(%rip), %rsi     # 0x28138
xorl %edx, %edx
callq 0x3780
movq %rax, 0x19690(%rip)     # 0x28138
movq $-0x1, -0x20(%rbp)
movq -0x20(%rbp), %rdi
movq 0x1967d(%rip), %rsi     # 0x28138
xorl %edx, %edx
callq 0x3780
movq %rax, 0x1966f(%rip)     # 0x28138
movq $-0x1, -0x18(%rbp)
movq -0x18(%rbp), %rdi
movq 0x1965c(%rip), %rsi     # 0x28138
xorl %edx, %edx
callq 0x3780
movq %rax, 0x1964e(%rip)     # 0x28138
movq -0x30(%rbp), %rdi
movq 0x1968b(%rip), %rax     # 0x28180
movq 0x19ad4(%rip), %rcx     # 0x285d0
movq 0x19635(%rip), %rdx     # 0x28138
movq (%rcx,%rdx,8), %rcx
movq (%rax,%rcx,8), %rsi
xorl %edx, %edx
callq 0x3780
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rdx
movq 0x1965f(%rip), %rax     # 0x28180
movq 0x19aa8(%rip), %rcx     # 0x285d0
movq 0x19609(%rip), %rsi     # 0x28138
movq (%rcx,%rsi,8), %rcx
movq %rdx, (%rax,%rcx,8)
movq $-0x1, 0x195de(%rip) # 0x28120
cmpl $-0x67, 0x19b97(%rip)   # 0x286e0
jne 0xeb81
movq 0x19b4e(%rip), %rax     # 0x286a0
movq 0x19627(%rip), %rcx     # 0x28180
movq 0x19a70(%rip), %rdx     # 0x285d0
movq 0x19a69(%rip), %rsi     # 0x285d0
movq 0x195ca(%rip), %rdi     # 0x28138
movq (%rsi,%rdi,8), %rsi
movq (%rdx,%rsi,8), %rdx
movq %rax, (%rcx,%rdx,8)
movq %rax, 0x195e7(%rip)     # 0x28168
jmp 0xeb83
movq 0x195de(%rip), %rdi     # 0x28168
callq 0xc680
movl %eax, %ecx
xorl %eax, %eax
cmpl $0x0, %ecx
movb %al, -0x31(%rbp)
je 0xebc0
movq 0x195c6(%rip), %rcx     # 0x28168
movb $0x1, %al
cmpq 0x19b5d(%rip), %rcx     # 0x28708
movb %al, -0x32(%rbp)
jne 0xebba
cmpl $0x0, -0xc(%rbp)
setg %al
movb %al, -0x32(%rbp)
movb -0x32(%rbp), %al
movb %al, -0x31(%rbp)
movb -0x31(%rbp), %al
testb $0x1, %al
jne 0xebcc
jmp 0xecff
movq 0x19a25(%rip), %rdi     # 0x285f8
movq 0x199f6(%rip), %rax     # 0x285d0
movq 0x19587(%rip), %rcx     # 0x28168
movq (%rax,%rcx,8), %rax
shlq $0x3, %rax
addq %rax, %rdi
xorl %esi, %esi
callq 0xe4c0
movq 0x1956e(%rip), %rdi     # 0x28168
movq 0x1957f(%rip), %rax     # 0x28180
movq 0x19530(%rip), %rcx     # 0x28138
movq (%rax,%rcx,8), %rsi
xorl %edx, %edx
callq 0x3780
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rdx
movq 0x1955e(%rip), %rax     # 0x28180
movq 0x1950f(%rip), %rcx     # 0x28138
movq %rdx, (%rax,%rcx,8)
callq 0xcc90
movl %eax, 0x19aa8(%rip)     # 0x286e0
movq 0x19529(%rip), %rdx     # 0x28168
movq 0x1953a(%rip), %rax     # 0x28180
movq 0x19983(%rip), %rcx     # 0x285d0
movq 0x1997c(%rip), %rsi     # 0x285d0
movq 0x194dd(%rip), %rdi     # 0x28138
movq (%rsi,%rdi,8), %rsi
movq (%rcx,%rsi,8), %rcx
movq %rdx, (%rax,%rcx,8)
movl -0xc(%rbp), %edi
callq 0xe210
movq %rax, %rdi
movq 0x19507(%rip), %rax     # 0x28180
movq 0x19950(%rip), %rcx     # 0x285d0
movq 0x194b1(%rip), %rdx     # 0x28138
movq (%rcx,%rdx,8), %rcx
movq (%rax,%rcx,8), %rsi
xorl %edx, %edx
callq 0x3780
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rdx
movq 0x194db(%rip), %rax     # 0x28180
movq 0x19924(%rip), %rcx     # 0x285d0
movq 0x19485(%rip), %rsi     # 0x28138
movq (%rcx,%rsi,8), %rcx
movq %rdx, (%rax,%rcx,8)
cmpl $-0x67, 0x19a1e(%rip)   # 0x286e0
jne 0xecfa
movq 0x199d5(%rip), %rax     # 0x286a0
movq 0x194ae(%rip), %rcx     # 0x28180
movq 0x198f7(%rip), %rdx     # 0x285d0
movq 0x198f0(%rip), %rsi     # 0x285d0
movq 0x19451(%rip), %rdi     # 0x28138
movq (%rsi,%rdi,8), %rsi
movq (%rdx,%rsi,8), %rdx
movq %rax, (%rcx,%rdx,8)
movq %rax, 0x1946e(%rip)     # 0x28168
jmp 0xeb83
leaq 0x12cce(%rip), %rdi     # 0x219d4
movl $0x1, %esi
callq 0xe4c0
movq 0x19469(%rip), %rax     # 0x28180
movq %rax, -0x40(%rbp)
movl $0x2, %edi
callq 0x3950
movq %rax, %rcx
movq -0x40(%rbp), %rax
movq (%rax,%rcx,8), %rax
movq %rax, -0x30(%rbp)
movl $0x1, %edi
callq 0x3950
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0xed50
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x40, %rsp
popq %rbp
retq
nopw (%rax,%rax)