LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: g_memq_2
static s7_pointer g_memq_2(s7_scheme *sc, s7_pointer args)
                {
                    s7_pointer x, obj;
                    x = cadr(args);
                    obj = car(args);
                    if (obj == car(x)) return(x);
                    if (obj == cadr(x)) return(cdr(x));
                    return(sc->F);
                }

// Assembly:
movq 0x8(%rsi), %rcx
movq 0x10(%rsi), %rax
movq 0x8(%rax), %rax
cmpq 0x8(%rax), %rcx
je 0xb5f3e
movq 0x10(%rax), %rax
cmpq 0x8(%rax), %rcx
je 0xb5f3e
movq 0x120(%rdi), %rax
retq
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_memq_sq_2
static s7_pointer fx_memq_sq_2(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer p, obj;
                    obj = lookup(sc, cadr(arg));
                    p = opt2_con(cdr(arg));
                    if (obj == car(p)) return(p);
                    if (obj == cadr(p)) return(cdr(p));
                    return(sc->F);
                }

// Assembly:
movq 0x10(%rsi), %rax
movq 0x8(%rax), %rcx
movq 0x8(%rdi), %rdx
movq 0x18(%rdx), %r8
movq 0x20(%rcx), %rsi
cmpq %rsi, %r8
je 0xb5f6c
jle 0xb5f67
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %r8
cmpq %r8, %rsi
jl 0xb5f5a
cmpq %rsi, %r8
jne 0xb5f90
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x20(%rax), %rax
cmpq 0x8(%rax), %rcx
je 0xb5f8f
movq 0x10(%rax), %rax
cmpq 0x8(%rax), %rcx
je 0xb5f8f
movq 0x120(%rdi), %rax
retq
cmpb $0x1c, (%rdx)
jne 0xb5fb0
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb5faa
cmpq %rcx, 0x8(%rsi)
je 0xb5f70
movq 0x18(%rsi), %rsi
jmp 0xb5f99
movq 0x10(%rdx), %rdx
jmp 0xb5f90
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb5f70
xorl %ecx, %ecx
jmp 0xb5f74
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_hash_table_ref_car
static s7_pointer fx_hash_table_ref_car(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer table, lst;
                    table = lookup(sc, cadr(arg));
                    lst = lookup(sc, opt2_sym(cdr(arg)));
                    if (!is_pair(lst))
                        return(simple_wrong_type_argument(sc, sc->car_symbol, lst, T_PAIR));
                    if (!is_hash_table(table))
                        return(g_hash_table_ref(sc, set_plist_2(sc, table, car(lst))));
                    return(hash_entry_value((*hash_table_checker(table))(sc, table, car(lst))));
                }

// Assembly:
pushq %rax
movq 0x10(%rsi), %rdx
movq 0x8(%rdx), %rsi
movq 0x8(%rdi), %rax
movq 0x18(%rax), %rcx
movq 0x20(%rsi), %r9
cmpq %r9, %rcx
je 0xb64e6
movq %rax, %r8
movq %rcx, %r10
jle 0xb64e1
movq %rax, %r8
movq 0x10(%r8), %r8
movq 0x18(%r8), %r10
cmpq %r10, %r9
jl 0xb64d4
cmpq %r9, %r10
jne 0xb652e
movq 0x18(%rsi), %r9
movq 0x10(%r9), %rsi
movq 0x20(%rdx), %rdx
movq 0x20(%rdx), %r8
cmpq %r8, %rcx
je 0xb650f
jle 0xb650a
movq 0x10(%rax), %rax
movq 0x18(%rax), %rcx
cmpq %rcx, %r8
jl 0xb64fd
cmpq %r8, %rcx
jne 0xb6553
movq 0x18(%rdx), %rcx
movq 0x10(%rcx), %rdx
cmpb $0x1, (%rdx)
jne 0xb6573
cmpb $0x1b, (%rsi)
jne 0xb6592
movq 0x8(%rdx), %rdx
callq *0x18(%rsi)
movq 0x20(%rax), %rax
popq %rcx
retq
cmpb $0x1c, (%r8)
jne 0xb65b9
movq 0x8(%r8), %r9
testq %r9, %r9
je 0xb654d
cmpq %rsi, 0x8(%r9)
je 0xb64ea
movq 0x18(%r9), %r9
jmp 0xb653c
movq 0x10(%r8), %r8
jmp 0xb652e
cmpb $0x1c, (%rax)
jne 0xb65ce
movq 0x8(%rax), %rcx
testq %rcx, %rcx
je 0xb656d
cmpq %rdx, 0x8(%rcx)
je 0xb6513
movq 0x18(%rcx), %rcx
jmp 0xb655c
movq 0x10(%rax), %rax
jmp 0xb6553
movq 0xd20(%rdi), %rax
movq 0x8(%rax), %rsi
movq 0x140(%rdi), %rcx
movq 0x944dc(%rip), %r8      # 0x14aa68
popq %rax
jmp 0xed2a
movq 0x8(%rdx), %rax
movq 0x708(%rdi), %rcx
movq %rsi, 0x8(%rcx)
movq 0x710(%rdi), %rcx
movq %rax, 0x8(%rcx)
movq 0x708(%rdi), %rsi
popq %rax
jmp 0x7bf40
movq 0x10(%rsi), %r9
cmpb $0x20, (%r9)
je 0xb64ea
xorl %esi, %esi
jmp 0xb64ee
movq 0x10(%rdx), %rcx
cmpb $0x20, (%rcx)
je 0xb6513
xorl %edx, %edx
jmp 0xb6517
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_add_s_car_s
static s7_pointer fx_add_s_car_s(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer val1, val2;
                    val2 = lookup(sc, opt2_sym(cdr(arg)));
                    val2 = (is_pair(val2)) ? car(val2) : g_car(sc, set_plist_1(sc, val2));
                    val1 = lookup(sc, cadr(arg));
                    if ((is_t_integer(val1)) && (is_t_integer(val2)))
                        return(make_integer(sc, integer(val1) + integer(val2)));
                    return(add_p_pp(sc, val1, val2));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x20(%rax), %rax
movq 0x8(%rdi), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb6619
jle 0xb6614
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb6607
cmpq %rdx, %rsi
jne 0xb662c
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
cmpb $0x1, (%rax)
jne 0xb6650
movq 0x8(%rax), %rdx
jmp 0xb6689
cmpb $0x1c, (%rcx)
jne 0xb6718
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb664a
cmpq %rax, 0x8(%rdx)
je 0xb661d
movq 0x18(%rdx), %rdx
jmp 0xb6639
movq 0x10(%rcx), %rcx
jmp 0xb662c
movq 0x700(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x700(%rbx), %rcx
movq 0x8(%rcx), %rsi
cmpb $0x1, (%rsi)
jne 0xb6671
movq 0x8(%rsi), %rdx
jmp 0xb6689
movq 0xd20(%rbx), %rdx
movq %rbx, %rdi
movl $0x1, %r8d
callq 0x95069
movq %rax, %rdx
movq 0x10(%r14), %rax
movq 0x8(%rax), %rax
movq 0x8(%rbx), %rcx
movq 0x18(%rcx), %rdi
movq 0x20(%rax), %rsi
cmpq %rsi, %rdi
je 0xb66b6
jle 0xb66b1
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rdi
cmpq %rdi, %rsi
jl 0xb66a4
cmpq %rsi, %rdi
jne 0xb66f8
movq 0x18(%rax), %rsi
movq 0x10(%rsi), %rsi
cmpb $0xb, (%rsi)
jne 0xb66e9
cmpb $0xb, (%rdx)
jne 0xb66e9
movq 0x8(%rdx), %r14
addq 0x8(%rsi), %r14
cmpq $0x7ff, %r14            # imm = 0x7FF
ja 0xb6739
leaq 0x90270(%rip), %rax     # 0x146950
movq (%rax,%r14,8), %rax
jmp 0xb6772
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmp 0x869cc
cmpb $0x1c, (%rcx)
jne 0xb672c
movq 0x8(%rcx), %rsi
testq %rsi, %rsi
je 0xb6712
cmpq %rax, 0x8(%rsi)
je 0xb66ba
movq 0x18(%rsi), %rsi
jmp 0xb6701
movq 0x10(%rcx), %rcx
jmp 0xb66f8
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb661d
xorl %eax, %eax
jmp 0xb6621
movq 0x10(%rax), %rsi
cmpb $0x20, (%rsi)
je 0xb66ba
xorl %esi, %esi
jmp 0xb66be
movq 0x90(%rbx), %rax
cmpq 0x98(%rbx), %rax
ja 0xb6758
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0xb, (%rax)
movq %r14, 0x8(%rax)
addq $0x8, %rsp
popq %rbx
popq %r14
retq
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_c_s_car_s
static s7_pointer fx_c_s_car_s(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer val;
                    val = lookup(sc, opt2_sym(cdr(arg)));
                    set_car(sc->t2_2, (is_pair(val)) ? car(val) : g_car(sc, set_plist_1(sc, val)));
                    set_car(sc->t2_1, lookup(sc, cadr(arg)));
                    return(c_call(arg)(sc, sc->t2_1));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x20(%rax), %rax
movq 0x8(%rdi), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb67b1
jle 0xb67ac
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb679f
cmpq %rdx, %rsi
jne 0xb67c4
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
cmpb $0x1, (%rax)
jne 0xb67e8
movq 0x8(%rax), %rax
jmp 0xb681e
cmpb $0x1c, (%rcx)
jne 0xb68a0
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb67e2
cmpq %rax, 0x8(%rdx)
je 0xb67b5
movq 0x18(%rdx), %rdx
jmp 0xb67d1
movq 0x10(%rcx), %rcx
jmp 0xb67c4
movq 0x700(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x700(%rbx), %rcx
movq 0x8(%rcx), %rsi
cmpb $0x1, (%rsi)
jne 0xb6809
movq 0x8(%rsi), %rax
jmp 0xb681e
movq 0xd20(%rbx), %rdx
movq %rbx, %rdi
movl $0x1, %r8d
callq 0x95069
movq 0x578(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x10(%r14), %rax
movq 0x8(%rax), %rax
movq 0x8(%rbx), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb6856
jle 0xb6851
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb6844
cmpq %rdx, %rsi
jne 0xb6880
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
movq 0x570(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x20(%r14), %rax
movq 0x570(%rbx), %rsi
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmpq *%rax
cmpb $0x1c, (%rcx)
jne 0xb68b4
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb689a
cmpq %rax, 0x8(%rdx)
je 0xb685a
movq 0x18(%rdx), %rdx
jmp 0xb6889
movq 0x10(%rcx), %rcx
jmp 0xb6880
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb67b5
xorl %eax, %eax
jmp 0xb67b9
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb685a
xorl %eax, %eax
jmp 0xb685e
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_c_s_opsq
static s7_pointer fx_c_s_opsq(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer largs;
                    largs = caddr(arg);
                    set_car(sc->t1_1, lookup(sc, cadr(largs)));
                    set_car(sc->t2_2, c_call(largs)(sc, sc->t1_1));
                    set_car(sc->t2_1, lookup(sc, cadr(arg)));
                    return(c_call(arg)(sc, sc->t2_1));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rdi), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb6a06
jle 0xb69fd
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb69f0
cmpq %rsi, %rdi
jne 0xb6a88
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x568(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x568(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x578(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x10(%r14), %rax
movq 0x8(%rax), %rax
movq 0x8(%rbx), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb6a5e
jle 0xb6a59
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb6a4c
cmpq %rdx, %rsi
jne 0xb6aac
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
movq 0x570(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x20(%r14), %rax
movq 0x570(%rbx), %rsi
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmpq *%rax
cmpb $0x1c, (%rdx)
jne 0xb6acc
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb6aa6
cmpq %rcx, 0x8(%rsi)
je 0xb6a0a
movq 0x18(%rsi), %rsi
jmp 0xb6a91
movq 0x10(%rdx), %rdx
jmp 0xb6a88
cmpb $0x1c, (%rcx)
jne 0xb6ae0
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb6ac6
cmpq %rax, 0x8(%rdx)
je 0xb6a62
movq 0x18(%rdx), %rdx
jmp 0xb6ab5
movq 0x10(%rcx), %rcx
jmp 0xb6aac
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb6a0a
xorl %ecx, %ecx
jmp 0xb6a0e
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb6a62
xorl %eax, %eax
jmp 0xb6a66
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_memq_car_s_2
static s7_pointer fx_memq_car_s_2(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer x, obj;
                    obj = lookup(sc, opt1_con(cdr(arg)));
                    if (is_pair(obj))
                        obj = car(obj);
                    else obj = g_car(sc, set_plist_1(sc, obj));
                    x = opt2_con(cdr(arg));
                    if (obj == car(x)) return(x);
                    if (obj == cadr(x)) return(cdr(x));
                    return(sc->F);
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x18(%rax), %rax
movq 0x8(%rdi), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb6b2b
jle 0xb6b26
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb6b19
cmpq %rdx, %rsi
jne 0xb6b3e
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
cmpb $0x1, (%rax)
jne 0xb6b5e
movq 0x8(%rax), %rax
jmp 0xb6b94
cmpb $0x1c, (%rcx)
jne 0xb6bbe
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb6b58
cmpq %rax, 0x8(%rdx)
je 0xb6b2f
movq 0x18(%rdx), %rdx
jmp 0xb6b47
movq 0x10(%rcx), %rcx
jmp 0xb6b3e
movq 0x700(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x700(%rbx), %rcx
movq 0x8(%rcx), %rsi
cmpb $0x1, (%rsi)
jne 0xb6b7f
movq 0x8(%rsi), %rax
jmp 0xb6b94
movq 0xd20(%rbx), %rdx
movq %rbx, %rdi
movl $0x1, %r8d
callq 0x95069
movq 0x10(%r14), %rcx
movq 0x20(%rcx), %rcx
cmpq 0x8(%rcx), %rax
je 0xb6bb3
movq 0x10(%rcx), %rcx
cmpq 0x8(%rcx), %rax
je 0xb6bb3
movq 0x120(%rbx), %rcx
movq %rcx, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb6b2f
xorl %eax, %eax
jmp 0xb6b33
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_memq_car_s
static s7_pointer fx_memq_car_s(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer x, obj;
                    obj = lookup(sc, opt1_con(cdr(arg)));
                    if (is_pair(obj))
                        obj = car(obj);
                    else obj = g_car(sc, set_plist_1(sc, obj));
                    x = opt2_con(cdr(arg));
                    while (true)
                    {
                        LOOP_4(if (obj == car(x)) return(x); x = cdr(x); if (!is_pair(x)) return(sc->F));
                    }
                    return(sc->F);
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x18(%rax), %rax
movq 0x8(%rdi), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb6c09
jle 0xb6c04
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb6bf7
cmpq %rdx, %rsi
jne 0xb6c1c
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
cmpb $0x1, (%rax)
jne 0xb6c40
movq 0x8(%rax), %rcx
jmp 0xb6c79
cmpb $0x1c, (%rcx)
jne 0xb6ccc
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb6c3a
cmpq %rax, 0x8(%rdx)
je 0xb6c0d
movq 0x18(%rdx), %rdx
jmp 0xb6c29
movq 0x10(%rcx), %rcx
jmp 0xb6c1c
movq 0x700(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x700(%rbx), %rcx
movq 0x8(%rcx), %rsi
cmpb $0x1, (%rsi)
jne 0xb6c61
movq 0x8(%rsi), %rcx
jmp 0xb6c79
movq 0xd20(%rbx), %rdx
movq %rbx, %rdi
movl $0x1, %r8d
callq 0x95069
movq %rax, %rcx
movq 0x10(%r14), %rax
movq 0x20(%rax), %rax
cmpq 0x8(%rax), %rcx
je 0xb6cc4
movq 0x10(%rax), %rax
cmpb $0x1, (%rax)
jne 0xb6cbd
cmpq 0x8(%rax), %rcx
je 0xb6cc4
movq 0x10(%rax), %rax
cmpb $0x1, (%rax)
jne 0xb6cbd
cmpq 0x8(%rax), %rcx
je 0xb6cc4
movq 0x10(%rax), %rax
cmpb $0x1, (%rax)
jne 0xb6cbd
cmpq 0x8(%rax), %rcx
je 0xb6cc4
movq 0x10(%rax), %rax
cmpb $0x1, (%rax)
je 0xb6c81
movq 0x120(%rbx), %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb6c0d
xorl %eax, %eax
jmp 0xb6c11
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_is_eq_car_q
static s7_pointer fx_is_eq_car_q(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer lst, a;
                    a = cdr(arg);
                    lst = lookup(sc, opt3_sym(a));
                    if (is_pair(lst))
                        return(make_boolean(sc, car(lst) == opt2_con(a)));
                    return(make_boolean(sc, s7_is_eq(g_car(sc, set_plist_1(sc, lst)), opt2_con(a))));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq 0x10(%rsi), %r14
movq 0x28(%r14), %rax
movq 0x8(%rdi), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb6d14
jle 0xb6d0f
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb6d02
cmpq %rdx, %rsi
jne 0xb6d3b
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
cmpb $0x1, (%rax)
jne 0xb6d5f
movq 0x8(%rax), %rax
xorl %ecx, %ecx
cmpq 0x20(%r14), %rax
setne %cl
leaq 0x118(,%rcx,8), %rcx
jmp 0xb6dbf
cmpb $0x1c, (%rcx)
jne 0xb6dcb
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb6d59
cmpq %rax, 0x8(%rdx)
je 0xb6d18
movq 0x18(%rdx), %rdx
jmp 0xb6d48
movq 0x10(%rcx), %rcx
jmp 0xb6d3b
movq 0x700(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x700(%rbx), %rcx
movq 0x8(%rcx), %rsi
cmpb $0x1, (%rsi)
jne 0xb6d80
movq 0x8(%rsi), %rax
jmp 0xb6d95
movq 0xd20(%rbx), %rdx
movq %rbx, %rdi
movl $0x1, %r8d
callq 0x95069
movq 0x20(%r14), %rdx
cmpq %rdx, %rax
je 0xb6dba
movl $0x120, %ecx            # imm = 0x120
cmpb $0x5, (%rax)
jne 0xb6dbf
xorl %eax, %eax
cmpb $0x5, (%rdx)
setne %al
leaq 0x118(,%rax,8), %rcx
jmp 0xb6dbf
movl $0x118, %ecx            # imm = 0x118
movq (%rbx,%rcx), %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb6d18
xorl %eax, %eax
jmp 0xb6d1c
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_is_eq_caar_q
static s7_pointer fx_is_eq_caar_q(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer lst, a;
                    a = cdr(arg);
                    lst = lookup(sc, opt3_sym(a));
                    if ((is_pair(lst)) && (is_pair(car(lst))))
                        return(make_boolean(sc, caar(lst) == opt2_con(a)));
                    return(make_boolean(sc, s7_is_eq(g_caar(sc, set_plist_1(sc, lst)), opt2_con(a))));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq 0x10(%rsi), %r14
movq 0x28(%r14), %rax
movq 0x8(%rdi), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb6e13
jle 0xb6e0e
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb6e01
cmpq %rdx, %rsi
jne 0xb6e7f
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
cmpb $0x1, (%rax)
jne 0xb6e40
movq 0x8(%rax), %rcx
cmpb $0x1, (%rcx)
jne 0xb6e40
movq 0x8(%rcx), %rax
xorl %ecx, %ecx
cmpq 0x20(%r14), %rax
setne %cl
leaq 0x118(,%rcx,8), %rcx
jmp 0xb6ea4
movq 0x700(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x700(%rbx), %rsi
movq %rbx, %rdi
callq 0x7442b
movq 0x20(%r14), %rdx
cmpq %rdx, %rax
je 0xb6e9f
movl $0x120, %ecx            # imm = 0x120
cmpb $0x5, (%rax)
jne 0xb6ea4
xorl %eax, %eax
cmpb $0x5, (%rdx)
setne %al
leaq 0x118(,%rax,8), %rcx
jmp 0xb6ea4
cmpb $0x1c, (%rcx)
jne 0xb6eb0
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb6e99
cmpq %rax, 0x8(%rdx)
je 0xb6e17
movq 0x18(%rdx), %rdx
jmp 0xb6e88
movq 0x10(%rcx), %rcx
jmp 0xb6e7f
movl $0x118, %ecx            # imm = 0x118
movq (%rbx,%rcx), %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb6e17
xorl %eax, %eax
jmp 0xb6e1b
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_c_opsq_c
static s7_pointer fx_c_opsq_c(s7_scheme *sc, s7_pointer arg)
                {
                    set_car(sc->t1_1, lookup(sc, opt1_con(cdr(arg))));
                    set_car(sc->t2_1, c_call(cadr(arg))(sc, sc->t1_1));
                    set_car(sc->t2_2, opt2_con(cdr(arg)));
                    return(c_call(arg)(sc, sc->t2_1));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x18(%rax), %rax
movq 0x8(%rdi), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb7289
jle 0xb7284
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb7277
cmpq %rdx, %rsi
jne 0xb72e6
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
movq 0x568(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x10(%r14), %rax
movq 0x8(%rax), %rax
movq 0x568(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x570(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x10(%r14), %rax
movq 0x20(%rax), %rax
movq 0x578(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x20(%r14), %rax
movq 0x570(%rbx), %rsi
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmpq *%rax
cmpb $0x1c, (%rcx)
jne 0xb7306
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb7300
cmpq %rax, 0x8(%rdx)
je 0xb728d
movq 0x18(%rdx), %rdx
jmp 0xb72ef
movq 0x10(%rcx), %rcx
jmp 0xb72e6
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb728d
xorl %eax, %eax
jmp 0xb7291
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_not_is_eq_sq
static s7_pointer fx_not_is_eq_sq(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer x, y;
                    x = lookup(sc, opt2_sym(cdr(arg)));
                    y = opt3_any(cdr(arg));
                    return(make_boolean(sc, (x != y) && ((!is_unspecified(x)) || (!is_unspecified(y)))));
                }

// Assembly:
movq 0x10(%rsi), %rax
movq 0x20(%rax), %rcx
movq 0x8(%rdi), %rdx
movq 0x18(%rdx), %r8
movq 0x20(%rcx), %rsi
cmpq %rsi, %r8
je 0xb7347
jle 0xb7342
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %r8
cmpq %r8, %rsi
jl 0xb7335
cmpq %rsi, %r8
jne 0xb7371
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x28(%rax), %rdx
cmpq %rdx, %rcx
je 0xb7367
movl $0x118, %eax            # imm = 0x118
cmpb $0x5, (%rcx)
jne 0xb736c
cmpb $0x5, (%rdx)
jne 0xb736c
movl $0x120, %eax            # imm = 0x120
movq (%rdi,%rax), %rax
retq
cmpb $0x1c, (%rdx)
jne 0xb7391
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb738b
cmpq %rcx, 0x8(%rsi)
je 0xb734b
movq 0x18(%rsi), %rsi
jmp 0xb737a
movq 0x10(%rdx), %rdx
jmp 0xb7371
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb734b
xorl %ecx, %ecx
jmp 0xb734f
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_c_opscq
static s7_pointer fx_c_opscq(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer largs;
                    largs = cadr(arg);
                    set_car(sc->t2_1, lookup(sc, cadr(largs)));
                    set_car(sc->t2_2, opt2_con(cdr(largs)));
                    set_car(sc->t1_1, c_call(largs)(sc, sc->t2_1));
                    return(c_call(arg)(sc, sc->t1_1));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rdi), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb73dd
jle 0xb73d8
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb73cb
cmpq %rsi, %rdi
jne 0xb7432
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x570(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x10(%rax), %rcx
movq 0x20(%rcx), %rcx
movq 0x578(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x570(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x568(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x20(%r14), %rax
movq 0x568(%rbx), %rsi
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmpq *%rax
cmpb $0x1c, (%rdx)
jne 0xb7452
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb744c
cmpq %rcx, 0x8(%rsi)
je 0xb73e1
movq 0x18(%rsi), %rsi
jmp 0xb743b
movq 0x10(%rdx), %rdx
jmp 0xb7432
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb73e1
xorl %ecx, %ecx
jmp 0xb73e5
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_not_is_eq_ss
static s7_pointer fx_not_is_eq_ss(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer x, y;
                    x = lookup(sc, opt2_sym(cdr(arg)));
                    y = lookup(sc, opt3_sym(cdr(arg)));
                    return(make_boolean(sc, (x != y) && ((!is_unspecified(x)) || (!is_unspecified(y)))));
                }

// Assembly:
movq 0x10(%rsi), %rsi
movq 0x20(%rsi), %rdx
movq 0x8(%rdi), %rax
movq 0x18(%rax), %rcx
movq 0x20(%rdx), %r9
cmpq %r9, %rcx
je 0xb7495
movq %rax, %r8
movq %rcx, %r10
jle 0xb7490
movq %rax, %r8
movq 0x10(%r8), %r8
movq 0x18(%r8), %r10
cmpq %r10, %r9
jl 0xb7483
cmpq %r9, %r10
jne 0xb74e4
movq 0x18(%rdx), %r9
movq 0x10(%r9), %rdx
movq 0x28(%rsi), %rsi
movq 0x20(%rsi), %r8
cmpq %r8, %rcx
je 0xb74be
jle 0xb74b9
movq 0x10(%rax), %rax
movq 0x18(%rax), %rcx
cmpq %rcx, %r8
jl 0xb74ac
cmpq %r8, %rcx
jne 0xb7505
movq 0x18(%rsi), %rcx
movq 0x10(%rcx), %rax
cmpq %rax, %rdx
je 0xb74da
movl $0x118, %ecx            # imm = 0x118
cmpb $0x5, (%rdx)
jne 0xb74df
cmpb $0x5, (%rax)
jne 0xb74df
movl $0x120, %ecx            # imm = 0x120
movq (%rdi,%rcx), %rax
retq
cmpb $0x1c, (%r8)
jne 0xb7525
movq 0x8(%r8), %r9
testq %r9, %r9
je 0xb74ff
cmpq %rdx, 0x8(%r9)
je 0xb7499
movq 0x18(%r9), %r9
jmp 0xb74ee
movq 0x10(%r8), %r8
jmp 0xb74e4
cmpb $0x1c, (%rax)
jne 0xb753a
movq 0x8(%rax), %rcx
testq %rcx, %rcx
je 0xb751f
cmpq %rsi, 0x8(%rcx)
je 0xb74c2
movq 0x18(%rcx), %rcx
jmp 0xb750e
movq 0x10(%rax), %rax
jmp 0xb7505
movq 0x10(%rdx), %r9
cmpb $0x20, (%r9)
je 0xb7499
xorl %edx, %edx
jmp 0xb749d
movq 0x10(%rsi), %rcx
cmpb $0x20, (%rcx)
je 0xb74c2
xorl %eax, %eax
jmp 0xb74c6
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_not_opssq
static s7_pointer fx_not_opssq(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer largs;
                    largs = cadr(arg);
                    set_car(sc->t2_1, lookup(sc, cadr(largs)));
                    set_car(sc->t2_2, lookup(sc, opt2_sym(cdr(largs))));
                    if (c_call(largs)(sc, sc->t2_1) == sc->F) return(sc->T);
                    return(sc->F);
                }

// Assembly:
pushq %rbx
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rdi), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb7587
jle 0xb7582
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb7575
cmpq %rsi, %rdi
jne 0xb75ff
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x570(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x10(%rax), %rcx
movq 0x20(%rcx), %rcx
movq 0x8(%rbx), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb75c7
jle 0xb75c2
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb75b5
cmpq %rsi, %rdi
jne 0xb7623
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x578(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x570(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq %rax, %rcx
movq 0x120(%rbx), %rax
cmpq %rax, %rcx
jne 0xb75fd
movq 0x118(%rbx), %rax
popq %rbx
retq
cmpb $0x1c, (%rdx)
jne 0xb7643
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb761d
cmpq %rcx, 0x8(%rsi)
je 0xb758b
movq 0x18(%rsi), %rsi
jmp 0xb7608
movq 0x10(%rdx), %rdx
jmp 0xb75ff
cmpb $0x1c, (%rdx)
jne 0xb7657
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb763d
cmpq %rcx, 0x8(%rsi)
je 0xb75cb
movq 0x18(%rsi), %rsi
jmp 0xb762c
movq 0x10(%rdx), %rdx
jmp 0xb7623
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb758b
xorl %ecx, %ecx
jmp 0xb758f
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb75cb
xorl %ecx, %ecx
jmp 0xb75cf
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_c_opssq
static s7_pointer fx_c_opssq(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer largs;
                    largs = cadr(arg);
                    set_car(sc->t2_1, lookup(sc, cadr(largs)));
                    set_car(sc->t2_2, lookup(sc, opt2_sym(cdr(largs)))); /* caddr(largs) */
                    set_car(sc->t1_1, c_call(largs)(sc, sc->t2_1));
                    return(c_call(arg)(sc, sc->t1_1));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rdi), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb76ae
jle 0xb76a5
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb7698
cmpq %rsi, %rdi
jne 0xb7730
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x570(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x10(%rax), %rcx
movq 0x20(%rcx), %rcx
movq 0x8(%rbx), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb76ee
jle 0xb76e9
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb76dc
cmpq %rsi, %rdi
jne 0xb7754
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x578(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x570(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x568(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x20(%r14), %rax
movq 0x568(%rbx), %rsi
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmpq *%rax
cmpb $0x1c, (%rdx)
jne 0xb7774
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb774e
cmpq %rcx, 0x8(%rsi)
je 0xb76b2
movq 0x18(%rsi), %rsi
jmp 0xb7739
movq 0x10(%rdx), %rdx
jmp 0xb7730
cmpb $0x1c, (%rdx)
jne 0xb7788
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb776e
cmpq %rcx, 0x8(%rsi)
je 0xb76f2
movq 0x18(%rsi), %rsi
jmp 0xb775d
movq 0x10(%rdx), %rdx
jmp 0xb7754
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb76b2
xorl %ecx, %ecx
jmp 0xb76b6
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb76f2
xorl %ecx, %ecx
jmp 0xb76f6
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: direct_c_c_opssq
static s7_pointer direct_c_c_opssq(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer largs;
                    s7_double x2;
                    arg = cdr(arg);
                    largs = cdadr(arg);
                    x2 = ((s7_d_pd_t)opt3_direct(cdr(arg)))(lookup(sc, car(largs)),
                            real_to_double(sc, lookup(sc, opt2_sym(largs)), "number_to_double"));
                    return(((s7_p_dd_t)opt2_direct(arg))(sc, real_to_double(sc, car(arg), "*"), x2));
                }

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq 0x10(%rsi), %r15
movq 0x10(%r15), %rax
movq 0x8(%rax), %rcx
movq 0x10(%rcx), %rsi
movq 0x8(%rsi), %rdi
movq 0x8(%rbx), %rcx
movq 0x18(%rcx), %rdx
movq 0x20(%rdi), %r9
cmpq %r9, %rdx
je 0xb789e
movq %rcx, %r8
movq %rdx, %r10
jle 0xb7899
movq %rcx, %r8
movq 0x10(%r8), %r8
movq 0x18(%r8), %r10
cmpq %r10, %r9
jl 0xb788c
cmpq %r9, %r10
jne 0xb78df
movq 0x18(%rdi), %r9
movq 0x10(%r9), %r14
movq 0x20(%rsi), %rsi
movq 0x20(%rsi), %rdi
cmpq %rdi, %rdx
je 0xb78c7
jle 0xb78c2
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rdx
cmpq %rdx, %rdi
jl 0xb78b5
cmpq %rdi, %rdx
jne 0xb7904
movq 0x18(%rsi), %rdx
movq 0x10(%rdx), %rsi
movq 0x28(%rax), %r12
cmpb $0xd, (%rsi)
jne 0xb7928
movsd 0x8(%rsi), %xmm0
jmp 0xb7937
cmpb $0x1c, (%r8)
jne 0xb7983
movq 0x8(%r8), %r9
testq %r9, %r9
je 0xb78fe
cmpq %rdi, 0x8(%r9)
je 0xb78a2
movq 0x18(%r9), %r9
jmp 0xb78ed
movq 0x10(%r8), %r8
jmp 0xb78df
cmpb $0x1c, (%rcx)
jne 0xb7999
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb7922
cmpq %rsi, 0x8(%rdx)
je 0xb78cb
movq 0x18(%rdx), %rdx
jmp 0xb7911
movq 0x10(%rcx), %rcx
jmp 0xb7904
leaq 0x5fe94(%rip), %rdx     # 0x1177c3
movq %rbx, %rdi
callq 0xd498
movq %r14, %rdi
callq *%r12
movaps %xmm0, %xmm1
movq 0x8(%r15), %rsi
movq 0x20(%r15), %rax
cmpb $0xd, (%rsi)
jne 0xb7954
movsd 0x8(%rsi), %xmm0
jmp 0xb7973
leaq 0x5fa35(%rip), %rdx     # 0x117390
movq %rbx, %rdi
movsd %xmm1, (%rsp)
movq %rax, %r14
callq 0xd498
movq %r14, %rax
movsd (%rsp), %xmm1
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
movq 0x10(%rdi), %r9
cmpb $0x20, (%r9)
je 0xb78a2
xorl %r14d, %r14d
jmp 0xb78a6
movq 0x10(%rsi), %rdx
cmpb $0x20, (%rdx)
je 0xb78cb
xorl %esi, %esi
jmp 0xb78cf
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_c_c_opssq
static s7_pointer fx_c_c_opssq(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer largs;
                    largs = caddr(arg);
                    set_car(sc->t2_1, lookup(sc, cadr(largs)));
                    set_car(sc->t2_2, lookup(sc, opt2_sym(cdr(largs))));
                    set_car(sc->t2_2, c_call(largs)(sc, sc->t2_1));
                    set_car(sc->t2_1, cadr(arg));
                    return(c_call(arg)(sc, sc->t2_1));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rdi), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb79f4
jle 0xb79eb
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb79de
cmpq %rsi, %rdi
jne 0xb7a89
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x570(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x10(%rax), %rcx
movq 0x20(%rcx), %rcx
movq 0x8(%rbx), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb7a34
jle 0xb7a2f
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb7a22
cmpq %rsi, %rdi
jne 0xb7aad
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x578(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x570(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x578(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x10(%r14), %rax
movq 0x8(%rax), %rax
movq 0x570(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x20(%r14), %rax
movq 0x570(%rbx), %rsi
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmpq *%rax
cmpb $0x1c, (%rdx)
jne 0xb7ad1
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb7aa7
cmpq %rcx, 0x8(%rsi)
je 0xb79f8
movq 0x18(%rsi), %rsi
jmp 0xb7a92
movq 0x10(%rdx), %rdx
jmp 0xb7a89
cmpb $0x1c, (%rdx)
jne 0xb7ae5
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb7acb
cmpq %rcx, 0x8(%rsi)
je 0xb7a38
movq 0x18(%rsi), %rsi
jmp 0xb7ab6
movq 0x10(%rdx), %rdx
jmp 0xb7aad
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb79f8
xorl %ecx, %ecx
jmp 0xb79fc
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb7a38
xorl %ecx, %ecx
jmp 0xb7a3c
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: direct_c_opsq_opsq
static s7_pointer direct_c_opsq_opsq(s7_scheme *sc, s7_pointer arg)
                {
                    s7_double x1, x2;
                    s7_pointer p;
                    p = cdr(arg);
                    x1 = ((s7_d_p_t)opt3_direct(p))(lookup(sc, cadar(p)));
                    x2 = ((s7_d_p_t)opt3_direct(cdr(p)))(lookup(sc, cadadr(p)));
                    return(((s7_p_dd_t)opt2_direct(p))(sc, x1, x2));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq 0x10(%rsi), %r14
movq 0x8(%r14), %rcx
movq 0x28(%r14), %rax
movq 0x10(%rcx), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rdi), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb7b39
jle 0xb7b34
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb7b27
cmpq %rsi, %rdi
jne 0xb7ba3
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rdi
callq *%rax
movsd %xmm0, (%rsp)
movq 0x10(%r14), %rax
movq 0x8(%rax), %rcx
movq 0x28(%rax), %rax
movq 0x10(%rcx), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rbx), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb7b81
jle 0xb7b7c
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb7b6f
cmpq %rsi, %rdi
jne 0xb7bc3
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rdi
callq *%rax
movaps %xmm0, %xmm1
movq 0x20(%r14), %rax
movq %rbx, %rdi
movsd (%rsp), %xmm0
addq $0x8, %rsp
popq %rbx
popq %r14
jmpq *%rax
cmpb $0x1c, (%rdx)
jne 0xb7be3
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb7bbd
cmpq %rcx, 0x8(%rsi)
je 0xb7b3d
movq 0x18(%rsi), %rsi
jmp 0xb7bac
movq 0x10(%rdx), %rdx
jmp 0xb7ba3
cmpb $0x1c, (%rdx)
jne 0xb7bf7
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb7bdd
cmpq %rcx, 0x8(%rsi)
je 0xb7b85
movq 0x18(%rsi), %rsi
jmp 0xb7bcc
movq 0x10(%rdx), %rdx
jmp 0xb7bc3
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb7b3d
xorl %edi, %edi
jmp 0xb7b41
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb7b85
xorl %edi, %edi
jmp 0xb7b89
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_c_opsq_opsq
static s7_pointer fx_c_opsq_opsq(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer largs;
#if S7_DEBUGGING
                    if (sc->stack_end >= sc->stack_resize_trigger) fprintf(stderr, "%s[%d]: skipped stack resize\n", __func__, __LINE__);
#endif
                    largs = cdr(arg);
                    set_car(sc->t1_1, lookup(sc, cadar(largs)));
                    gc_protect_direct(sc, c_call(car(largs))(sc, sc->t1_1));
                    largs = cadr(largs);
                    set_car(sc->t1_1, lookup(sc, cadr(largs)));
                    set_car(sc->t2_2, c_call(largs)(sc, sc->t1_1));
                    set_car(sc->t2_1, sc->stack_end[-2]);
                    sc->stack_end -= 4;
                    return(c_call(arg)(sc, sc->t2_1));
                }

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %r15
movq 0x8(%r15), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rdi), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb7c48
jle 0xb7c3f
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb7c32
cmpq %rdx, %rsi
jne 0xb7d15
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
movq 0x568(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x8(%r15), %rax
movq 0x568(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x50(%rbx), %rcx
movq $0x1, 0x18(%rcx)
movq 0x50(%rbx), %rcx
leaq 0x20(%rcx), %rdx
movq %rdx, 0x50(%rbx)
movq %rax, 0x10(%rcx)
movq 0x10(%r15), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rbx), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb7cbd
jle 0xb7cb8
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb7cab
cmpq %rsi, %rdi
jne 0xb7d39
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x568(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x568(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x578(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x50(%rbx), %rax
movq -0x10(%rax), %rax
movq 0x570(%rbx), %rcx
movq %rax, 0x8(%rcx)
addq $-0x20, 0x50(%rbx)
movq 0x20(%r14), %rax
movq 0x570(%rbx), %rsi
movq %rbx, %rdi
popq %rbx
popq %r14
popq %r15
jmpq *%rax
cmpb $0x1c, (%rcx)
jne 0xb7d5d
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb7d33
cmpq %rax, 0x8(%rdx)
je 0xb7c4c
movq 0x18(%rdx), %rdx
jmp 0xb7d1e
movq 0x10(%rcx), %rcx
jmp 0xb7d15
cmpb $0x1c, (%rdx)
jne 0xb7d71
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb7d57
cmpq %rcx, 0x8(%rsi)
je 0xb7cc1
movq 0x18(%rsi), %rsi
jmp 0xb7d42
movq 0x10(%rdx), %rdx
jmp 0xb7d39
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb7c4c
xorl %eax, %eax
jmp 0xb7c50
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb7cc1
xorl %ecx, %ecx
jmp 0xb7cc5
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_not_is_eq_car_q
static s7_pointer fx_not_is_eq_car_q(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer lst, a;
                    a = opt2_pair(cdr(arg));
                    lst = lookup(sc, opt2_sym(a));
                    if (is_pair(lst))
                        return(make_boolean(sc, car(lst) != opt3_any(a)));
                    return(make_boolean(sc, !s7_is_eq(g_car(sc, set_plist_1(sc, lst)), opt3_any(a))));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x20(%rax), %r14
movq 0x20(%r14), %rax
movq 0x8(%rdi), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb7dbd
jle 0xb7db8
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb7dab
cmpq %rdx, %rsi
jne 0xb7de4
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
cmpb $0x1, (%rax)
jne 0xb7e08
movq 0x8(%rax), %rax
xorl %ecx, %ecx
cmpq 0x28(%r14), %rax
sete %cl
leaq 0x118(,%rcx,8), %rcx
jmp 0xb7e68
cmpb $0x1c, (%rcx)
jne 0xb7e74
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb7e02
cmpq %rax, 0x8(%rdx)
je 0xb7dc1
movq 0x18(%rdx), %rdx
jmp 0xb7df1
movq 0x10(%rcx), %rcx
jmp 0xb7de4
movq 0x700(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x700(%rbx), %rcx
movq 0x8(%rcx), %rsi
cmpb $0x1, (%rsi)
jne 0xb7e29
movq 0x8(%rsi), %rax
jmp 0xb7e3e
movq 0xd20(%rbx), %rdx
movq %rbx, %rdi
movl $0x1, %r8d
callq 0x95069
movq 0x28(%r14), %rdx
cmpq %rdx, %rax
je 0xb7e63
movl $0x118, %ecx            # imm = 0x118
cmpb $0x5, (%rax)
jne 0xb7e68
xorl %eax, %eax
cmpb $0x5, (%rdx)
sete %al
leaq 0x118(,%rax,8), %rcx
jmp 0xb7e68
movl $0x120, %ecx            # imm = 0x120
movq (%rbx,%rcx), %rax
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb7dc1
xorl %eax, %eax
jmp 0xb7dc5
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_c_op_opsq_q
static s7_pointer fx_c_op_opsq_q(s7_scheme *sc, s7_pointer code)
                {
                    s7_pointer arg;
                    arg = cadadr(code);
                    set_car(sc->t1_1, lookup(sc, cadr(arg)));
                    set_car(sc->t1_1, c_call(arg)(sc, sc->t1_1));
                    set_car(sc->t1_1, c_call(cadr(code))(sc, sc->t1_1));
                    return(c_call(code)(sc, sc->t1_1));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rdi), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb7ecf
jle 0xb7eca
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb7ebd
cmpq %rsi, %rdi
jne 0xb7f31
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x568(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x568(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x568(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x10(%r14), %rax
movq 0x8(%rax), %rax
movq 0x568(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x568(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x20(%r14), %rax
movq 0x568(%rbx), %rsi
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmpq *%rax
cmpb $0x1c, (%rdx)
jne 0xb7f51
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb7f4b
cmpq %rcx, 0x8(%rsi)
je 0xb7ed3
movq 0x18(%rsi), %rsi
jmp 0xb7f3a
movq 0x10(%rdx), %rdx
jmp 0xb7f31
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb7ed3
xorl %ecx, %ecx
jmp 0xb7ed7
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_c_op_opssq_q_s_direct
static s7_pointer fx_c_op_opssq_q_s_direct(s7_scheme *sc, s7_pointer code)
                {
                    s7_pointer arg;
                    arg = opt1_pair(cdr(code));
                    return(((s7_p_pp_t)opt3_direct(code))(sc,
                                ((s7_p_p_t)opt2_direct(cdr(code)))(sc,
                                ((s7_p_pp_t)opt3_direct(cdr(code)))(sc, lookup(sc, cadr(arg)), lookup(sc, caddr(arg)))),
                                lookup(sc, caddr(code))));
                }

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rdx
movq 0x18(%rdx), %rax
movq 0x10(%rax), %rdi
movq 0x8(%rdi), %rsi
movq 0x8(%rbx), %rax
movq 0x18(%rax), %rcx
movq 0x20(%rsi), %r9
cmpq %r9, %rcx
je 0xb8441
movq %rax, %r8
movq %rcx, %r10
jle 0xb8438
movq %rax, %r8
movq 0x10(%r8), %r8
movq 0x18(%r8), %r10
cmpq %r10, %r9
jl 0xb842b
cmpq %r9, %r10
jne 0xb84e4
movq 0x18(%rsi), %r9
movq 0x10(%r9), %rsi
movq 0x20(%rdx), %r15
movq 0x28(%rdx), %r8
movq 0x10(%rdi), %rdx
movq 0x8(%rdx), %rdx
movq 0x20(%rdx), %rdi
cmpq %rdi, %rcx
je 0xb847a
jle 0xb8471
movq 0x10(%rax), %rax
movq 0x18(%rax), %rcx
cmpq %rcx, %rdi
jl 0xb8464
cmpq %rdi, %rcx
jne 0xb8509
movq 0x18(%rdx), %rcx
movq 0x10(%rcx), %rdx
movq 0x28(%r14), %r12
movq %rbx, %rdi
callq *%r8
movq %rbx, %rdi
movq %rax, %rsi
callq *%r15
movq 0x10(%r14), %rcx
movq 0x10(%rcx), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rbx), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb84c6
jle 0xb84c1
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb84b4
cmpq %rsi, %rdi
jne 0xb852d
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rdx
movq %rbx, %rdi
movq %rax, %rsi
movq %r12, %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmpq *%rax
cmpb $0x1c, (%r8)
jne 0xb854d
movq 0x8(%r8), %r9
testq %r9, %r9
je 0xb8503
cmpq %rsi, 0x8(%r9)
je 0xb8445
movq 0x18(%r9), %r9
jmp 0xb84ee
movq 0x10(%r8), %r8
jmp 0xb84e4
cmpb $0x1c, (%rax)
jne 0xb8562
movq 0x8(%rax), %rcx
testq %rcx, %rcx
je 0xb8527
cmpq %rdx, 0x8(%rcx)
je 0xb847e
movq 0x18(%rcx), %rcx
jmp 0xb8512
movq 0x10(%rax), %rax
jmp 0xb8509
cmpb $0x1c, (%rdx)
jne 0xb8576
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb8547
cmpq %rcx, 0x8(%rsi)
je 0xb84ca
movq 0x18(%rsi), %rsi
jmp 0xb8536
movq 0x10(%rdx), %rdx
jmp 0xb852d
movq 0x10(%rsi), %r9
cmpb $0x20, (%r9)
je 0xb8445
xorl %esi, %esi
jmp 0xb8449
movq 0x10(%rdx), %rcx
cmpb $0x20, (%rcx)
je 0xb847e
xorl %edx, %edx
jmp 0xb8482
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb84ca
xorl %edx, %edx
jmp 0xb84ce
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_c_op_opssq_q_s
static s7_pointer fx_c_op_opssq_q_s(s7_scheme *sc, s7_pointer code)
                {
                    s7_pointer arg;
                    arg = opt1_pair(cdr(code));
                    set_car(sc->t2_1, lookup(sc, cadr(arg)));
                    set_car(sc->t2_2, lookup(sc, opt2_sym(cdr(arg))));
                    set_car(sc->t1_1, c_call(arg)(sc, sc->t2_1));
                    set_car(sc->t2_1, c_call(cadr(code))(sc, sc->t1_1));
                    set_car(sc->t2_2, lookup(sc, caddr(code)));
                    return(c_call(code)(sc, sc->t2_1));
                }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x18(%rax), %rax
movq 0x10(%rax), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rdi), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb85cd
jle 0xb85c4
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb85b7
cmpq %rsi, %rdi
jne 0xb86b7
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x570(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x10(%rax), %rcx
movq 0x20(%rcx), %rcx
movq 0x8(%rbx), %rdx
movq 0x18(%rdx), %rdi
movq 0x20(%rcx), %rsi
cmpq %rsi, %rdi
je 0xb8611
jle 0xb8608
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %rdi
cmpq %rdi, %rsi
jl 0xb85fb
cmpq %rsi, %rdi
jne 0xb86db
movq 0x18(%rcx), %rsi
movq 0x10(%rsi), %rcx
movq 0x578(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x570(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x568(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x10(%r14), %rax
movq 0x8(%rax), %rax
movq 0x568(%rbx), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x570(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x10(%r14), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rbx), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%rax), %rdx
cmpq %rdx, %rsi
je 0xb868d
jle 0xb8688
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xb867b
cmpq %rdx, %rsi
jne 0xb86ff
movq 0x18(%rax), %rdx
movq 0x10(%rdx), %rax
movq 0x578(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x20(%r14), %rax
movq 0x570(%rbx), %rsi
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmpq *%rax
cmpb $0x1c, (%rdx)
jne 0xb8723
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb86d5
cmpq %rcx, 0x8(%rsi)
je 0xb85d1
movq 0x18(%rsi), %rsi
jmp 0xb86c0
movq 0x10(%rdx), %rdx
jmp 0xb86b7
cmpb $0x1c, (%rdx)
jne 0xb8737
movq 0x8(%rdx), %rsi
testq %rsi, %rsi
je 0xb86f9
cmpq %rcx, 0x8(%rsi)
je 0xb8615
movq 0x18(%rsi), %rsi
jmp 0xb86e4
movq 0x10(%rdx), %rdx
jmp 0xb86db
cmpb $0x1c, (%rcx)
jne 0xb874b
movq 0x8(%rcx), %rdx
testq %rdx, %rdx
je 0xb871d
cmpq %rax, 0x8(%rdx)
je 0xb8691
movq 0x18(%rdx), %rdx
jmp 0xb8708
movq 0x10(%rcx), %rcx
jmp 0xb86ff
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb85d1
xorl %ecx, %ecx
jmp 0xb85d5
movq 0x10(%rcx), %rsi
cmpb $0x20, (%rsi)
je 0xb8615
xorl %ecx, %ecx
jmp 0xb8619
movq 0x10(%rax), %rdx
cmpb $0x20, (%rdx)
je 0xb8691
xorl %eax, %eax
jmp 0xb8695
// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: fx_safe_closure_s_d
static s7_pointer fx_safe_closure_s_d(s7_scheme *sc, s7_pointer code)
                {
                    s7_pointer result;
                    gc_protect_direct(sc, sc->envir);
                    sc->envir = old_frame_with_slot(sc, closure_let(opt1_lambda(code)), lookup(sc, opt2_sym(code)));
                    result = d_call(sc, car(closure_body(opt1_lambda(code))));
                    sc->envir = sc->stack_end[-2];
                    sc->stack_end -= 4;
                    return(result);
                }

// Assembly:
pushq %rbx
movq %rdi, %rbx
movq 0x8(%rdi), %rax
movq 0x50(%rdi), %rcx
movq $0x1, 0x18(%rcx)
movq 0x50(%rdi), %rcx
leaq 0x20(%rcx), %rdx
movq %rdx, 0x50(%rdi)
movq %rax, 0x10(%rcx)
movq 0x18(%rsi), %rax
movq 0x20(%rsi), %rcx
movq 0x18(%rax), %rax
movq 0x8(%rdi), %rdx
movq 0x18(%rdx), %r8
movq 0x20(%rcx), %rdi
cmpq %rdi, %r8
je 0xb87db
jle 0xb87d6
movq 0x10(%rdx), %rdx
movq 0x18(%rdx), %r8
cmpq %r8, %rdi
jl 0xb87c9
cmpq %rdi, %r8
jne 0xb883f
movq 0x18(%rcx), %rdi
movq 0x10(%rdi), %rcx
movq 0x250(%rbx), %rdx
incq %rdx
movq %rdx, 0x250(%rbx)
movq %rdx, 0x18(%rax)
movq 0x8(%rax), %rdi
movq %rcx, 0x10(%rdi)
movq 0x8(%rdi), %rcx
movq %rdi, 0x18(%rcx)
movq %rdx, 0x20(%rcx)
incl 0x28(%rcx)
movq %rax, 0x8(%rbx)
movq 0x18(%rsi), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq *0x20(%rax)
movq 0x50(%rbx), %rcx
movq -0x10(%rcx), %rdx
movq %rdx, 0x8(%rbx)
addq $-0x20, %rcx
movq %rcx, 0x50(%rbx)
popq %rbx
retq
cmpb $0x1c, (%rdx)
jne 0xb885f
movq 0x8(%rdx), %rdi
testq %rdi, %rdi
je 0xb8859
cmpq %rcx, 0x8(%rdi)
je 0xb87df
movq 0x18(%rdi), %rdi
jmp 0xb8848
movq 0x10(%rdx), %rdx
jmp 0xb883f
movq 0x10(%rcx), %rdi
cmpb $0x20, (%rdi)
je 0xb87df
xorl %ecx, %ecx
jmp 0xb87e3