// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: simple_list_readable_display
static void simple_list_readable_display(s7_scheme *sc, s7_pointer lst, s7_int true_len, s7_int len, s7_pointer port, shared_info *ci)
    {
        /* the easier cases: no circles or shared refs to patch up */
        s7_pointer x;

        if (is_immutable(lst))
            port_write_string(port)(sc, "immutable! (", 12, port);

        if (true_len > 0)
        {
            port_write_string(port)(sc, "list", 4, port);
            for (x = lst; is_pair(x); x = cdr(x))
            {
                port_write_character(port)(sc, ' ', port);
                object_to_port_with_circle_check(sc, car(x), port, P_READABLE, ci);
            }
            port_write_character(port)(sc, ')', port);
        }
        else
        {
            s7_int i;
            port_write_string(port)(sc, "cons ", 5, port);
            object_to_port_with_circle_check(sc, car(lst), port, P_READABLE, ci);
            for (x = cdr(lst); is_pair(x); x = cdr(x))
            {
                port_write_string(port)(sc, " (cons ", 7, port);
                object_to_port_with_circle_check(sc, car(x), port, P_READABLE, ci);
            }
            port_write_character(port)(sc, ' ', port);
            object_to_port_with_circle_check(sc, x, port, P_READABLE, ci);
            for (i = 1; i < len; i++)
                port_write_character(port)(sc, ')', port);
        }
        if (is_immutable(lst))
            port_write_character(port)(sc, ')', port);
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %r9, %r12
movq %r8, %rbx
movq %rcx, %r13
movq %rdx, %r15
movq %rsi, %rbp
movq %rdi, %r14
testb $0x1, 0x3(%rsi)
je 0xf4690
movq 0x8(%rbx), %rax
movq 0x48(%rax), %rax
leaq 0x25fb6(%rip), %rsi     # 0x11a638
movl $0xc, %edx
movq %r14, %rdi
movq %rbx, %rcx
callq *0x10(%rax)
movq 0x8(%rbx), %rax
movq 0x48(%rax), %rax
movq 0x10(%rax), %rax
testq %r15, %r15
movq %rbp, (%rsp)
jle 0xf475e
leaq 0x1860a(%rip), %rsi     # 0x10ccba
movl $0x4, %edx
movq %r14, %rdi
movq %rbx, %rcx
callq *%rax
cmpb $0x1, (%rbp)
jne 0xf473f
leaq 0x5dcb6(%rip), %r15     # 0x152380
leaq 0x5dc6f(%rip), %r13     # 0x152340
movq (%rsp), %rbp
movq 0x8(%rbx), %rax
movq 0x48(%rax), %rax
movq %r14, %rdi
movl $0x20, %esi
movq %rbx, %rdx
callq *0x8(%rax)
movq 0x8(%rbp), %rsi
movzbl (%rsi), %eax
testq %r12, %r12
je 0xf4723
cmpb $0x1, (%rax,%r13)
jne 0xf4723
cmpl $0x15, %eax
jne 0xf470e
movl $0x15, %eax
testb $0x1, 0x7(%rsi)
jne 0xf4723
movq %r14, %rdi
movq %rbx, %rdx
movl $0x2, %ecx
movq %r12, %r8
callq 0x9596b
jmp 0xf4735
movq %r14, %rdi
movq %rbx, %rdx
movl $0x2, %ecx
movq %r12, %r8
callq *(%r15,%rax,8)
movq 0x10(%rbp), %rbp
cmpb $0x1, (%rbp)
je 0xf46d5
movq 0x8(%rbx), %rax
movq 0x48(%rax), %rax
movq %r14, %rdi
movl $0x29, %esi
movq %rbx, %rdx
callq *0x8(%rax)
movq (%rsp), %r15
jmp 0xf48f0
leaq 0x25ee2(%rip), %rsi     # 0x11a647
movl $0x5, %edx
movq %r14, %rdi
movq %rbx, %rcx
callq *%rax
movq 0x8(%rbp), %rsi
movzbl (%rsi), %eax
testq %r12, %r12
je 0xf47b0
leaq 0x5dbbb(%rip), %rcx     # 0x152340
cmpb $0x1, (%rax,%rcx)
jne 0xf47b0
cmpl $0x15, %eax
jne 0xf479b
movl $0x15, %eax
testb $0x1, 0x7(%rsi)
jne 0xf47b0
movq %r14, %rdi
movq %rbx, %rdx
movl $0x2, %ecx
movq %r12, %r8
callq 0x9596b
jmp 0xf47c9
leaq 0x5dbc9(%rip), %r9      # 0x152380
movq %r14, %rdi
movq %rbx, %rdx
movl $0x2, %ecx
movq %r12, %r8
callq *(%r9,%rax,8)
movq 0x10(%rbp), %rbp
cmpb $0x1, (%rbp)
jne 0xf4858
leaq 0x25e67(%rip), %r15     # 0x11a645
movq 0x8(%rbx), %rax
movq 0x48(%rax), %rax
movl $0x7, %edx
movq %r14, %rdi
movq %r15, %rsi
movq %rbx, %rcx
callq *0x10(%rax)
movq 0x8(%rbp), %rsi
movzbl (%rsi), %eax
testq %r12, %r12
je 0xf4835
leaq 0x5db36(%rip), %rcx     # 0x152340
cmpb $0x1, (%rax,%rcx)
jne 0xf4835
cmpl $0x15, %eax
jne 0xf4820
movl $0x15, %eax
testb $0x1, 0x7(%rsi)
jne 0xf4835
movq %r14, %rdi
movq %rbx, %rdx
movl $0x2, %ecx
movq %r12, %r8
callq 0x9596b
jmp 0xf484e
movq %r14, %rdi
movq %rbx, %rdx
movl $0x2, %ecx
movq %r12, %r8
leaq 0x5db36(%rip), %r9      # 0x152380
callq *(%r9,%rax,8)
movq 0x10(%rbp), %rbp
cmpb $0x1, (%rbp)
je 0xf47de
movq 0x8(%rbx), %rax
movq 0x48(%rax), %rax
movq %r14, %rdi
movl $0x20, %esi
movq %rbx, %rdx
callq *0x8(%rax)
movzbl (%rbp), %eax
testq %r12, %r12
je 0xf48ac
leaq 0x5dac2(%rip), %rcx     # 0x152340
cmpb $0x1, (%rax,%rcx)
jne 0xf48ac
cmpl $0x15, %eax
jne 0xf4894
movl $0x15, %eax
testb $0x1, 0x7(%rbp)
jne 0xf48ac
movq %r14, %rdi
movq %rbp, %rsi
movq %rbx, %rdx
movl $0x2, %ecx
movq %r12, %r8
callq 0x9596b
jmp 0xf48c8
movq %r14, %rdi
movq %rbp, %rsi
movq %rbx, %rdx
movl $0x2, %ecx
movq %r12, %r8
leaq 0x5dabc(%rip), %r9      # 0x152380
callq *(%r9,%rax,8)
cmpq $0x2, %r13
movq (%rsp), %r15
jl 0xf48f0
decq %r13
movq 0x8(%rbx), %rax
movq 0x48(%rax), %rax
movq %r14, %rdi
movl $0x29, %esi
movq %rbx, %rdx
callq *0x8(%rax)
decq %r13
jne 0xf48d5
testb $0x1, 0x3(%r15)
jne 0xf4906
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x8(%rbx), %rax
movq 0x48(%rax), %rax
movq 0x8(%rax), %rax
movq %r14, %rdi
movl $0x29, %esi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rax