// File: /workspace/github_c_makefile_star2_O1/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
pushq %r14
pushq %rbx
movl %edi, %ebx
callq 0xab63
movq %rax, %r14
movl 0x136af(%rip), %eax     # 0x1e6d0
cmpl $-0x67, %eax
je 0xb04e
cmpl $0xfffffed1, %eax       # imm = 0xFFFFFED1
jne 0xb241
movq 0x13120(%rip), %rdi     # 0x1e158
callq 0x97a0
testl %eax, %eax
jne 0xb04e
cmpl $-0x67, 0x13688(%rip)   # 0x1e6d0
jne 0xb241
movq %r14, 0x130bb(%rip)     # 0x1e110
movq 0x130fc(%rip), %rdi     # 0x1e158
movq 0x130c5(%rip), %rsi     # 0x1e128
xorl %edx, %edx
callq 0x36e8
movq %rax, 0x130b7(%rip)     # 0x1e128
movq $-0x1, %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x36e8
movq %rax, 0x1309f(%rip)     # 0x1e128
movq $-0x1, %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x36e8
movq %rax, 0x13087(%rip)     # 0x1e128
movq 0x130c8(%rip), %rcx     # 0x1e170
movq 0x13511(%rip), %rdx     # 0x1e5c0
movq (%rdx,%rax,8), %rax
movq (%rcx,%rax,8), %rsi
movq %r14, %rdi
xorl %edx, %edx
callq 0x36e8
movq 0x130a8(%rip), %rcx     # 0x1e170
movq 0x134f1(%rip), %rdx     # 0x1e5c0
movq 0x13052(%rip), %rsi     # 0x1e128
movq (%rdx,%rsi,8), %rsi
movq %rax, (%rcx,%rsi,8)
movq $-0x1, 0x13027(%rip) # 0x1e110
cmpl $-0x67, 0x135e0(%rip)   # 0x1e6d0
jne 0xb113
movq 0x13597(%rip), %rax     # 0x1e690
movq 0x13028(%rip), %rsi     # 0x1e128
movq (%rdx,%rsi,8), %rsi
movq (%rdx,%rsi,8), %rdx
movq %rax, (%rcx,%rdx,8)
movq %rax, 0x13045(%rip)     # 0x1e158
movq 0x1303e(%rip), %rdi     # 0x1e158
callq 0x97a0
testl %eax, %eax
je 0xb211
movq 0x1302a(%rip), %rax     # 0x1e158
testl %ebx, %ebx
jg 0xb13f
cmpq 0x135bf(%rip), %rax     # 0x1e6f8
je 0xb211
movq 0x1347a(%rip), %rcx     # 0x1e5c0
movq (%rcx,%rax,8), %rdi
shlq $0x3, %rdi
addq 0x13493(%rip), %rdi     # 0x1e5e8
xorl %esi, %esi
callq 0xacf5
movq 0x12ff5(%rip), %rdi     # 0x1e158
movq 0x13006(%rip), %rax     # 0x1e170
movq 0x12fb7(%rip), %rcx     # 0x1e128
movq (%rax,%rcx,8), %rsi
xorl %edx, %edx
callq 0x36e8
movq 0x12fed(%rip), %rcx     # 0x1e170
movq 0x12f9e(%rip), %rdx     # 0x1e128
movq %rax, (%rcx,%rdx,8)
callq 0x9c07
movl %eax, 0x13537(%rip)     # 0x1e6d0
movq 0x12fb8(%rip), %rax     # 0x1e158
movq 0x12fc9(%rip), %rcx     # 0x1e170
movq 0x13412(%rip), %rdx     # 0x1e5c0
movq 0x12f73(%rip), %rsi     # 0x1e128
movq (%rdx,%rsi,8), %rsi
movq (%rdx,%rsi,8), %rdx
movq %rax, (%rcx,%rdx,8)
movl %ebx, %edi
callq 0xab63
movq 0x12fa1(%rip), %rcx     # 0x1e170
movq 0x133ea(%rip), %rdx     # 0x1e5c0
movq 0x12f4b(%rip), %rsi     # 0x1e128
movq (%rdx,%rsi,8), %rdx
movq (%rcx,%rdx,8), %rsi
movq %rax, %rdi
xorl %edx, %edx
callq 0x36e8
movq 0x12f7a(%rip), %rcx     # 0x1e170
movq 0x133c3(%rip), %rdx     # 0x1e5c0
movq 0x12f24(%rip), %rsi     # 0x1e128
movq (%rdx,%rsi,8), %rsi
movq %rax, (%rcx,%rsi,8)
jmp 0xb0e9
leaq 0xc6de(%rip), %rdi      # 0x178f6
movl $0x1, %esi
callq 0xacf5
movq 0x12f47(%rip), %rbx     # 0x1e170
movl $0x2, %edi
callq 0x3851
movq (%rbx,%rax,8), %r14
movl $0x1, %edi
callq 0x3851
movq %r14, %rax
popq %rbx
popq %r14
popq %rbp
retq