// File: /workspace/github_c_makefile_star2_O0/dalnefre[P]kernel_abe/emit.c
// Function: test_cons_to_str
void
test_cons_to_str()
{
	CONS* value;
	char* actual;
	char expect[256];

	DBUG_ENTER("test_cons_to_str");
	TRACE(printf("--test_cons_to_str--\n"));

	ASSERT_CONS_TO_STR(NIL, "NIL", actual);

	ASSERT_CONS_TO_STR(TRUE, "TRUE", actual);

	ASSERT_CONS_TO_STR(FALSE, "FALSE", actual);

	ASSERT_CONS_TO_STR(ATOM("TRUE"), "#TRUE", actual);

	ASSERT_CONS_TO_STR(ATOM("#x,y"), "#\"#x,y\"", actual);

	ASSERT_CONS_TO_STR(NUMBER(0), "0", actual);

	ASSERT_CONS_TO_STR(NUMBER(1), "1", actual);

	ASSERT_CONS_TO_STR(NUMBER(-1), "-1", actual);

	value = MK_FUNC(test_cons_to_str);
#if NUMBER_IS_FUNC
	sprintf(expect, "%d", (int)MK_PTR(value));
#else
	sprintf(expect, "^%lx", (ulint)MK_PTR(value));
#endif
	ASSERT_CONS_TO_STR(value, expect, actual);

	value = CFG_ACTOR(NULL, sink_beh, NIL);
	sprintf(expect, "@%lx[^%lx, NIL]", (ulint)value, (ulint)sink_beh);
	ASSERT_CONS_TO_STR(value, expect, actual);
#if 0
	rplacd(value, value);  /* FIXME: CIRCULAR LINK FORCED FOR TESTING */
	ASSERT_CONS_TO_STR(value, expect, actual);
#endif

	ASSERT_CONS_TO_STR(cons(NUMBER(0), NIL), "(0, NIL)", actual);

	value = cons(
		FALSE, 
		cons(
			cons(
				ATOM("x"),
				NUMBER(0)
			),
			NIL
		)
	);
	ASSERT_CONS_TO_STR(value, "(FALSE, (#x, 0), NIL)", actual);

	DBUG_RETURN;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x140, %rsp            # imm = 0x140
leaq 0xcb1a(%rip), %rax      # 0x2a12c
movq %rax, -0x138(%rbp)
leaq 0x11d00(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl 0x8(%rax), %eax
movl %eax, -0x130(%rbp)
movl $0xb8, -0x12c(%rbp)
leaq 0xbd2e(%rip), %rax      # 0x2936f
movq %rax, -0x128(%rbp)
leaq 0x11b61(%rip), %rax     # 0x2f1b0
movq %rax, -0x120(%rbp)
leaq 0x11cc3(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movq %rax, -0x118(%rbp)
leaq -0x138(%rbp), %rdi
callq 0x28490
leaq 0xcabf(%rip), %rdi      # 0x2a13d
movb $0x0, %al
callq 0x20e0
leaq 0x11c04(%rip), %rdi     # 0x2f290
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x12284(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1d6f9
leaq 0x11c78(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xbcb9(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xbcae(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1d6f9
leaq 0x11c4e(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xbb, 0xc(%rax)
movq -0x10(%rbp), %rdx
leaq 0xca68(%rip), %rdi      # 0x2a153
leaq 0xdde2(%rip), %rsi      # 0x2b4d4
movb $0x0, %al
callq 0x28540
jmp 0x1d6fb
movq -0x10(%rbp), %rsi
leaq 0xddce(%rip), %rdi      # 0x2b4d4
callq 0x2160
cmpl $0x0, %eax
jne 0x1d712
jmp 0x1d731
leaq 0xca42(%rip), %rdi      # 0x2a15b
leaq 0xca56(%rip), %rsi      # 0x2a176
movl $0xbb, %edx
leaq 0xca51(%rip), %rcx      # 0x2a17d
callq 0x2100
movl $0x1, %edi
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x121da(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1d7a3
leaq 0x11bce(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xbc0f(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xbc04(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1d7a3
leaq 0x11ba4(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xbd, 0xc(%rax)
movq -0x10(%rbp), %rdx
leaq 0xc9be(%rip), %rdi      # 0x2a153
leaq 0xd73f(%rip), %rsi      # 0x2aedb
movb $0x0, %al
callq 0x28540
jmp 0x1d7a5
movq -0x10(%rbp), %rsi
leaq 0xd72b(%rip), %rdi      # 0x2aedb
callq 0x2160
cmpl $0x0, %eax
jne 0x1d7bc
jmp 0x1d7db
leaq 0xc9d2(%rip), %rdi      # 0x2a195
leaq 0xc9ac(%rip), %rsi      # 0x2a176
movl $0xbd, %edx
leaq 0xc9a7(%rip), %rcx      # 0x2a17d
callq 0x2100
xorl %eax, %eax
movl %eax, %edi
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x12131(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1d84c
leaq 0x11b25(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xbb66(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xbb5b(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1d84c
leaq 0x11afb(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xbf, 0xc(%rax)
movq -0x10(%rbp), %rdx
leaq 0xc915(%rip), %rdi      # 0x2a153
leaq 0xd6cc(%rip), %rsi      # 0x2af11
movb $0x0, %al
callq 0x28540
jmp 0x1d84e
movq -0x10(%rbp), %rsi
leaq 0xd6b8(%rip), %rdi      # 0x2af11
callq 0x2160
cmpl $0x0, %eax
jne 0x1d865
jmp 0x1d884
leaq 0xc945(%rip), %rdi      # 0x2a1b1
leaq 0xc903(%rip), %rsi      # 0x2a176
movl $0xbf, %edx
leaq 0xc8fe(%rip), %rcx      # 0x2a17d
callq 0x2100
leaq 0xd650(%rip), %rdi      # 0x2aedb
callq 0x216e0
movq %rax, %rdi
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x1207d(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1d900
leaq 0x11a71(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xbab2(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xbaa7(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1d900
leaq 0x11a47(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xc1, 0xc(%rax)
movq -0x10(%rbp), %rdx
leaq 0xc861(%rip), %rdi      # 0x2a153
leaq 0xc8d5(%rip), %rsi      # 0x2a1ce
movb $0x0, %al
callq 0x28540
jmp 0x1d902
movq -0x10(%rbp), %rsi
leaq 0xc8c1(%rip), %rdi      # 0x2a1ce
callq 0x2160
cmpl $0x0, %eax
jne 0x1d919
jmp 0x1d938
leaq 0xc8b4(%rip), %rdi      # 0x2a1d4
leaq 0xc84f(%rip), %rsi      # 0x2a176
movl $0xc1, %edx
leaq 0xc84a(%rip), %rcx      # 0x2a17d
callq 0x2100
leaq 0xc8b2(%rip), %rdi      # 0x2a1f1
callq 0x216e0
movq %rax, %rdi
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x11fc9(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1d9b4
leaq 0x119bd(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xb9fe(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xb9f3(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1d9b4
leaq 0x11993(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xc3, 0xc(%rax)
movq -0x10(%rbp), %rdx
leaq 0xc7ad(%rip), %rdi      # 0x2a153
leaq 0xc849(%rip), %rsi      # 0x2a1f6
movb $0x0, %al
callq 0x28540
jmp 0x1d9b6
movq -0x10(%rbp), %rsi
leaq 0xc835(%rip), %rdi      # 0x2a1f6
callq 0x2160
cmpl $0x0, %eax
jne 0x1d9cd
jmp 0x1d9ec
leaq 0xc82a(%rip), %rdi      # 0x2a1fe
leaq 0xc79b(%rip), %rsi      # 0x2a176
movl $0xc3, %edx
leaq 0xc796(%rip), %rcx      # 0x2a17d
callq 0x2100
movl $0x3, %edi
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x11f1f(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1da5e
leaq 0x11913(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xb954(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xb949(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1da5e
leaq 0x118e9(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xc5, 0xc(%rax)
movq -0x10(%rbp), %rdx
leaq 0xc703(%rip), %rdi      # 0x2a153
leaq 0xd122(%rip), %rsi      # 0x2ab79
movb $0x0, %al
callq 0x28540
jmp 0x1da60
movq -0x10(%rbp), %rsi
leaq 0xd10e(%rip), %rdi      # 0x2ab79
callq 0x2160
cmpl $0x0, %eax
jne 0x1da77
jmp 0x1da96
leaq 0xc7a1(%rip), %rdi      # 0x2a21f
leaq 0xc6f1(%rip), %rsi      # 0x2a176
movl $0xc5, %edx
leaq 0xc6ec(%rip), %rcx      # 0x2a17d
callq 0x2100
movl $0x7, %edi
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x11e75(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1db08
leaq 0x11869(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xb8aa(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xb89f(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1db08
leaq 0x1183f(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xc7, 0xc(%rax)
movq -0x10(%rbp), %rdx
leaq 0xc659(%rip), %rdi      # 0x2a153
leaq 0xd36b(%rip), %rsi      # 0x2ae6c
movb $0x0, %al
callq 0x28540
jmp 0x1db0a
movq -0x10(%rbp), %rsi
leaq 0xd357(%rip), %rdi      # 0x2ae6c
callq 0x2160
cmpl $0x0, %eax
jne 0x1db21
jmp 0x1db40
leaq 0xc710(%rip), %rdi      # 0x2a238
leaq 0xc647(%rip), %rsi      # 0x2a176
movl $0xc7, %edx
leaq 0xc642(%rip), %rcx      # 0x2a17d
callq 0x2100
movq $-0x1, %rdi
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x11dc9(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1dbb4
leaq 0x117bd(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xb7fe(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xb7f3(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1dbb4
leaq 0x11793(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xc9, 0xc(%rax)
movq -0x10(%rbp), %rdx
leaq 0xc5ad(%rip), %rdi      # 0x2a153
leaq 0xc6a4(%rip), %rsi      # 0x2a251
movb $0x0, %al
callq 0x28540
jmp 0x1dbb6
movq -0x10(%rbp), %rsi
leaq 0xc690(%rip), %rdi      # 0x2a251
callq 0x2160
cmpl $0x0, %eax
jne 0x1dbcd
jmp 0x1dbec
leaq 0xc680(%rip), %rdi      # 0x2a254
leaq 0xc59b(%rip), %rsi      # 0x2a176
movl $0xc9, %edx
leaq 0xc596(%rip), %rcx      # 0x2a17d
callq 0x2100
leaq -0x5f3(%rip), %rax      # 0x1d600
shlq $0x2, %rax
orq $0x3, %rax
movq %rax, -0x8(%rbp)
leaq -0x110(%rbp), %rdi
movq -0x8(%rbp), %rax
sarq $0x2, %rax
movl %eax, %edx
leaq 0xcaea(%rip), %rsi      # 0x2a701
movb $0x0, %al
callq 0x2220
movq -0x8(%rbp), %rdi
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x11cee(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1dc8f
leaq 0x116e2(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xb723(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xb718(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1dc8f
leaq 0x116b8(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xd1, 0xc(%rax)
leaq -0x110(%rbp), %rsi
movq -0x10(%rbp), %rdx
leaq 0xc4cb(%rip), %rdi      # 0x2a153
movb $0x0, %al
callq 0x28540
jmp 0x1dc91
leaq -0x110(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x2160
cmpl $0x0, %eax
jne 0x1dca8
jmp 0x1dcc7
leaq 0xc5bf(%rip), %rdi      # 0x2a26e
leaq 0xc4c0(%rip), %rsi      # 0x2a176
movl $0xd1, %edx
leaq 0xc4bb(%rip), %rcx      # 0x2a17d
callq 0x2100
xorl %eax, %eax
movl %eax, %edi
leaq -0x3662(%rip), %rsi     # 0x1a670
leaq 0x115b7(%rip), %rdx     # 0x2f290
callq 0x1b6f0
movq %rax, -0x8(%rbp)
leaq -0x110(%rbp), %rdi
movq -0x8(%rbp), %rdx
leaq 0xc596(%rip), %rsi      # 0x2a28a
leaq -0x368b(%rip), %rcx     # 0x1a670
movb $0x0, %al
callq 0x2220
movq -0x8(%rbp), %rdi
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x11c0a(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1dd73
leaq 0x115fe(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xb63f(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xb634(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1dd73
leaq 0x115d4(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xd5, 0xc(%rax)
leaq -0x110(%rbp), %rsi
movq -0x10(%rbp), %rdx
leaq 0xc3e7(%rip), %rdi      # 0x2a153
movb $0x0, %al
callq 0x28540
jmp 0x1dd75
leaq -0x110(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x2160
cmpl $0x0, %eax
jne 0x1dd8c
jmp 0x1ddab
leaq 0xc4db(%rip), %rdi      # 0x2a26e
leaq 0xc3dc(%rip), %rsi      # 0x2a176
movl $0xd5, %edx
leaq 0xc3d7(%rip), %rcx      # 0x2a17d
callq 0x2100
movl $0x3, %edi
leaq 0x114d9(%rip), %rsi     # 0x2f290
callq 0x25290
movq %rax, %rdi
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x11b51(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1de2c
leaq 0x11545(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xb586(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xb57b(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1de2c
leaq 0x1151b(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xdb, 0xc(%rax)
movq -0x10(%rbp), %rdx
leaq 0xc335(%rip), %rdi      # 0x2a153
leaq 0xc475(%rip), %rsi      # 0x2a29a
movb $0x0, %al
callq 0x28540
jmp 0x1de2e
movq -0x10(%rbp), %rsi
leaq 0xc461(%rip), %rdi      # 0x2a29a
callq 0x2160
cmpl $0x0, %eax
jne 0x1de45
jmp 0x1de64
leaq 0xc457(%rip), %rdi      # 0x2a2a3
leaq 0xc323(%rip), %rsi      # 0x2a176
movl $0xdb, %edx
leaq 0xc31e(%rip), %rcx      # 0x2a17d
callq 0x2100
leaq 0xcec8(%rip), %rdi      # 0x2ad33
callq 0x216e0
movq %rax, %rdi
movl $0x3, %esi
callq 0x25290
movq %rax, %rdi
leaq 0x11409(%rip), %rsi     # 0x2f290
callq 0x25290
movq %rax, %rsi
xorl %eax, %eax
movl %eax, %edi
callq 0x25290
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rdi
callq 0x1d250
movq %rax, -0x10(%rbp)
leaq 0x11a70(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x1df0d
leaq 0x11464(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0xb4a5(%rip), %rcx      # 0x2936f
movq %rcx, 0x10(%rax)
leaq 0xb49a(%rip), %rdi      # 0x2936f
callq 0x278a0
cmpl $0x0, %eax
je 0x1df0d
leaq 0x1143a(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0xe7, 0xc(%rax)
movq -0x10(%rbp), %rdx
leaq 0xc254(%rip), %rdi      # 0x2a153
leaq 0xc3bd(%rip), %rsi      # 0x2a2c3
movb $0x0, %al
callq 0x28540
jmp 0x1df0f
movq -0x10(%rbp), %rsi
leaq 0xc3a9(%rip), %rdi      # 0x2a2c3
callq 0x2160
cmpl $0x0, %eax
jne 0x1df26
jmp 0x1df45
leaq 0xc3ac(%rip), %rdi      # 0x2a2d9
leaq 0xc242(%rip), %rsi      # 0x2a176
movl $0xe7, %edx
leaq 0xc23d(%rip), %rcx      # 0x2a17d
callq 0x2100
movl $0xe9, -0x12c(%rbp)
leaq -0x138(%rbp), %rdi
callq 0x28660
addq $0x140, %rsp            # imm = 0x140
popq %rbp
retq
nopw %cs:(%rax,%rax)