LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_ft_store
void af_prim_ft_store(af_task_t* task) {
  af_float_t value;
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  AF_VERIFY_FLOAT_STACK_READ(task, 1);
  target_task = (af_task_t*)(*task->data_stack_current++);
  offset = *task->data_stack_current++;
  value = *task->float_stack_current++;
  *(af_float_t*)(target_task->task_local_space_base + offset) = value;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd (%rax), %xmm0
movsd %xmm0, -0x10(%rbp)
movsd -0x10(%rbp), %xmm0
movq -0x20(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x18(%rbp), %rcx
movsd %xmm0, (%rax,%rcx)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xffd6
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0xffde
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0xffde
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_sft_fetch
void af_prim_sft_fetch(af_task_t* task) {
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  AF_VERIFY_FLOAT_STACK_EXPAND(task, 1);
  target_task = (af_task_t*)(*task->data_stack_current++);
  offset = *(task->data_stack_current++);
  *(--task->float_stack_current) =
    *(af_sfloat_t*)(target_task->task_local_space_base + offset);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x18(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x10(%rbp), %rcx
movss (%rax,%rcx), %xmm0
cvtss2sd %xmm0, %xmm0
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd %xmm0, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10081
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0x10089
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0x10089
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_sft_store
void af_prim_sft_store(af_task_t* task) {
  af_float_t value;
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  AF_VERIFY_FLOAT_STACK_READ(task, 1);
  target_task = (af_task_t*)(*task->data_stack_current++);
  offset = *task->data_stack_current++;
  value = *task->float_stack_current++;
  *(af_sfloat_t*)(target_task->task_local_space_base + offset) = value;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd (%rax), %xmm0
movsd %xmm0, -0x10(%rbp)
movsd -0x10(%rbp), %xmm0
cvtsd2ss %xmm0, %xmm0
movq -0x20(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x18(%rbp), %rcx
movss %xmm0, (%rax,%rcx)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x1013a
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0x10142
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0x10142
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_dft_fetch
void af_prim_dft_fetch(af_task_t* task) {
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  AF_VERIFY_FLOAT_STACK_EXPAND(task, 1);
  target_task = (af_task_t*)(*task->data_stack_current++);
  offset = *(task->data_stack_current++);
  *(--task->float_stack_current) =
    *(af_dfloat_t*)(target_task->task_local_space_base + offset);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x18(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x10(%rbp), %rcx
movsd (%rax,%rcx), %xmm0
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd %xmm0, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x101dd
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0x101e5
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0x101e5
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_dft_store
void af_prim_dft_store(af_task_t* task) {
  af_float_t value;
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  AF_VERIFY_FLOAT_STACK_READ(task, 1);
  target_task = (af_task_t*)(*task->data_stack_current++);
  offset = *task->data_stack_current++;
  value = *task->float_stack_current++;
  *(af_dfloat_t*)(target_task->task_local_space_base + offset) = value;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd (%rax), %xmm0
movsd %xmm0, -0x10(%rbp)
movsd -0x10(%rbp), %xmm0
movq -0x20(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x18(%rbp), %rcx
movsd %xmm0, (%rax,%rcx)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10296
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0x1029e
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0x1029e
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_task_trace
void af_prim_task_trace(af_task_t* task) {
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  target_task = (af_task_t*)(*(task->data_stack_current++));
  target_task->do_trace = (af_bool_t)(*(task->data_stack_current++));
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x128(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x104e8
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0x104f0
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0x104f0
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_global_trace
void af_prim_global_trace(af_task_t* task) {
  af_global_t* global = task->global;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  global->do_trace = (af_bool_t)(*(task->data_stack_current++));
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x200(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10559
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0x10561
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0x10561
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_little_endian
void af_prim_little_endian(af_task_t* task) {
  af_cell_t value = 1;
  AF_VERIFY_DATA_STACK_EXPAND(task,  1);
  *(--task->data_stack_current) = *(af_byte_t*)(&value) ? TRUE : FALSE;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq $0x1, -0x10(%rbp)
movzbl -0x10(%rbp), %edx
xorl %eax, %eax
movl $0xffffffff, %ecx       # imm = 0xFFFFFFFF
cmpl $0x0, %edx
cmovnel %ecx, %eax
movslq %eax, %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x105d0
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0x105d8
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0x105d8
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_tick
void af_prim_tick(af_task_t* task) {
  af_global_t* global = task->global;
  af_byte_t* name;
  af_cell_t name_length;
  af_word_t* word;
  AF_VERIFY_DATA_STACK_EXPAND(task, 1);
  if(!af_parse_name_available(global, task)) {
    af_handle_word_expected(global, task);
    return;
  }
  name = af_parse_name(global, task, &name_length);

  if(!(word = af_lookup(global, task, name, name_length))) {
#ifdef DEBUG
    af_byte_t* buffer = malloc(name_length + 1);
    memcpy(buffer, name, name_length);
    buffer[name_length] = 0;
    fprintf(stderr, "Got name: \"%s\"\n", buffer);
    free(buffer);
#endif
    
    af_handle_word_not_found(global, task);
    return;
  }
  *(--task->data_stack_current) = (af_cell_t)word;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
callq 0x5620
cmpq $0x0, %rax
jne 0x1062c
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
callq 0x43e0
jmp 0x106c3
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
leaq -0x20(%rbp), %rdx
callq 0x57b0
movq %rax, -0x18(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
callq 0x4990
movq %rax, -0x28(%rbp)
cmpq $0x0, %rax
jne 0x1066f
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
callq 0x44a0
jmp 0x106c3
movq -0x28(%rbp), %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x106af
movq -0x30(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x38(%rbp)
jmp 0x106b7
xorl %eax, %eax
movq %rax, -0x38(%rbp)
jmp 0x106b7
movq -0x38(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_bracket_tick
void af_prim_bracket_tick(af_task_t* task) {
  af_global_t* global = task->global;
  af_byte_t* name;
  af_cell_t name_length;
  af_word_t* word;
  af_compiled_t* code;
  AF_VERIFY_COMPILING(task);
  if(!af_parse_name_available(global, task)) {
    af_handle_word_expected(global, task);
    return;
  }
  if(!(code = af_allot(global, task, sizeof(af_compiled_t) * 2))) {
    return;
  }
  name = af_parse_name(global, task, &name_length);
  if(!(word = af_lookup(global, task, name, name_length))) {
#ifdef DEBUG
    af_byte_t* buffer = malloc(name_length + 1);
    memcpy(buffer, name, name_length);
    buffer[name_length] = 0;
    fprintf(stderr, "Got name: \"%s\"\n", buffer);
    free(buffer);
#endif

    af_handle_word_not_found(global, task);
    return;
  }
  code->compiled_call = global->builtin_literal_runtime;
  (code + 1)->compiled_cell = (af_cell_t)word;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
callq 0x5620
cmpq $0x0, %rax
jne 0x1070c
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
callq 0x43e0
jmp 0x107c7
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
movl $0x10, %edx
callq 0x47e0
movq %rax, -0x30(%rbp)
cmpq $0x0, %rax
jne 0x1072d
jmp 0x107c7
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
leaq -0x20(%rbp), %rdx
callq 0x57b0
movq %rax, -0x18(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
callq 0x4990
movq %rax, -0x28(%rbp)
cmpq $0x0, %rax
jne 0x10770
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
callq 0x44a0
jmp 0x107c7
movq -0x10(%rbp), %rax
movq 0x180(%rax), %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movq -0x28(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, 0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x107b3
movq -0x38(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x40(%rbp)
jmp 0x107bb
xorl %eax, %eax
movq %rax, -0x40(%rbp)
jmp 0x107bb
movq -0x40(%rbp), %rcx
movq -0x38(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_source
void af_prim_source(af_task_t* task) {
  AF_VERIFY_DATA_STACK_EXPAND(task, 2);
  *(--task->data_stack_current) = (af_cell_t)task->current_input->buffer;
  *(--task->data_stack_current) = task->current_input->count;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0xe8(%rax), %rax
movq 0x8(%rax), %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, -0x8(%rax)
movq -0x8(%rbp), %rax
movq 0xe8(%rax), %rax
movq 0x10(%rax), %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10a59
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0x10a61
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0x10a61
movq -0x18(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_to_input
void af_prim_to_input(af_task_t* task) {
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  target_task = (af_task_t*)(*task->data_stack_current++);
  target_task->current_input = (af_input_t*)(*task->data_stack_current++);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0xe8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10ad8
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0x10ae0
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0x10ae0
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_from_input
void af_prim_from_input(af_task_t* task) {
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  target_task = (af_task_t*)(*task->data_stack_current);
  *task->data_stack_current = (af_cell_t)target_task->current_input;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq 0xe8(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10b42
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0x10b4a
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0x10b4a
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_to_data
void af_prim_to_data(af_task_t* task) {
  af_global_t* global = task->global;
  af_task_t* target_task;
  af_cell_t value;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  target_task = (af_task_t*)(*task->data_stack_current++);
  value = *task->data_stack_current++;
  af_push_data(global, target_task, value);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
callq 0x3bb0
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10be1
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0x10be9
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0x10be9
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_to_float
void af_prim_to_float(af_task_t* task) {
  af_global_t* global = task->global;
  af_task_t* target_task;
  af_float_t value;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_FLOAT_STACK_READ(task, 1);
  target_task = (af_task_t*)(*task->data_stack_current++);
  value = *task->float_stack_current++;
  af_push_float(global, target_task, value);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd (%rax), %xmm0
movsd %xmm0, -0x20(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movsd -0x20(%rbp), %xmm0
callq 0x3be0
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10c84
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0x10c8c
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0x10c8c
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x30, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_to_return
void af_prim_to_return(af_task_t* task) {
  af_global_t* global = task->global;
  af_task_t* target_task;
  af_compiled_t* pointer;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  target_task = (af_task_t*)(*task->data_stack_current++);
  pointer = (af_compiled_t*)(*task->data_stack_current++);
  af_push_return(global, target_task, pointer);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
callq 0x3c10
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10d21
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0x10d29
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0x10d29
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_to_abort
void af_prim_to_abort(af_task_t* task) {
  af_task_t* target_task;
  af_word_t* word;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  target_task = (af_task_t*)(*task->data_stack_current++);
  target_task->abort = (af_word_t*)(*task->data_stack_current++);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x100(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10da8
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0x10db0
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0x10db0
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_from_abort
void af_prim_from_abort(af_task_t* task) {
  af_task_t* target_task;
  af_word_t* word;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  target_task = (af_task_t*)(*task->data_stack_current);
  *task->data_stack_current = (af_cell_t)target_task->abort;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq 0x100(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10e12
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0x10e1a
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0x10e1a
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_to_terminate
void af_prim_to_terminate(af_task_t* task) {
  af_task_t* target_task;
  af_word_t* word;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  target_task = (af_task_t*)(*task->data_stack_current++);
  target_task->terminate = (af_word_t*)(*task->data_stack_current++);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x108(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10e98
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0x10ea0
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0x10ea0
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_from_terminate
void af_prim_from_terminate(af_task_t* task) {
  af_task_t* target_task;
  af_word_t* word;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  target_task = (af_task_t*)(*task->data_stack_current);
  *task->data_stack_current = (af_cell_t)target_task->terminate;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq 0x108(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10f02
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0x10f0a
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0x10f0a
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_to_default_abort
void af_prim_to_default_abort(af_task_t* task) {
  af_global_t* global = task->global;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  global->default_abort = (af_word_t*)(*task->data_stack_current++);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x1a8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10f79
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0x10f81
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0x10f81
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_from_default_abort
void af_prim_from_default_abort(af_task_t* task) {
  af_global_t* global = task->global;
  AF_VERIFY_DATA_STACK_EXPAND(task, 1);
  *(--task->data_stack_current) = (af_cell_t)global->default_abort;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq 0x1a8(%rax), %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x10fea
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0x10ff2
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0x10ff2
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_allocate
void af_prim_allocate(af_task_t* task) {
  void* data;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_DATA_STACK_EXPAND(task, 1);
  if(!(data = malloc((size_t)(*task->data_stack_current)))) {
    *task->data_stack_current = (af_cell_t)NULL;
    *(--task->data_stack_current) = 1;
    return;
  }
  *task->data_stack_current = (af_cell_t)data;
  *(--task->data_stack_current) = 0;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rdi
callq 0x21f0
movq %rax, -0x10(%rbp)
cmpq $0x0, %rax
jne 0x11052
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq $0x0, (%rax)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x60(%rcx)
movq $0x1, -0x8(%rax)
jmp 0x110b5
movq -0x10(%rbp), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x60(%rcx)
movq $0x0, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x110a1
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0x110a9
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0x110a9
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_free
void af_prim_free(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  free((void*)(*task->data_stack_current));
  *task->data_stack_current = 0;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rdi
callq 0x2040
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq $0x0, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x11110
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0x11118
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0x11118
movq -0x18(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x20, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_resize
void af_prim_resize(af_task_t* task) {
  void* data;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  if(!(data = realloc((void*)(*(task->data_stack_current + 1)),
		      (size_t)(*task->data_stack_current)))) {
    *(task->data_stack_current + 1) = (af_cell_t)NULL;
    *task->data_stack_current = 1;
    return;
  }
  *(task->data_stack_current + 1) = (af_cell_t)data;
  *task->data_stack_current = 0;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rdi
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rsi
callq 0x2200
movq %rax, -0x10(%rbp)
cmpq $0x0, %rax
jne 0x11183
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq $0x0, 0x8(%rax)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq $0x1, (%rax)
jmp 0x111db
movq -0x10(%rbp), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, 0x8(%rax)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq $0x0, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x111c7
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0x111cf
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0x111cf
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_allot
void af_prim_allot(af_task_t* task) {
  af_global_t* global = task->global;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  if(!af_allot(global, task, (ssize_t)(*task->data_stack_current++))) {
    return;
  }
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rdx
callq 0x47e0
cmpq $0x0, %rax
jne 0x11232
jmp 0x1126b
movq -0x8(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x11257
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0x1125f
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0x1125f
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_word
void af_prim_word(af_task_t* task) {
  af_global_t* global = task->global;
  af_byte_t delimiter;
  af_byte_t* text;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  delimiter = (af_byte_t)(*task->data_stack_current & 0xFF);
  text = af_word(global, task, delimiter);
  *task->data_stack_current = (af_cell_t)text;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
andq $0xff, %rax
movb %al, -0x11(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
movzbl -0x11(%rbp), %edx
callq 0x53e0
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x112f4
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0x112fc
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0x112fc
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x30, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_parse_name
void af_prim_parse_name(af_task_t* task) {
  af_global_t* global = task->global;
  af_byte_t* text;
  af_cell_t length;
  AF_VERIFY_DATA_STACK_EXPAND(task, 2);
  if(!af_parse_name_available(global, task)) {
    *(--task->data_stack_current) = (af_cell_t)NULL;
    *(--task->data_stack_current) = 0;
  } else {
    text = af_parse_name(global, task, &length);
    *(--task->data_stack_current) = (af_cell_t)text;
    *(--task->data_stack_current) = length;
  }
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
callq 0x5620
cmpq $0x0, %rax
jne 0x11372
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x60(%rcx)
movq $0x0, -0x8(%rax)
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x60(%rcx)
movq $0x0, -0x8(%rax)
jmp 0x113bd
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rsi
leaq -0x20(%rbp), %rdx
callq 0x57b0
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, -0x8(%rax)
movq -0x20(%rbp), %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x113e2
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0x113ea
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0x113ea
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_parse_number
void af_prim_parse_number(af_task_t* task) {
  af_global_t* global = task->global;
  af_byte_t* text;
  af_cell_t length;
  af_sign_cell_t result;
  af_bool_t success;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  text = (af_byte_t*)(*(task->data_stack_current + 1));
  length = *task->data_stack_current;
  success = af_parse_number(global, task->base, text, length, &result);
  *(task->data_stack_current + 1) = (af_cell_t)result;
  *task->data_stack_current = (af_cell_t)success;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0xf0(%rax), %rsi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
leaq -0x28(%rbp), %r8
callq 0x4a30
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, 0x8(%rax)
movq -0x30(%rbp), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x1149e
movq -0x38(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x40(%rbp)
jmp 0x114a6
xorl %eax, %eax
movq %rax, -0x40(%rbp)
jmp 0x114a6
movq -0x40(%rbp), %rcx
movq -0x38(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_parse_2number
void af_prim_parse_2number(af_task_t* task) {
  af_global_t* global = task->global;
  af_byte_t* text;
  af_cell_t length;
  af_sign_2cell_t result;
  af_bool_t success;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  AF_VERIFY_DATA_STACK_EXPAND(task, 1);
  text = (af_byte_t*)(*(task->data_stack_current + 1));
  length = *task->data_stack_current;
  success = af_parse_2number(global, task->base, text, length, &result);
  AF_STORE_2CELL(task, 0, result);
  *(--task->data_stack_current) = (af_cell_t)success;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0xf0(%rax), %rsi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
leaq -0x30(%rbp), %r8
callq 0x4ea0
movq %rax, -0x38(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x40(%rbp)
movq $0x0, -0x48(%rbp)
movq -0x30(%rbp), %rax
movq -0x28(%rbp), %rcx
movq %rcx, -0x58(%rbp)
movq %rax, -0x60(%rbp)
movq -0x58(%rbp), %rdx
movq -0x40(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x48(%rbp), %rcx
movq %rdx, (%rax,%rcx,8)
movq -0x60(%rbp), %rdx
movq -0x40(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x48(%rbp), %rcx
movq %rdx, 0x8(%rax,%rcx,8)
movq -0x38(%rbp), %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x68(%rbp)
movq -0x68(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x115a3
movq -0x68(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x70(%rbp)
jmp 0x115ab
xorl %eax, %eax
movq %rax, -0x70(%rbp)
jmp 0x115ab
movq -0x70(%rbp), %rcx
movq -0x68(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x70, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_parse_float
void af_prim_parse_float(af_task_t* task) {
  af_global_t* global = task->global;
  af_byte_t* text;
  af_cell_t length;
  af_float_t result;
  af_bool_t success;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  AF_VERIFY_FLOAT_STACK_EXPAND(task, 1);
  text = (af_byte_t*)(*(task->data_stack_current + 1));
  length = *task->data_stack_current;
  success = af_parse_float(global, text, length, &result);
  *(--task->float_stack_current) = result;
  *(++task->data_stack_current) = (af_cell_t)success;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
leaq -0x28(%rbp), %rcx
callq 0x4d60
movq %rax, -0x30(%rbp)
movsd -0x28(%rbp), %xmm0
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $-0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd %xmm0, -0x8(%rax)
movq -0x30(%rbp), %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, 0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x1166c
movq -0x38(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x40(%rbp)
jmp 0x11674
xorl %eax, %eax
movq %rax, -0x40(%rbp)
jmp 0x11674
movq -0x40(%rbp), %rcx
movq -0x38(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x40, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_format_unsigned_number
void af_prim_format_unsigned_number(af_task_t* task) {
  af_byte_t buffer[64];
  af_byte_t* current = buffer + sizeof(buffer);
  af_cell_t length = 0;
  af_cell_t value;
  af_bool_t negative = FALSE;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_DATA_STACK_EXPAND(task, 1);
  value = *task->data_stack_current;
  if(value == 0) {
    *(--current) = '0';
    length++;
  } else if(task->base >= 2 && task->base <= 36) {
    while(value > 0) {
      af_byte_t part = value % task->base;
      if(part < 10) {
	part += '0';
      } else {
	part += 'A' - 10;
      }
      value /= task->base;
      *(--current) = part;
      length++;
    }
  }
  memcpy(task->data_space_current, current, length);
  *task->data_stack_current = (af_cell_t)task->data_space_current;
  *(--task->data_stack_current) = length;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movq %rdi, -0x8(%rbp)
leaq -0x50(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x58(%rbp)
movq $0x0, -0x60(%rbp)
movq $0x0, -0x70(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x68(%rbp)
cmpq $0x0, -0x68(%rbp)
jne 0x11955
movq -0x58(%rbp), %rax
movq %rax, %rcx
addq $-0x1, %rcx
movq %rcx, -0x58(%rbp)
movb $0x30, -0x1(%rax)
movq -0x60(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x60(%rbp)
jmp 0x119f2
movq -0x8(%rbp), %rax
cmpq $0x2, 0xf0(%rax)
jb 0x119f0
movq -0x8(%rbp), %rax
cmpq $0x24, 0xf0(%rax)
ja 0x119f0
jmp 0x11977
cmpq $0x0, -0x68(%rbp)
jbe 0x119ee
movq -0x68(%rbp), %rax
movq -0x8(%rbp), %rcx
xorl %edx, %edx
divq 0xf0(%rcx)
movb %dl, %al
movb %al, -0x71(%rbp)
movzbl -0x71(%rbp), %eax
cmpl $0xa, %eax
jge 0x119a9
movzbl -0x71(%rbp), %eax
addl $0x30, %eax
movb %al, -0x71(%rbp)
jmp 0x119b3
movzbl -0x71(%rbp), %eax
addl $0x37, %eax
movb %al, -0x71(%rbp)
movq -0x8(%rbp), %rax
movq 0xf0(%rax), %rcx
movq -0x68(%rbp), %rax
xorl %edx, %edx
divq %rcx
movq %rax, -0x68(%rbp)
movb -0x71(%rbp), %cl
movq -0x58(%rbp), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, -0x58(%rbp)
movb %cl, -0x1(%rax)
movq -0x60(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x60(%rbp)
jmp 0x11977
jmp 0x119f0
jmp 0x119f2
movq -0x8(%rbp), %rax
movq 0xc8(%rax), %rdi
movq -0x58(%rbp), %rsi
movq -0x60(%rbp), %rdx
callq 0x21c0
movq -0x8(%rbp), %rax
movq 0xc8(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x60(%rbp), %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x80(%rbp)
movq -0x80(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x11a63
movq -0x80(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x88(%rbp)
jmp 0x11a6e
xorl %eax, %eax
movq %rax, -0x88(%rbp)
jmp 0x11a6e
movq -0x88(%rbp), %rcx
movq -0x80(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x90, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_format_float
void af_prim_format_float(af_task_t* task) {
  af_byte_t buffer[64];
  af_byte_t format[64];
  af_cell_t length;
  af_float_t value;
  int precision;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_FLOAT_STACK_READ(task, 1);
  AF_VERIFY_DATA_STACK_EXPAND(task, 2);
  precision = *task->data_stack_current;
  if(precision < 0) {
    precision = 0;
  }
  value = *task->float_stack_current++;
  snprintf(format, sizeof(format), "%%.%df", precision);
  snprintf(buffer, sizeof(buffer), format, value);
  length = strlen(buffer);
  memcpy(task->data_space_current, buffer, length);
  *task->data_stack_current = (af_cell_t)task->data_space_current;
  *(--task->data_stack_current) = length;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movl %eax, -0xa4(%rbp)
cmpl $0x0, -0xa4(%rbp)
jge 0x12213
movl $0x0, -0xa4(%rbp)
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd (%rax), %xmm0
movsd %xmm0, -0xa0(%rbp)
leaq -0x90(%rbp), %rdi
movl -0xa4(%rbp), %ecx
movl $0x40, %esi
leaq 0x8857(%rip), %rdx      # 0x1aaa2
movb $0x0, %al
callq 0x2140
leaq -0x50(%rbp), %rdi
leaq -0x90(%rbp), %rdx
movsd -0xa0(%rbp), %xmm0
movl $0x40, %esi
movb $0x1, %al
callq 0x2140
leaq -0x50(%rbp), %rdi
callq 0x2110
movq %rax, -0x98(%rbp)
movq -0x8(%rbp), %rax
movq 0xc8(%rax), %rdi
leaq -0x50(%rbp), %rsi
movq -0x98(%rbp), %rdx
callq 0x21c0
movq -0x8(%rbp), %rax
movq 0xc8(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x98(%rbp), %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0xb0(%rbp)
movq -0xb0(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x12301
movq -0xb0(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0xb8(%rbp)
jmp 0x1230c
xorl %eax, %eax
movq %rax, -0xb8(%rbp)
jmp 0x1230c
movq -0xb8(%rbp), %rcx
movq -0xb0(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0xc0, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_format_float_sci
void af_prim_format_float_sci(af_task_t* task) {
  af_byte_t buffer[64];
  af_byte_t format[64];
  af_cell_t length;
  af_float_t value;
  int precision;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_FLOAT_STACK_READ(task, 1);
  AF_VERIFY_DATA_STACK_EXPAND(task, 2);
  precision = *task->data_stack_current;
  if(precision < 0) {
    precision = 0;
  }
  value = *task->float_stack_current++;
  snprintf(format, sizeof(format), "%%.%de", precision);
  snprintf(buffer, sizeof(buffer), format, value);
  length = strlen(buffer);
  memcpy(task->data_space_current, buffer, length);
  *task->data_stack_current = (af_cell_t)task->data_space_current;
  *(--task->data_stack_current) = length;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movl %eax, -0xa4(%rbp)
cmpl $0x0, -0xa4(%rbp)
jge 0x12363
movl $0x0, -0xa4(%rbp)
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd (%rax), %xmm0
movsd %xmm0, -0xa0(%rbp)
leaq -0x90(%rbp), %rdi
movl -0xa4(%rbp), %ecx
movl $0x40, %esi
leaq 0x870e(%rip), %rdx      # 0x1aaa9
movb $0x0, %al
callq 0x2140
leaq -0x50(%rbp), %rdi
leaq -0x90(%rbp), %rdx
movsd -0xa0(%rbp), %xmm0
movl $0x40, %esi
movb $0x1, %al
callq 0x2140
leaq -0x50(%rbp), %rdi
callq 0x2110
movq %rax, -0x98(%rbp)
movq -0x8(%rbp), %rax
movq 0xc8(%rax), %rdi
leaq -0x50(%rbp), %rsi
movq -0x98(%rbp), %rdx
callq 0x21c0
movq -0x8(%rbp), %rax
movq 0xc8(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x98(%rbp), %rcx
movq -0x8(%rbp), %rdx
movq 0x60(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x60(%rdx)
movq %rcx, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0xb0(%rbp)
movq -0xb0(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x12451
movq -0xb0(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0xb8(%rbp)
jmp 0x1245c
xorl %eax, %eax
movq %rax, -0xb8(%rbp)
jmp 0x1245c
movq -0xb8(%rbp), %rcx
movq -0xb0(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0xc0, %rsp
popq %rbp
retq
nopw (%rax,%rax)