LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_i_i_fm
static s7_int opt_set_i_i_fm(opt_info *o)
                {
                    opt_info *o1;
                    s7_int x;
                    oo_rc(o->sc, o, 2, 1);
                    o1 = o->sc->opts[++o->sc->pc];
                    x = o1->v[0].fi(o1);
                    integer(slot_value(o->v[1].p)) = x;
                    return(x);
                }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x10(%rsp), %rcx
movq 0x68(%rcx), %rdx
movl 0x2258(%rdx), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rdx)
movslq %ecx, %rcx
movq 0x2260(%rax,%rcx,8), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq (%rax), %rax
movq 0x8(%rsp), %rdi
callq *%rax
movq %rax, (%rsp)
movq (%rsp), %rcx
movq 0x10(%rsp), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rax
movq %rcx, 0x8(%rax)
movq (%rsp), %rax
addq $0x18, %rsp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_i_i_f
static s7_int opt_set_i_i_f(opt_info *o)
                {
                    opt_info *o1;
                    s7_int x;
                    oo_rc(o->sc, o, 2, 1);
                    o1 = o->sc->opts[++o->sc->pc];
                    x = o1->v[0].fi(o1);
                    slot_set_value(o->v[1].p, make_integer(o->sc, x));
                    return(x);
                }

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x40(%rsp)
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x40(%rsp), %rcx
movq 0x68(%rcx), %rdx
movl 0x2258(%rdx), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rdx)
movslq %ecx, %rcx
movq 0x2260(%rax,%rcx,8), %rax
movq %rax, 0x38(%rsp)
movq 0x38(%rsp), %rax
movq (%rax), %rax
movq 0x38(%rsp), %rdi
callq *%rax
movq %rax, 0x30(%rsp)
movq 0x30(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
andq $-0x800, %rax           # imm = 0xF800
cmpq $0x0, %rax
jne 0xe8b83
movq 0x28(%rsp), %rcx
leaq 0x12d90b(%rip), %rax    # 0x216480
movq (%rax,%rcx,8), %rax
movq %rax, 0x8(%rsp)
jmp 0xe8c0a
jmp 0xe8b85
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x90(%rax), %rax
movq 0x40(%rsp), %rcx
movq 0x68(%rcx), %rcx
cmpq 0x98(%rcx), %rax
ja 0xe8bb5
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rdi
callq 0xc670
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rcx
movq 0x90(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x90(%rcx)
movq -0x8(%rax), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movq $0xb, (%rax)
movq 0x28(%rsp), %rcx
movq 0x18(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x18(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rcx
movq 0x40(%rsp), %rax
movq 0x8(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x30(%rsp), %rax
addq $0x48, %rsp
retq
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_i_i_fo
static s7_int opt_set_i_i_fo(opt_info *o)
                {
                    s7_int x;
                    oo_rc(o->sc, o, 5, 2);
                    x = integer(slot_value(o->v[3].p)) + o->v[2].i;
                    slot_set_value(o->v[1].p, make_integer(o->sc, x));
                    return(x);
                }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x30(%rsp)
movq 0x30(%rsp), %rax
movq 0x18(%rax), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq 0x30(%rsp), %rcx
addq 0x10(%rcx), %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
andq $-0x800, %rax           # imm = 0xF800
cmpq $0x0, %rax
jne 0xe913c
movq 0x20(%rsp), %rcx
leaq 0x12d351(%rip), %rax    # 0x216480
movq (%rax,%rcx,8), %rax
movq %rax, (%rsp)
jmp 0xe91c2
jmp 0xe913e
movq 0x30(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x90(%rax), %rax
movq 0x30(%rsp), %rcx
movq 0x68(%rcx), %rcx
cmpq 0x98(%rcx), %rax
ja 0xe916e
movq 0x30(%rsp), %rax
movq 0x68(%rax), %rdi
callq 0xc670
movq 0x30(%rsp), %rax
movq 0x68(%rax), %rcx
movq 0x90(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x90(%rcx)
movq -0x8(%rax), %rax
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq $0xb, (%rax)
movq 0x20(%rsp), %rcx
movq 0x10(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq %rax, (%rsp)
movq (%rsp), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rcx
movq 0x30(%rsp), %rax
movq 0x8(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x28(%rsp), %rax
addq $0x38, %rsp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_i_7pii_sff
static s7_int opt_i_7pii_sff(opt_info *o)
                {
                    opt_info *o1, *o2;
                    s7_int i1;
                    s7_scheme *sc;
                    sc = o->sc;
                    o1 = sc->opts[++sc->pc];
                    i1 = o1->v[0].fi(o1);
                    o2 = sc->opts[++sc->pc];
                    oo_rc(sc, o, 4, 1);
                    return(o->v[3].i_7pii_f(sc, slot_value(o->v[1].p), i1, o2->v[0].fi(o2)));
                }

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x40(%rsp)
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rax
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
movq 0x20(%rsp), %rdx
movl 0x2258(%rdx), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rdx)
movslq %ecx, %rcx
movq 0x2260(%rax,%rcx,8), %rax
movq %rax, 0x38(%rsp)
movq 0x38(%rsp), %rax
movq (%rax), %rax
movq 0x38(%rsp), %rdi
callq *%rax
movq %rax, 0x28(%rsp)
movq 0x20(%rsp), %rax
movq 0x20(%rsp), %rdx
movl 0x2258(%rdx), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rdx)
movslq %ecx, %rcx
movq 0x2260(%rax,%rcx,8), %rax
movq %rax, 0x30(%rsp)
movq 0x40(%rsp), %rax
movq 0x18(%rax), %rax
movq %rax, 0x18(%rsp)
movq 0x20(%rsp), %rax
movq %rax, (%rsp)
movq 0x40(%rsp), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rax
movq %rax, 0x8(%rsp)
movq 0x28(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x30(%rsp), %rax
movq (%rax), %rax
movq 0x30(%rsp), %rdi
callq *%rax
movq (%rsp), %rdi
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rax, %rcx
movq 0x18(%rsp), %rax
callq *%rax
addq $0x48, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_cell_not_pair
static bool opt_cell_not_pair(s7_scheme *sc, s7_pointer car_x)
                {
                    s7_pointer p;
                    opt_info *opc;
                    if (!is_symbol(car_x))
                    {
                        opc = alloc_opo(sc, car_x);
                        opc->v[1].p = car_x;
                        opc->v[0].fp = opt_p_c;
                        return(oo_set_type_0(opc, 2));
                    }
                    p = opt_simple_symbol(sc, car_x);
                    if (p)
                    {
                        opc = alloc_opo(sc, car_x);
                        opc->v[1].p = p;
                        opc->v[0].fp = opt_p_s;
                        return(oo_set_type_1(opc, 2, 1, OO_P));
                    }
                    return(return_false(sc, car_x, __func__, __LINE__));
                }

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x18(%rsp)
movq %rsi, 0x10(%rsp)
movq 0x10(%rsp), %rax
movzbl (%rax), %eax
cmpl $0xa, %eax
je 0xea826
movq 0x18(%rsp), %rdi
callq 0xe15e0
movq %rax, (%rsp)
movq 0x10(%rsp), %rcx
movq (%rsp), %rax
movq %rcx, 0x8(%rax)
movq (%rsp), %rax
leaq 0x55df(%rip), %rcx      # 0xefde0
movq %rcx, (%rax)
movq (%rsp), %rdi
movl $0x2, %esi
leaq 0x104a93(%rip), %rdx    # 0x1ef2a7
movl $0xeba5, %ecx           # imm = 0xEBA5
callq 0xe4820
andb $0x1, %al
movb %al, 0x27(%rsp)
jmp 0xea89a
movq 0x18(%rsp), %rdi
movq 0x10(%rsp), %rsi
callq 0xefdf0
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
je 0xea895
movq 0x18(%rsp), %rdi
callq 0xe15e0
movq %rax, (%rsp)
movq 0x8(%rsp), %rcx
movq (%rsp), %rax
movq %rcx, 0x8(%rax)
movq (%rsp), %rax
leaq 0x55f8(%rip), %rcx      # 0xefe60
movq %rcx, (%rax)
movq (%rsp), %rdi
movl $0x2, %esi
movl $0x1, %edx
xorl %ecx, %ecx
leaq 0x104a25(%rip), %r8     # 0x1ef2a7
movl $0xebad, %r9d           # imm = 0xEBAD
callq 0xe4950
andb $0x1, %al
movb %al, 0x27(%rsp)
jmp 0xea89a
movb $0x0, 0x27(%rsp)
movb 0x27(%rsp), %al
andb $0x1, %al
addq $0x28, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: p_ok
static bool p_ok(s7_scheme *sc, opt_info *opc, s7_pointer s_func, s7_pointer car_x)
                {
                    s7_p_t func;
                    func = s7_p_function(s_func);
                    if (func)
                    {
                        opc->v[1].p_f = func;
                        opc->v[0].fp = opt_p_f;
                        return(oo_set_type_0(opc, 2));
                    }
                    if ((is_safe_procedure(s_func)) &&
                            (c_function_required_args(s_func) == 0))
                    {
                        opc->v[1].call = cf_call(sc, car_x, s_func, 0);
                        opc->v[0].fp = opt_p_call;
                        return(oo_set_type_0(opc, 2));
                    }
                    return(return_false(sc, car_x, __func__, __LINE__));
                }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movq %rsi, 0x20(%rsp)
movq %rdx, 0x18(%rsp)
movq %rcx, 0x10(%rsp)
movq 0x18(%rsp), %rdi
callq 0x101390
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
je 0xeb372
movq 0x8(%rsp), %rcx
movq 0x20(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x20(%rsp), %rax
leaq 0x16067(%rip), %rcx     # 0x1013b0
movq %rcx, (%rax)
movq 0x20(%rsp), %rdi
movl $0x2, %esi
leaq 0x1042de(%rip), %rdx    # 0x1ef63b
movl $0xebc3, %ecx           # imm = 0xEBC3
callq 0xe4820
andb $0x1, %al
movb %al, 0x37(%rsp)
jmp 0xeb456
movq 0x18(%rsp), %rax
movq (%rax), %rax
andq $0x200000, %rax         # imm = 0x200000
cmpq $0x0, %rax
je 0xeb451
movq 0x18(%rsp), %rax
cmpq $0x0, 0x18(%rax)
jne 0xeb451
movq 0x10(%rsp), %rax
movzwl (%rax), %eax
cmpl $0x801, %eax            # imm = 0x801
jne 0xeb3e6
movq 0x10(%rsp), %rax
movzwl 0x4(%rax), %eax
cmpl $0x4, %eax
jl 0xeb3e6
movq 0x10(%rsp), %rax
movzwl 0x4(%rax), %eax
cmpl $0x17f, %eax            # imm = 0x17F
jl 0xeb3d7
movq 0x10(%rsp), %rax
movzwl 0x4(%rax), %eax
cmpl $0x185, %eax            # imm = 0x185
jle 0xeb3e6
movq 0x10(%rsp), %rax
movq 0x20(%rax), %rax
movq %rax, (%rsp)
jmp 0xeb412
movq 0x18(%rsp), %rax
movq 0x8(%rax), %rax
movq 0x48(%rax), %rax
movq 0x28(%rsp), %rdi
movq 0x18(%rsp), %rsi
movq 0x10(%rsp), %rcx
xorl %r8d, %r8d
movl %r8d, %edx
callq *%rax
movq 0x10(%rax), %rax
movq %rax, (%rsp)
movq (%rsp), %rcx
movq 0x20(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x20(%rsp), %rax
leaq 0x15fa5(%rip), %rcx     # 0x1013d0
movq %rcx, (%rax)
movq 0x20(%rsp), %rdi
movl $0x2, %esi
leaq 0x1041fc(%rip), %rdx    # 0x1ef63b
movl $0xebca, %ecx           # imm = 0xEBCA
callq 0xe4820
andb $0x1, %al
movb %al, 0x37(%rsp)
jmp 0xeb456
movb $0x0, 0x37(%rsp)
movb 0x37(%rsp), %al
andb $0x1, %al
addq $0x38, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: p_i_ok
static bool p_i_ok(s7_scheme *sc, opt_info *opc, s7_pointer s_func, s7_pointer car_x, int32_t pstart)
                {
                    s7_p_i_t ifunc;
                    ifunc = s7_p_i_function(s_func);
                    if (ifunc)
                    {
                        s7_pointer p;
                        p = opt_integer_symbol(sc, cadr(car_x));
                        if (p)
                        {
                            opc->v[1].p = p;
                            opc->v[2].p_i_f = ifunc;
                            opc->v[0].fp = opt_p_i_s;
                            return(oo_set_type_1(opc, 3, 1, OO_I));
                        }
                        if (int_optimize(sc, cdr(car_x)))
                        {
                            opc->v[2].p_i_f = ifunc;
                            opc->v[0].fp = opt_p_i_f;
                            opc->v[3].o1 = sc->opts[pstart];
                            opc->v[4].fi = sc->opts[pstart]->v[0].fi;
                            return(oo_set_type_0(opc, 5));
                        }
                    }
                    pc_fallback(sc, pstart);
                    return(return_false(sc, car_x, __func__, __LINE__));
                }

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x38(%rsp)
movq %rsi, 0x30(%rsp)
movq %rdx, 0x28(%rsp)
movq %rcx, 0x20(%rsp)
movl %r8d, 0x1c(%rsp)
movq 0x28(%rsp), %rdi
callq 0x101400
movq %rax, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
je 0xeb5b9
movq 0x38(%rsp), %rdi
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rsi
callq 0xe5260
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
je 0xeb525
movq 0x8(%rsp), %rcx
movq 0x30(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rsp), %rcx
movq 0x30(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x30(%rsp), %rax
leaq 0x15f2c(%rip), %rcx     # 0x101420
movq %rcx, (%rax)
movq 0x30(%rsp), %rdi
movl $0x3, %esi
movl $0x1, %ecx
leaq 0x103f18(%rip), %r8     # 0x1ef425
movl $0xec97, %r9d           # imm = 0xEC97
movl %ecx, %edx
callq 0xe4950
andb $0x1, %al
movb %al, 0x47(%rsp)
jmp 0xeb5cc
movq 0x38(%rsp), %rdi
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rsi
callq 0xe59c0
testb $0x1, %al
jne 0xeb53e
jmp 0xeb5b7
movq 0x10(%rsp), %rcx
movq 0x30(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x30(%rsp), %rax
leaq 0x15ef8(%rip), %rcx     # 0x101450
movq %rcx, (%rax)
movq 0x38(%rsp), %rax
movslq 0x1c(%rsp), %rcx
movq 0x2260(%rax,%rcx,8), %rcx
movq 0x30(%rsp), %rax
movq %rcx, 0x18(%rax)
movq 0x38(%rsp), %rax
movslq 0x1c(%rsp), %rcx
movq 0x2260(%rax,%rcx,8), %rax
movq (%rax), %rcx
movq 0x30(%rsp), %rax
movq %rcx, 0x20(%rax)
movq 0x30(%rsp), %rdi
movl $0x5, %esi
leaq 0x103e80(%rip), %rdx    # 0x1ef425
movl $0xec9f, %ecx           # imm = 0xEC9F
callq 0xe4820
andb $0x1, %al
movb %al, 0x47(%rsp)
jmp 0xeb5cc
jmp 0xeb5b9
movq 0x38(%rsp), %rdi
movl 0x1c(%rsp), %esi
callq 0xe59a0
movb $0x0, 0x47(%rsp)
movb 0x47(%rsp), %al
andb $0x1, %al
addq $0x48, %rsp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: p_d_ok
static bool p_d_ok(s7_scheme *sc, opt_info *opc, s7_pointer s_func, s7_pointer car_x, int32_t pstart)
                {
                    s7_p_d_t ifunc;
                    ifunc = s7_p_d_function(s_func);
                    if (ifunc)
                    {
                        s7_pointer p;
                        p = opt_float_symbol(sc, cadr(car_x));
                        if (p)
                        {
                            opc->v[1].p = p;
                            opc->v[2].p_d_f = ifunc;
                            opc->v[0].fp = opt_p_d_s;
                            return(oo_set_type_1(opc, 3, 1, OO_R));
                        }
                        if ((is_number(cadr(car_x))) && (!is_float(cadr(car_x))))
                            return(return_false(sc, car_x, __func__, __LINE__));
                        if (float_optimize(sc, cdr(car_x)))
                        {
                            opc->v[2].p_d_f = ifunc;
                            opc->v[0].fp = opt_p_d_f;
                            return(oo_set_type_0(opc, 3));
                        }
                    }
                    pc_fallback(sc, pstart);
                    return(return_false(sc, car_x, __func__, __LINE__));
                }

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x38(%rsp)
movq %rsi, 0x30(%rsp)
movq %rdx, 0x28(%rsp)
movq %rcx, 0x20(%rsp)
movl %r8d, 0x1c(%rsp)
movq 0x28(%rsp), %rdi
callq 0x47340
movq %rax, 0x10(%rsp)
cmpq $0x0, 0x10(%rsp)
je 0xeb72e
movq 0x38(%rsp), %rdi
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rsi
callq 0xe5310
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
je 0xeb698
movq 0x8(%rsp), %rcx
movq 0x30(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rsp), %rcx
movq 0x30(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x30(%rsp), %rax
leaq 0x15e5c(%rip), %rcx     # 0x1014c0
movq %rcx, (%rax)
movq 0x30(%rsp), %rdi
movl $0x3, %esi
movl $0x1, %edx
movl $0x7, %ecx
leaq 0x103daa(%rip), %r8     # 0x1ef42c
movl $0xed08, %r9d           # imm = 0xED08
callq 0xe4950
andb $0x1, %al
movb %al, 0x47(%rsp)
jmp 0xeb741
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movzbl (%rax), %eax
movl %eax, %ecx
leaq 0x12edef(%rip), %rax    # 0x21a4a0
testb $0x1, (%rax,%rcx)
je 0xeb6d3
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movzbl (%rax), %eax
cmpl $0xd, %eax
je 0xeb6d3
movb $0x0, 0x47(%rsp)
jmp 0xeb741
movq 0x38(%rsp), %rdi
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rsi
callq 0x473f0
testb $0x1, %al
jne 0xeb6ec
jmp 0xeb72c
movq 0x10(%rsp), %rcx
movq 0x30(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x30(%rsp), %rax
leaq 0x15e5a(%rip), %rcx     # 0x101560
movq %rcx, (%rax)
movq 0x30(%rsp), %rdi
movl $0x3, %esi
leaq 0x103d12(%rip), %rdx    # 0x1ef42c
movl $0xed10, %ecx           # imm = 0xED10
callq 0xe4820
andb $0x1, %al
movb %al, 0x47(%rsp)
jmp 0xeb741
jmp 0xeb72e
movq 0x38(%rsp), %rdi
movl 0x1c(%rsp), %esi
callq 0xe59a0
movb $0x0, 0x47(%rsp)
movb 0x47(%rsp), %al
andb $0x1, %al
addq $0x48, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: p_fx_any_ok
static bool p_fx_any_ok(s7_scheme *sc, opt_info *opc, s7_pointer s_func, s7_pointer x)
                {
                    s7_function f;
                    if (has_fx(x))
                        f = c_callee(x);
                    else f = fx_choose(sc, x, sc->envir, let_symbol_is_safe);
                    if (f)
                    {
                        opc->v[0].fp = opt_p_fx_any;
                        opc->v[1].call = f;
                        opc->v[2].p = car(x);
                        return(oo_set_type_0(opc, 3));
                    }
                    return(return_false(sc, x, __func__, __LINE__));
                }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movq %rsi, 0x20(%rsp)
movq %rdx, 0x18(%rsp)
movq %rcx, 0x10(%rsp)
movq 0x10(%rsp), %rax
movzwl 0x6(%rax), %eax
andl $0x4, %eax
cmpl $0x0, %eax
je 0xefd49
movq 0x10(%rsp), %rax
movq 0x20(%rax), %rax
movq %rax, 0x8(%rsp)
jmp 0xefd6d
movq 0x28(%rsp), %rdi
movq 0x10(%rsp), %rsi
movq 0x28(%rsp), %rax
movq 0x8(%rax), %rdx
leaq 0x15e9d(%rip), %rcx     # 0x105c00
callq 0x103260
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
je 0xefdc7
movq 0x20(%rsp), %rax
leaq 0x15f1f(%rip), %rcx     # 0x105ca0
movq %rcx, (%rax)
movq 0x8(%rsp), %rcx
movq 0x20(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0x20(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x20(%rsp), %rdi
movl $0x3, %esi
leaq 0xff729(%rip), %rdx     # 0x1ef4de
movl $0xf265, %ecx           # imm = 0xF265
callq 0xe4820
andb $0x1, %al
movb %al, 0x37(%rsp)
jmp 0xefdcc
movb $0x0, 0x37(%rsp)
movb 0x37(%rsp), %al
andb $0x1, %al
addq $0x38, %rsp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_simple_symbol
static s7_pointer opt_simple_symbol(s7_scheme *sc, s7_pointer sym)
                {
                    s7_pointer p;
                    p = symbol_to_slot(sc, sym);
                    if ((is_slot(p)) &&
                            (!has_methods(slot_value(p))))
                        return(p);
                    return(NULL);
                }

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x18(%rsp)
movq %rsi, 0x10(%rsp)
movq 0x18(%rsp), %rdi
movq 0x10(%rsp), %rsi
callq 0xfc80
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x20, %eax
jne 0xefe43
movq 0x8(%rsp), %rax
movq 0x10(%rax), %rax
movq (%rax), %rax
andq $0x40000000, %rax       # imm = 0x40000000
cmpq $0x0, %rax
jne 0xefe43
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
jmp 0xefe4c
movq $0x0, 0x20(%rsp)
movq 0x20(%rsp), %rax
addq $0x28, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_cell_quote
static bool opt_cell_quote(s7_scheme *sc, s7_pointer car_x)
                {
                    opt_info *opc;
                    if (!is_null(cddr(car_x)))
                        return(return_false(sc, car_x, __func__, __LINE__));
                    opc = alloc_opo(sc, car_x);
                    opc->v[1].p = cadr(car_x);
                    opc->v[0].fp = opt_p_c;
                    return(oo_set_type_0(opc, 2));
                }

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x18(%rsp)
movq %rsi, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
movq 0x18(%rsp), %rcx
cmpq 0x110(%rcx), %rax
je 0xefeb0
movb $0x0, 0x27(%rsp)
jmp 0xeff05
movq 0x18(%rsp), %rdi
callq 0xe15e0
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rcx
movq 0x8(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x8(%rsp), %rax
leaq -0x101(%rip), %rcx      # 0xefde0
movq %rcx, (%rax)
movq 0x8(%rsp), %rdi
movl $0x2, %esi
leaq 0xff3c4(%rip), %rdx     # 0x1ef2b9
movl $0xf32b, %ecx           # imm = 0xF32B
callq 0xe4820
andb $0x1, %al
movb %al, 0x27(%rsp)
movb 0x27(%rsp), %al
andb $0x1, %al
addq $0x28, %rsp
retq
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_cell_begin
static bool opt_cell_begin(s7_scheme *sc, s7_pointer car_x, int32_t len)
                {
                    opt_info *opc;
                    s7_pointer p;
                    opc = alloc_opo(sc, car_x);
                    for (p = cdr(car_x); is_pair(p); p = cdr(p))
                    {
                        opt_info *start;
                        start = sc->opts[sc->pc];
                        if (!cell_optimize(sc, p))
                            return(return_false(sc, car_x, __func__, __LINE__));
                        if (is_pair(cdr(p)))
                            oo_idp_nr_fixup(start);
                    }
                    opc->v[1].i = len - 1;
                    opc->v[0].fp = (len == 3) ? opt_begin_p_1 : opt_begin_p;
                    return(oo_set_type_0(opc, 2));
                }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movq %rsi, 0x20(%rsp)
movl %edx, 0x1c(%rsp)
movq 0x28(%rsp), %rdi
callq 0xe15e0
movq %rax, 0x10(%rsp)
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x1, %eax
jne 0xf1e12
movq 0x28(%rsp), %rax
movq 0x28(%rsp), %rcx
movslq 0x2258(%rcx), %rcx
movq 0x2260(%rax,%rcx,8), %rax
movq %rax, (%rsp)
movq 0x28(%rsp), %rdi
movq 0x8(%rsp), %rsi
callq 0xe9db0
testb $0x1, %al
jne 0xf1de6
movb $0x0, 0x37(%rsp)
jmp 0xf1e67
movq 0x8(%rsp), %rax
movq 0x10(%rax), %rax
movzbl (%rax), %eax
cmpl $0x1, %eax
jne 0xf1e00
movq (%rsp), %rdi
callq 0xf7f60
jmp 0xf1e02
movq 0x8(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x8(%rsp)
jmp 0xf1d9f
movl 0x1c(%rsp), %eax
subl $0x1, %eax
movslq %eax, %rcx
movq 0x10(%rsp), %rax
movq %rcx, 0x8(%rax)
movl 0x1c(%rsp), %edx
leaq 0x62a0(%rip), %rcx      # 0xf80d0
leaq 0x6209(%rip), %rax      # 0xf8040
cmpl $0x3, %edx
cmoveq %rax, %rcx
movq 0x10(%rsp), %rax
movq %rcx, (%rax)
movq 0x10(%rsp), %rdi
movl $0x2, %esi
leaq 0xfd4bf(%rip), %rdx     # 0x1ef316
movl $0xf61e, %ecx           # imm = 0xF61E
callq 0xe4820
andb $0x1, %al
movb %al, 0x37(%rsp)
movb 0x37(%rsp), %al
andb $0x1, %al
addq $0x38, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_cell_when
static bool opt_cell_when(s7_scheme *sc, s7_pointer car_x, int32_t len)
                {
                    s7_pointer p;
                    opt_info *opc;
                    opc = alloc_opo(sc, car_x);
                    if (!bool_optimize(sc, cdr(car_x)))
                        return(return_false(sc, car_x, __func__, __LINE__));
                    for (p = cddr(car_x); is_pair(p); p = cdr(p))
                    {
                        opt_info *start;
                        start = sc->opts[sc->pc];
                        if (!cell_optimize(sc, p))
                            return(return_false(sc, car_x, __func__, __LINE__));
                        if (is_pair(cdr(p)))
                            oo_idp_nr_fixup(start);
                    }
                    opc->v[1].i = len - 2;
                    opc->v[3].i = sc->pc - 1;
                    opc->v[0].fp = ((car(car_x) == sc->when_symbol) ? opt_when_p : opt_unless_p);
                    return(oo_set_type_0(opc, 4));
                }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movq %rsi, 0x20(%rsp)
movl %edx, 0x1c(%rsp)
movq 0x28(%rsp), %rdi
callq 0xe15e0
movq %rax, 0x8(%rsp)
movq 0x28(%rsp), %rdi
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rsi
callq 0xf83e0
testb $0x1, %al
jne 0xf1ec2
movb $0x0, 0x37(%rsp)
jmp 0xf1fc7
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x1, %eax
jne 0xf1f47
movq 0x28(%rsp), %rax
movq 0x28(%rsp), %rcx
movslq 0x2258(%rcx), %rcx
movq 0x2260(%rax,%rcx,8), %rax
movq %rax, (%rsp)
movq 0x28(%rsp), %rdi
movq 0x10(%rsp), %rsi
callq 0xe9db0
testb $0x1, %al
jne 0xf1f1b
movb $0x0, 0x37(%rsp)
jmp 0xf1fc7
movq 0x10(%rsp), %rax
movq 0x10(%rax), %rax
movzbl (%rax), %eax
cmpl $0x1, %eax
jne 0xf1f35
movq (%rsp), %rdi
callq 0xf7f60
jmp 0xf1f37
movq 0x10(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
jmp 0xf1ed4
movl 0x1c(%rsp), %eax
subl $0x2, %eax
movslq %eax, %rcx
movq 0x8(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x28(%rsp), %rax
movl 0x2258(%rax), %eax
subl $0x1, %eax
movslq %eax, %rcx
movq 0x8(%rsp), %rax
movq %rcx, 0x18(%rax)
movq 0x20(%rsp), %rax
movq 0x8(%rax), %rdx
movq 0x28(%rsp), %rax
movq 0x17f8(%rax), %rsi
leaq 0x6660(%rip), %rcx      # 0xf85f0
leaq 0x6529(%rip), %rax      # 0xf84c0
cmpq %rsi, %rdx
cmoveq %rax, %rcx
movq 0x8(%rsp), %rax
movq %rcx, (%rax)
movq 0x8(%rsp), %rdi
movl $0x4, %esi
leaq 0xfd36e(%rip), %rdx     # 0x1ef325
movl $0xf663, %ecx           # imm = 0xF663
callq 0xe4820
andb $0x1, %al
movb %al, 0x37(%rsp)
movb 0x37(%rsp), %al
andb $0x1, %al
addq $0x38, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_p_i_s
static s7_pointer opt_set_p_i_s(opt_info *o)
                {
                    s7_pointer val;
                    oo_rc(o->sc, o, 3, 2);
                    val = slot_value(o->v[2].p);
                    if (is_mutable_integer(val))
                        val = make_integer(o->sc, integer(val));
                    slot_set_value(o->v[1].p, val);
                    return(val);
                }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x30(%rsp)
movq 0x30(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
movq (%rax), %rax
andq $0x4000000, %rax        # imm = 0x4000000
cmpq $0x0, %rax
je 0xf5064
movq 0x28(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
andq $-0x800, %rax           # imm = 0xF800
cmpq $0x0, %rax
jne 0xf4fcb
movq 0x20(%rsp), %rcx
leaq 0x1214c2(%rip), %rax    # 0x216480
movq (%rax,%rcx,8), %rax
movq %rax, (%rsp)
jmp 0xf5051
jmp 0xf4fcd
movq 0x30(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x90(%rax), %rax
movq 0x30(%rsp), %rcx
movq 0x68(%rcx), %rcx
cmpq 0x98(%rcx), %rax
ja 0xf4ffd
movq 0x30(%rsp), %rax
movq 0x68(%rax), %rdi
callq 0xc670
movq 0x30(%rsp), %rax
movq 0x68(%rax), %rcx
movq 0x90(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x90(%rcx)
movq -0x8(%rax), %rax
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq $0xb, (%rax)
movq 0x20(%rsp), %rcx
movq 0x10(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq %rax, (%rsp)
movq (%rsp), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rcx
movq 0x30(%rsp), %rax
movq 0x8(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x28(%rsp), %rax
addq $0x38, %rsp
retq
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_p_i_f
static s7_pointer opt_set_p_i_f(opt_info *o)
                {
                    opt_info *o1;
                    s7_pointer x;
                    oo_rc(o->sc, o, 2, 1);
                    o1 = o->sc->opts[++o->sc->pc];
                    x = make_integer(o->sc, o1->v[0].fi(o1));
                    slot_set_value(o->v[1].p, x);
                    return(x);
                }

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x40(%rsp)
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x40(%rsp), %rcx
movq 0x68(%rcx), %rdx
movl 0x2258(%rdx), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rdx)
movslq %ecx, %rcx
movq 0x2260(%rax,%rcx,8), %rax
movq %rax, 0x38(%rsp)
movq 0x38(%rsp), %rax
movq (%rax), %rax
movq 0x38(%rsp), %rdi
callq *%rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
andq $-0x800, %rax           # imm = 0xF800
cmpq $0x0, %rax
jne 0xf5359
movq 0x28(%rsp), %rcx
leaq 0x121135(%rip), %rax    # 0x216480
movq (%rax,%rcx,8), %rax
movq %rax, 0x8(%rsp)
jmp 0xf53e0
jmp 0xf535b
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x90(%rax), %rax
movq 0x40(%rsp), %rcx
movq 0x68(%rcx), %rcx
cmpq 0x98(%rcx), %rax
ja 0xf538b
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rdi
callq 0xc670
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rcx
movq 0x90(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x90(%rcx)
movq -0x8(%rax), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movq $0xb, (%rax)
movq 0x28(%rsp), %rcx
movq 0x18(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x18(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x30(%rsp), %rcx
movq 0x40(%rsp), %rax
movq 0x8(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x30(%rsp), %rax
addq $0x48, %rsp
retq
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_p_d_s
static s7_pointer opt_set_p_d_s(opt_info *o)
                {
                    s7_pointer val;
                    oo_rc(o->sc, o, 3, 2);
                    val = slot_value(o->v[2].p);
                    if (is_mutable_number(val))
                        val = make_real(o->sc, real(val));
                    slot_set_value(o->v[1].p, val);
                    return(val);
                }

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x20(%rsp)
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movq (%rax), %rax
andq $0x4000000, %rax        # imm = 0x4000000
cmpq $0x0, %rax
je 0xf57a8
movq 0x18(%rsp), %rax
movsd 0x8(%rax), %xmm0
movsd %xmm0, 0x8(%rsp)
movq 0x20(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x90(%rax), %rax
movq 0x20(%rsp), %rcx
movq 0x68(%rcx), %rcx
cmpq 0x98(%rcx), %rax
ja 0xf5753
movq 0x20(%rsp), %rax
movq 0x68(%rax), %rdi
callq 0xc670
movq 0x20(%rsp), %rax
movq 0x68(%rax), %rcx
movq 0x90(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x90(%rcx)
movq -0x8(%rax), %rax
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq $0xd, (%rax)
movsd 0x8(%rsp), %xmm0
movq 0x10(%rsp), %rax
movsd %xmm0, 0x8(%rax)
movq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq (%rsp), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rcx
movq 0x20(%rsp), %rax
movq 0x8(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x18(%rsp), %rax
addq $0x28, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: set_p_d_f_combinable
static bool set_p_d_f_combinable(s7_scheme *sc, opt_info *opc)
                {
                    if ((sc->pc > 3) &&
                            (opc == sc->opts[sc->pc - 4]))
                    {
                        opt_info *o1;
                        o1 = sc->opts[sc->pc - 3];
                        if ((o1->v[0].fd == opt_d_mm_fff) &&
                                ((o1->v[3].d_dd_f == add_d_dd) || (o1->v[3].d_dd_f == subtract_d_dd)))
                        {
                            /* opc->v[2].d_dd_f = o1->v[3].d_dd_f; */
                            opc->v[0].fp = (o1->v[3].d_dd_f == add_d_dd) ? opt_set_p_d_f_mm_add : opt_set_p_d_f_mm_subtract;
                            return(true);
                        }
                    }
                    return(return_false(sc, NULL, __func__, __LINE__));
                }

// Assembly:
movq %rdi, -0x10(%rsp)
movq %rsi, -0x18(%rsp)
movq -0x10(%rsp), %rax
cmpl $0x3, 0x2258(%rax)
jle 0xf58a3
movq -0x18(%rsp), %rax
movq -0x10(%rsp), %rcx
movq -0x10(%rsp), %rdx
movl 0x2258(%rdx), %edx
subl $0x4, %edx
movslq %edx, %rdx
cmpq 0x2260(%rcx,%rdx,8), %rax
jne 0xf58a3
movq -0x10(%rsp), %rax
movq -0x10(%rsp), %rcx
movl 0x2258(%rcx), %ecx
subl $0x3, %ecx
movslq %ecx, %rcx
movq 0x2260(%rax,%rcx,8), %rax
movq %rax, -0x20(%rsp)
movq -0x20(%rsp), %rax
leaq 0x1fac(%rip), %rcx      # 0xf77f0
cmpq %rcx, (%rax)
jne 0xf58a1
movq -0x20(%rsp), %rax
leaq -0x42c15(%rip), %rcx    # 0xb2c40
cmpq %rcx, 0x18(%rax)
je 0xf586d
movq -0x20(%rsp), %rax
leaq -0x42c07(%rip), %rcx    # 0xb2c60
cmpq %rcx, 0x18(%rax)
jne 0xf58a1
movq -0x20(%rsp), %rax
movq 0x18(%rax), %rdx
leaq -0x42c3d(%rip), %rsi    # 0xb2c40
leaq 0x222c(%rip), %rcx      # 0xf7ab0
leaq 0x2075(%rip), %rax      # 0xf7900
cmpq %rsi, %rdx
cmoveq %rax, %rcx
movq -0x18(%rsp), %rax
movq %rcx, (%rax)
movb $0x1, -0x1(%rsp)
jmp 0xf58a8
jmp 0xf58a3
movb $0x0, -0x1(%rsp)
movb -0x1(%rsp), %al
andb $0x1, %al
retq
nop
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_p_d_f
static s7_pointer opt_set_p_d_f(opt_info *o)
                {
                    s7_pointer x;
                    oo_rc(o->sc, o, 6, 1);
                    o->sc->pc++;
                    x = make_real(o->sc, o->v[5].fd(o->v[4].o1));
                    slot_set_value(o->v[1].p, x);
                    return(x);
                }

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x20(%rsp)
movq 0x20(%rsp), %rax
movq 0x68(%rax), %rax
movl 0x2258(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rax)
movq 0x20(%rsp), %rax
movq 0x28(%rax), %rax
movq 0x20(%rsp), %rcx
movq 0x20(%rcx), %rdi
callq *%rax
movsd %xmm0, 0x8(%rsp)
movq 0x20(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x90(%rax), %rax
movq 0x20(%rsp), %rcx
movq 0x68(%rcx), %rcx
cmpq 0x98(%rcx), %rax
ja 0xf591b
movq 0x20(%rsp), %rax
movq 0x68(%rax), %rdi
callq 0xc670
movq 0x20(%rsp), %rax
movq 0x68(%rax), %rcx
movq 0x90(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x90(%rcx)
movq -0x8(%rax), %rax
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq $0xd, (%rax)
movsd 0x8(%rsp), %xmm0
movq 0x10(%rsp), %rax
movsd %xmm0, 0x8(%rax)
movq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq (%rsp), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rcx
movq 0x20(%rsp), %rax
movq 0x8(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x18(%rsp), %rax
addq $0x28, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: is_some_number
static bool is_some_number(s7_scheme *sc, s7_pointer tp)
                {
                    return((tp == sc->is_integer_symbol) ||
                            (tp == sc->is_float_symbol) ||
                            (tp == sc->is_real_symbol) ||
                            (tp == sc->is_complex_symbol) ||
                            (tp == sc->is_number_symbol) ||
                            (tp == sc->is_rational_symbol));
                }

// Assembly:
movq %rdi, -0x8(%rsp)
movq %rsi, -0x10(%rsp)
movq -0x10(%rsp), %rcx
movq -0x8(%rsp), %rdx
movb $0x1, %al
cmpq 0x10d0(%rdx), %rcx
movb %al, -0x11(%rsp)
je 0xf5dbf
movq -0x10(%rsp), %rcx
movq -0x8(%rsp), %rdx
movb $0x1, %al
cmpq 0x11e0(%rdx), %rcx
movb %al, -0x11(%rsp)
je 0xf5dbf
movq -0x10(%rsp), %rcx
movq -0x8(%rsp), %rdx
movb $0x1, %al
cmpq 0x1180(%rdx), %rcx
movb %al, -0x11(%rsp)
je 0xf5dbf
movq -0x10(%rsp), %rcx
movq -0x8(%rsp), %rdx
movb $0x1, %al
cmpq 0x1038(%rdx), %rcx
movb %al, -0x11(%rsp)
je 0xf5dbf
movq -0x10(%rsp), %rcx
movq -0x8(%rsp), %rdx
movb $0x1, %al
cmpq 0x1120(%rdx), %rcx
movb %al, -0x11(%rsp)
je 0xf5dbf
movq -0x10(%rsp), %rax
movq -0x8(%rsp), %rcx
cmpq 0x1178(%rcx), %rax
sete %al
movb %al, -0x11(%rsp)
movb -0x11(%rsp), %al
andb $0x1, %al
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_p_p_f
static s7_pointer opt_set_p_p_f(opt_info *o)
                {
                    s7_pointer x;
                    oo_rc(o->sc, o, 5, 1);
                    o->sc->pc++;
                    x = o->v[4].fp(o->v[3].o1);
                    slot_set_value(o->v[1].p, x);
                    return(x);
                }

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq 0x68(%rax), %rax
movl 0x2258(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rax)
movq 0x10(%rsp), %rax
movq 0x20(%rax), %rax
movq 0x10(%rsp), %rcx
movq 0x18(%rcx), %rdi
callq *%rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rcx
movq 0x10(%rsp), %rax
movq 0x8(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x8(%rsp), %rax
addq $0x18, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: typed_vector_set_p_pip_direct
static s7_pointer typed_vector_set_p_pip_direct(s7_scheme *sc, s7_pointer v, s7_int i, s7_pointer p)
                {
                    if ((i >= 0) && (i < vector_length(v)))
                        typed_vector_setter(sc, v, i, p);
                    else out_of_range(sc, sc->vector_set_symbol, small_int(2), wrap_integer1(sc, i), (i < 0) ? its_negative_string : its_too_large_string);
                    return(p);
                }

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x40(%rsp)
movq %rsi, 0x38(%rsp)
movq %rdx, 0x30(%rsp)
movq %rcx, 0x28(%rsp)
cmpq $0x0, 0x30(%rsp)
jl 0xf5e7b
movq 0x30(%rsp), %rax
movq 0x38(%rsp), %rcx
cmpq 0x8(%rcx), %rax
jge 0xf5e7b
movq 0x40(%rsp), %rdi
movq 0x38(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq 0x28(%rsp), %rcx
callq 0x34290
jmp 0xf5ef7
movq 0x40(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x40(%rsp), %rax
movq 0x1668(%rax), %rax
movq 0x8(%rax), %rax
movq %rax, 0x10(%rsp)
movq 0x1205ef(%rip), %rax    # 0x216490
movq %rax, 0x18(%rsp)
movq 0x40(%rsp), %rdi
movq 0x30(%rsp), %rsi
callq 0x12430
movq %rax, 0x20(%rsp)
cmpq $0x0, 0x30(%rsp)
jge 0xf5ecf
movq 0x1246af(%rip), %rax    # 0x21a578
movq %rax, (%rsp)
jmp 0xf5eda
movq 0x12469a(%rip), %rax    # 0x21a570
movq %rax, (%rsp)
movq 0x20(%rsp), %rcx
movq 0x18(%rsp), %rdx
movq 0x10(%rsp), %rsi
movq 0x8(%rsp), %rdi
movq (%rsp), %r8
callq 0x13880
movq 0x28(%rsp), %rax
addq $0x48, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_p_i_fo_add
static s7_pointer opt_set_p_i_fo_add(opt_info *o)
                {
                    s7_pointer x;
                    s7_int i;
                    oo_rc(o->sc, o, 4, 3);
                    i = integer(slot_value(o->v[2].p)) + integer(slot_value(o->v[3].p));
                    x = make_integer(o->sc, i);
                    slot_set_value(o->v[1].p, x);
                    return(x);
                }

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x40(%rsp)
movq 0x40(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq 0x40(%rsp), %rcx
movq 0x18(%rcx), %rcx
movq 0x10(%rcx), %rcx
addq 0x8(%rcx), %rax
movq %rax, 0x30(%rsp)
movq 0x30(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
andq $-0x800, %rax           # imm = 0xF800
cmpq $0x0, %rax
jne 0xf7245
movq 0x28(%rsp), %rcx
leaq 0x11f249(%rip), %rax    # 0x216480
movq (%rax,%rcx,8), %rax
movq %rax, 0x8(%rsp)
jmp 0xf72cc
jmp 0xf7247
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x90(%rax), %rax
movq 0x40(%rsp), %rcx
movq 0x68(%rcx), %rcx
cmpq 0x98(%rcx), %rax
ja 0xf7277
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rdi
callq 0xc670
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rcx
movq 0x90(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x90(%rcx)
movq -0x8(%rax), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movq $0xb, (%rax)
movq 0x28(%rsp), %rcx
movq 0x18(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x18(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
movq %rax, 0x38(%rsp)
movq 0x38(%rsp), %rcx
movq 0x40(%rsp), %rax
movq 0x8(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x38(%rsp), %rax
addq $0x48, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_p_i_fo
static s7_pointer opt_set_p_i_fo(opt_info *o)
                {
                    s7_pointer x;
                    s7_int i;
                    oo_rc(o->sc, o, 4, 3);
                    i = o->v[4].i_ii_f(integer(slot_value(o->v[2].p)), integer(slot_value(o->v[3].p)));
                    x = make_integer(o->sc, i);
                    slot_set_value(o->v[1].p, x);
                    return(x);
                }

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x40(%rsp)
movq 0x40(%rsp), %rax
movq 0x20(%rax), %rax
movq 0x40(%rsp), %rcx
movq 0x10(%rcx), %rcx
movq 0x10(%rcx), %rcx
movq 0x8(%rcx), %rdi
movq 0x40(%rsp), %rcx
movq 0x18(%rcx), %rcx
movq 0x10(%rcx), %rcx
movq 0x8(%rcx), %rsi
callq *%rax
movq %rax, 0x30(%rsp)
movq 0x30(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
andq $-0x800, %rax           # imm = 0xF800
cmpq $0x0, %rax
jne 0xf7370
movq 0x28(%rsp), %rcx
leaq 0x11f11e(%rip), %rax    # 0x216480
movq (%rax,%rcx,8), %rax
movq %rax, 0x8(%rsp)
jmp 0xf73f7
jmp 0xf7372
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x90(%rax), %rax
movq 0x40(%rsp), %rcx
movq 0x68(%rcx), %rcx
cmpq 0x98(%rcx), %rax
ja 0xf73a2
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rdi
callq 0xc670
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rcx
movq 0x90(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x90(%rcx)
movq -0x8(%rax), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movq $0xb, (%rax)
movq 0x28(%rsp), %rcx
movq 0x18(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x18(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
movq %rax, 0x38(%rsp)
movq 0x38(%rsp), %rcx
movq 0x40(%rsp), %rax
movq 0x8(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x38(%rsp), %rax
addq $0x48, %rsp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_p_i_fo1_add
static s7_pointer opt_set_p_i_fo1_add(opt_info *o)
                {
                    s7_pointer x;
                    s7_int i;
                    oo_rc(o->sc, o, 4, 2);
                    i = integer(slot_value(o->v[2].p)) + o->v[3].i;
                    x = make_integer(o->sc, i);
                    slot_set_value(o->v[1].p, x);
                    return(x);
                }

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x40(%rsp)
movq 0x40(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq 0x40(%rsp), %rcx
addq 0x18(%rcx), %rax
movq %rax, 0x30(%rsp)
movq 0x30(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
andq $-0x800, %rax           # imm = 0xF800
cmpq $0x0, %rax
jne 0xf74dd
movq 0x28(%rsp), %rcx
leaq 0x11efb1(%rip), %rax    # 0x216480
movq (%rax,%rcx,8), %rax
movq %rax, 0x8(%rsp)
jmp 0xf7564
jmp 0xf74df
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x90(%rax), %rax
movq 0x40(%rsp), %rcx
movq 0x68(%rcx), %rcx
cmpq 0x98(%rcx), %rax
ja 0xf750f
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rdi
callq 0xc670
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rcx
movq 0x90(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x90(%rcx)
movq -0x8(%rax), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movq $0xb, (%rax)
movq 0x28(%rsp), %rcx
movq 0x18(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x18(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
movq %rax, 0x38(%rsp)
movq 0x38(%rsp), %rcx
movq 0x40(%rsp), %rax
movq 0x8(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x38(%rsp), %rax
addq $0x48, %rsp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_set_p_i_fo1
static s7_pointer opt_set_p_i_fo1(opt_info *o)
                {
                    s7_pointer x;
                    s7_int i;
                    oo_rc(o->sc, o, 4, 2);
                    i = o->v[4].i_ii_f(integer(slot_value(o->v[2].p)), o->v[3].i);
                    x = make_integer(o->sc, i);
                    slot_set_value(o->v[1].p, x);
                    return(x);
                }

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x40(%rsp)
movq 0x40(%rsp), %rax
movq 0x20(%rax), %rax
movq 0x40(%rsp), %rcx
movq 0x10(%rcx), %rcx
movq 0x10(%rcx), %rcx
movq 0x8(%rcx), %rdi
movq 0x40(%rsp), %rcx
movq 0x18(%rcx), %rsi
callq *%rax
movq %rax, 0x30(%rsp)
movq 0x30(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
andq $-0x800, %rax           # imm = 0xF800
cmpq $0x0, %rax
jne 0xf7608
movq 0x28(%rsp), %rcx
leaq 0x11ee86(%rip), %rax    # 0x216480
movq (%rax,%rcx,8), %rax
movq %rax, 0x8(%rsp)
jmp 0xf768f
jmp 0xf760a
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rax
movq 0x90(%rax), %rax
movq 0x40(%rsp), %rcx
movq 0x68(%rcx), %rcx
cmpq 0x98(%rcx), %rax
ja 0xf763a
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rdi
callq 0xc670
movq 0x40(%rsp), %rax
movq 0x68(%rax), %rcx
movq 0x90(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x90(%rcx)
movq -0x8(%rax), %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movq $0xb, (%rax)
movq 0x28(%rsp), %rcx
movq 0x18(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x18(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x10(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
movq %rax, 0x38(%rsp)
movq 0x38(%rsp), %rcx
movq 0x40(%rsp), %rax
movq 0x8(%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x38(%rsp), %rax
addq $0x48, %rsp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: tree_count
static s7_int tree_count(s7_scheme *sc, s7_pointer x, s7_pointer p, s7_int count)
                {
                if (p == x)
                return(count + 1);
                if ((!is_pair(p)) || (car(p) == sc->quote_symbol))
                return(count);
                return(tree_count(sc, x, cdr(p), tree_count(sc, x, car(p), count)));
                }

// Assembly:
subq $0x48, %rsp
movq %rdi, 0x38(%rsp)
movq %rsi, 0x30(%rsp)
movq %rdx, 0x28(%rsp)
movq %rcx, 0x20(%rsp)
movq 0x28(%rsp), %rax
cmpq 0x30(%rsp), %rax
jne 0xf76f7
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x40(%rsp)
jmp 0xf7782
movq 0x28(%rsp), %rax
movzbl (%rax), %eax
cmpl $0x1, %eax
jne 0xf771b
movq 0x28(%rsp), %rax
movq 0x8(%rax), %rax
movq 0x38(%rsp), %rcx
cmpq 0x17b0(%rcx), %rax
jne 0xf7727
movq 0x20(%rsp), %rax
movq %rax, 0x40(%rsp)
jmp 0xf7782
movq 0x38(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x30(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x28(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x18(%rsp)
movq 0x38(%rsp), %rdi
movq 0x30(%rsp), %rsi
movq 0x28(%rsp), %rax
movq 0x8(%rax), %rdx
movq 0x20(%rsp), %rcx
callq 0xf76c0
movq 0x8(%rsp), %rdi
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rax, %rcx
callq 0xf76c0
movq %rax, 0x40(%rsp)
movq 0x40(%rsp), %rax
addq $0x48, %rsp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/BernardTatin[P]s7sh/s7.c
// Function: opt_d_mm_fff
static s7_double opt_d_mm_fff(opt_info *o)
                {
                    opt_info *o1, *o2;
                    s7_double x1, x2;
                    s7_scheme *sc;
                    sc = o->sc;
                    o1 = sc->opts[++sc->pc];
                    x1 = float_vector_ref_d_7pi(sc, slot_value(o1->v[2].p), integer(slot_value(o1->v[3].p))) * real(slot_value(o1->v[1].p));
                    o2 = sc->opts[++sc->pc];
                    x2 = float_vector_ref_d_7pi(sc, slot_value(o2->v[2].p), integer(slot_value(o2->v[3].p))) * real(slot_value(o2->v[1].p));
                    oo_rc(sc, o, 4, 0);
                    return(o->v[3].d_dd_f(x1, x2));
                }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x30(%rsp)
movq 0x30(%rsp), %rax
movq 0x68(%rax), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rsp), %rax
movq 0x8(%rsp), %rdx
movl 0x2258(%rdx), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rdx)
movslq %ecx, %rcx
movq 0x2260(%rax,%rcx,8), %rax
movq %rax, 0x28(%rsp)
movq 0x8(%rsp), %rdi
movq 0x28(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rsi
movq 0x28(%rsp), %rax
movq 0x18(%rax), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rdx
callq 0xa71f0
movq 0x28(%rsp), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rax
mulsd 0x8(%rax), %xmm0
movsd %xmm0, 0x18(%rsp)
movq 0x8(%rsp), %rax
movq 0x8(%rsp), %rdx
movl 0x2258(%rdx), %ecx
addl $0x1, %ecx
movl %ecx, 0x2258(%rdx)
movslq %ecx, %rcx
movq 0x2260(%rax,%rcx,8), %rax
movq %rax, 0x20(%rsp)
movq 0x8(%rsp), %rdi
movq 0x20(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rsi
movq 0x20(%rsp), %rax
movq 0x18(%rax), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rdx
callq 0xa71f0
movq 0x20(%rsp), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rax
mulsd 0x8(%rax), %xmm0
movsd %xmm0, 0x10(%rsp)
movq 0x30(%rsp), %rax
movq 0x18(%rax), %rax
movsd 0x18(%rsp), %xmm0
movsd 0x10(%rsp), %xmm1
callq *%rax
addq $0x38, %rsp
retq
nopw %cs:(%rax,%rax)