// File: /workspace/github_c_makefile_star2_O1/blakemcbride[P]LISP9/ls9.c
// Function: initmap
cell initmap(cell fv, cell e, cell a) {
	cell	m, n, p;
	int	i, j;

	protect(m = NIL);
	i = 0;
	while (fv != NIL) {
		p = cons(car(fv), NIL);
		protect(p);
		n = mkfix(i);
		p = cons(n, p);
		car(Protected) = p;
		if ((j = posq(car(fv), a)) != NIL) {
			n = mkfix(j);
			p = cons(n, p);
			unprot(1);
			p = cons(I_a, p);
		}
		else if ((j = posq(car(fv), e)) != NIL) {
			n = mkfix(j);
			p = cons(n, p);
			unprot(1);
			p = cons(I_e, p);
		}
		else {
			error("undefined symbol", car(fv));
		}
		m = cons(p, m);
		car(Protected) = m;
		i++;
		fv = cdr(fv);
	}
	return nreverse(unprot(1));
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %edx, %ebx
movl %esi, (%rsp)
movl %edi, %r12d
movl 0x12a28(%rip), %esi     # 0x19170
movl $0xffffffff, %r15d      # imm = 0xFFFFFFFF
xorl %r14d, %r14d
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x3162
movl %eax, 0x12a0d(%rip)     # 0x19170
cmpl $-0x1, %r12d
je 0x68e5
movl %ebx, 0x4(%rsp)
movq 0x12bc8(%rip), %rax     # 0x19340
movslq %r12d, %rbp
movl (%rax,%rbp,4), %edi
movl $0xffffffff, %r12d      # imm = 0xFFFFFFFF
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
xorl %edx, %edx
callq 0x3162
movl %eax, %r13d
movl 0x129d7(%rip), %esi     # 0x19170
movl %eax, %edi
xorl %edx, %edx
callq 0x3162
movl %eax, 0x129c8(%rip)     # 0x19170
movl %r14d, %edi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
movl $0x1, %edx
callq 0x3162
movl $0xfffffff2, %edi       # imm = 0xFFFFFFF2
movl %eax, %esi
movl $0x1, %edx
callq 0x3162
movl %eax, %edi
movl %r13d, %esi
xorl %edx, %edx
callq 0x3162
movl %eax, %r13d
movq 0x12b5f(%rip), %rax     # 0x19340
movslq 0x12988(%rip), %rcx     # 0x19170
movl %r13d, (%rax,%rcx,4)
movl (%rax,%rbp,4), %esi
cmpl $-0x1, %ebx
je 0x6814
xorl %ecx, %ecx
movq 0x12b4b(%rip), %rdx     # 0x19348
movslq %ebx, %rdi
cmpl %esi, (%rax,%rdi,4)
je 0x6811
incl %ecx
movl (%rdx,%rdi,4), %ebx
cmpl $-0x1, %ebx
jne 0x67fd
jmp 0x6814
movl %ecx, %r12d
leaq 0x12f1d(%rip), %rbx     # 0x19738
cmpl $-0x1, %r12d
jne 0x6860
movl $0xffffffff, %r12d      # imm = 0xFFFFFFFF
movl (%rsp), %edi
cmpl $-0x1, %edi
je 0x684f
xorl %ecx, %ecx
movq 0x12b10(%rip), %rdx     # 0x19348
movslq %edi, %rdi
cmpl %esi, (%rax,%rdi,4)
je 0x684c
incl %ecx
movl (%rdx,%rdi,4), %edi
cmpl $-0x1, %edi
jne 0x6838
jmp 0x684f
movl %ecx, %r12d
leaq 0x12ee6(%rip), %rbx     # 0x1973c
cmpl $-0x1, %r12d
je 0x6909
movl %r12d, %edi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
movl $0x1, %edx
callq 0x3162
movl $0xfffffff2, %edi       # imm = 0xFFFFFFF2
movl %eax, %esi
movl $0x1, %edx
callq 0x3162
movl %eax, %edi
movl %r13d, %esi
xorl %edx, %edx
callq 0x3162
movl %eax, %r12d
movl $0x1, %edi
callq 0x33d7
movl (%rbx), %edi
movl %r12d, %esi
xorl %edx, %edx
callq 0x3162
movl %eax, %edi
movl %r15d, %esi
xorl %edx, %edx
callq 0x3162
movl %eax, %r15d
movq 0x12a82(%rip), %rax     # 0x19340
movslq 0x128ab(%rip), %rcx     # 0x19170
movl %r15d, (%rax,%rcx,4)
incl %r14d
movq 0x12a75(%rip), %rax     # 0x19348
movl (%rax,%rbp,4), %r12d
cmpl $-0x1, %r12d
movl 0x4(%rsp), %ebx
jne 0x6771
movl $0x1, %edi
callq 0x33d7
movl %eax, %edi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3e6e
leaq 0xce41(%rip), %rdi      # 0x13751
callq 0x264c