// File: /workspace/github_c_makefile_star2_O0/azhai[P]mlite/mlite.c
// Function: x_print_form
void x_print_form(cell n, int depth) {
	int	m;

	if (Streams[Outstream] == NULL) {
		error("outstream is not open", NOEXPR);
		return;
	}
	if (depth > MAX_IO_DEPTH) {
		error("printer: too many nested lists or vectors", NOEXPR);
		return;
	}
	if (n == NIL) {
		pr("[]");
	}
	else if (eof_p(n)) {
		pr("<eof>");
	}
	else if (n == NAN) {
		pr("<nan>");
	}
	else if (n == FALSE) {
		pr("false");
	}
	else if (n == TRUE) {
		pr("true");
	}
	else if (undefined_p(n)) {
		pr("<undefined>");
	}
	else if (n == GUARD) {
		pr("<guard>");
	}
	else if (unit_p(n)) {
		pr("()");
	}
	else if (virtual_p(n)) {
		print_virtual(n);
	}
	else {
		if (print_char(n)) return;
		if (print_fun(n)) return;
		if (print_continuation(n)) return;
		if (print_real(n)) return;
		if (print_integer(n)) return;
		if (print_primitive(n)) return;
		if (print_quoted(n)) return;
		if (print_string(n)) return;
		if (print_symbol(n)) return;
		if (print_syntax(n)) return;
		if (print_vector(n)) return;
		if (print_stream(n)) return;
		if (print_cons(n)) return;
		pr(list_p(n)? "[": "(");
		m = n;
		while (n != NIL) {
			if (Error_flag) return;
			if (Printer_limit && Printer_count > Printer_limit)
				return;
			x_print_form(car(n), depth+1);
			if (Error_flag) return;
			n = cdr(n);
			if (n != NIL && atom_p(n)) {
				pr(" :: ");
				x_print_form(n, depth+1);
				n = NIL;
			}
			if (n != NIL) pr(", ");
		}
		pr(list_p(m)? "]": ")");
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movslq 0x1c38a(%rip), %rcx     # 0x28290
leaq 0x1c283(%rip), %rax     # 0x28190
cmpq $0x0, (%rax,%rcx,8)
jne 0xbf2c
leaq 0x14371(%rip), %rdi     # 0x2028c
movq $-0x8, %rsi
callq 0x34b0
jmp 0xc30b
cmpl $0x10000, -0xc(%rbp)    # imm = 0x10000
jle 0xbf4d
leaq 0x147d7(%rip), %rdi     # 0x20713
movq $-0x8, %rsi
callq 0x34b0
jmp 0xc30b
cmpq $-0x1, -0x8(%rbp)
jne 0xbf65
leaq 0x147e2(%rip), %rdi     # 0x2073d
callq 0x3ab0
jmp 0xc30b
cmpq $-0x4, -0x8(%rbp)
jne 0xbf7d
leaq 0x147cd(%rip), %rdi     # 0x20740
callq 0x3ab0
jmp 0xc309
cmpq $-0x7, -0x8(%rbp)
jne 0xbf95
leaq 0x147bb(%rip), %rdi     # 0x20746
callq 0x3ab0
jmp 0xc307
cmpq $-0x3, -0x8(%rbp)
jne 0xbfad
leaq 0x1464e(%rip), %rdi     # 0x205f1
callq 0x3ab0
jmp 0xc305
cmpq $-0x2, -0x8(%rbp)
jne 0xbfc5
leaq 0x14631(%rip), %rdi     # 0x205ec
callq 0x3ab0
jmp 0xc303
cmpq $-0x5, -0x8(%rbp)
jne 0xbfdd
leaq 0x14779(%rip), %rdi     # 0x2074c
callq 0x3ab0
jmp 0xc301
cmpq $-0x9, -0x8(%rbp)
jne 0xbff5
leaq 0x1476d(%rip), %rdi     # 0x20758
callq 0x3ab0
jmp 0xc2ff
cmpq $-0x6, -0x8(%rbp)
jne 0xc00d
leaq 0x1475d(%rip), %rdi     # 0x20760
callq 0x3ab0
jmp 0xc2fd
cmpq $0x0, -0x8(%rbp)
jge 0xc022
movq -0x8(%rbp), %rdi
callq 0xbeb0
jmp 0xc2fb
movq -0x8(%rbp), %rdi
callq 0xb690
cmpl $0x0, %eax
je 0xc035
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xb480
cmpl $0x0, %eax
je 0xc048
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xb620
cmpl $0x0, %eax
je 0xc05b
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xb060
cmpl $0x0, %eax
je 0xc06e
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xb310
cmpl $0x0, %eax
je 0xc081
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xb980
cmpl $0x0, %eax
je 0xc094
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xb3e0
cmpl $0x0, %eax
je 0xc0a7
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xb780
cmpl $0x0, %eax
je 0xc0ba
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xb8b0
cmpl $0x0, %eax
je 0xc0cd
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xba30
cmpl $0x0, %eax
je 0xc0e0
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xbaa0
cmpl $0x0, %eax
je 0xc0f3
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xbb90
cmpl $0x0, %eax
je 0xc106
jmp 0xc30b
movq -0x8(%rbp), %rdi
callq 0xbd20
cmpl $0x0, %eax
je 0xc119
jmp 0xc30b
cmpq $0x0, -0x8(%rbp)
jl 0xc16a
movq 0x1c4c9(%rip), %rax     # 0x285f0
movq -0x8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x1, %eax
cmpl $0x0, %eax
jne 0xc16a
movq 0x1c4b2(%rip), %rax     # 0x285f0
movq -0x8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x10, %eax
cmpl $0x0, %eax
jne 0xc16a
movq 0x1c49b(%rip), %rax     # 0x285f0
movq -0x8(%rbp), %rcx
movsbl (%rax,%rcx), %ecx
andl $0x8, %ecx
movb $0x1, %al
cmpl $0x0, %ecx
movb %al, -0x11(%rbp)
jne 0xc175
cmpq $-0x1, -0x8(%rbp)
sete %al
movb %al, -0x11(%rbp)
movb -0x11(%rbp), %cl
leaq 0x145e6(%rip), %rdi     # 0x20765
leaq 0x145dd(%rip), %rax     # 0x20763
testb $0x1, %cl
cmovneq %rax, %rdi
callq 0x3ab0
movq -0x8(%rbp), %rax
movl %eax, -0x10(%rbp)
cmpq $-0x1, -0x8(%rbp)
je 0xc284
movl 0x1c41a(%rip), %eax     # 0x285c4
cmpl $0x0, %eax
je 0xc1b4
jmp 0xc30b
cmpl $0x0, 0x1c0d9(%rip)     # 0x28294
je 0xc1d0
movl 0x1c0d5(%rip), %eax     # 0x28298
cmpl 0x1c0cb(%rip), %eax     # 0x28294
jle 0xc1d0
jmp 0xc30b
movq 0x1bfa9(%rip), %rax     # 0x28180
movq -0x8(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
movl -0xc(%rbp), %esi
addl $0x1, %esi
callq 0xbef0
movl 0x1c3d4(%rip), %eax     # 0x285c4
cmpl $0x0, %eax
je 0xc1fa
jmp 0xc30b
movq 0x1c3cf(%rip), %rax     # 0x285d0
movq -0x8(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x8(%rbp)
cmpq $-0x1, -0x8(%rbp)
je 0xc26c
cmpq $0x0, -0x8(%rbp)
jl 0xc249
movq 0x1c3ce(%rip), %rax     # 0x285f0
movq -0x8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x1, %eax
cmpl $0x0, %eax
jne 0xc249
movq 0x1c3b7(%rip), %rax     # 0x285f0
movq -0x8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x10, %eax
cmpl $0x0, %eax
je 0xc26c
leaq 0x144b0(%rip), %rdi     # 0x20700
callq 0x3ab0
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %esi
addl $0x1, %esi
callq 0xbef0
movq $-0x1, -0x8(%rbp)
cmpq $-0x1, -0x8(%rbp)
je 0xc27f
leaq 0x14471(%rip), %rdi     # 0x206eb
callq 0x3ab0
jmp 0xc199
cmpl $0x0, -0x10(%rbp)
jl 0xc2d4
movq 0x1c35f(%rip), %rax     # 0x285f0
movslq -0x10(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x1, %eax
cmpl $0x0, %eax
jne 0xc2d4
movq 0x1c348(%rip), %rax     # 0x285f0
movslq -0x10(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x10, %eax
cmpl $0x0, %eax
jne 0xc2d4
movq 0x1c331(%rip), %rax     # 0x285f0
movslq -0x10(%rbp), %rcx
movsbl (%rax,%rcx), %ecx
andl $0x8, %ecx
movb $0x1, %al
cmpl $0x0, %ecx
movb %al, -0x12(%rbp)
jne 0xc2de
cmpl $-0x1, -0x10(%rbp)
sete %al
movb %al, -0x12(%rbp)
movb -0x12(%rbp), %cl
leaq 0x153f0(%rip), %rdi     # 0x216d8
leaq 0x1444f(%rip), %rax     # 0x2073e
testb $0x1, %cl
cmovneq %rax, %rdi
callq 0x3ab0
jmp 0xc2fd
jmp 0xc2ff
jmp 0xc301
jmp 0xc303
jmp 0xc305
jmp 0xc307
jmp 0xc309
jmp 0xc30b
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)