LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_d_lshift
void af_prim_d_lshift(af_task_t* task) {
  af_2cell_t value0;
  af_cell_t value1;
  AF_VERIFY_DATA_STACK_READ(task, 3);
  AF_LOAD_2CELL(task, 1, value0);
  value1 = *task->data_stack_current++;
  AF_STORE_2CELL(task, 0, value0 << value1);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x30(%rbp)
movq $0x1, -0x38(%rbp)
movq -0x30(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x38(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x50(%rbp)
movq $0x0, -0x48(%rbp)
movq -0x30(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x38(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq -0x60(%rbp), %rcx
movq -0x58(%rbp), %rax
movq -0x50(%rbp), %rdx
orq %rdx, %rax
movq %rcx, -0x20(%rbp)
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, -0x28(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x68(%rbp)
movq $0x0, -0x70(%rbp)
movq -0x20(%rbp), %rdi
movq -0x18(%rbp), %rdx
movb -0x28(%rbp), %sil
movb %sil, %cl
movq %rdi, %rax
shlq %cl, %rax
movb %sil, %cl
shldq %cl, %rdi, %rdx
movq %rdx, %rcx
xorl %edx, %edx
testb $0x40, %sil
cmovneq %rax, %rcx
cmovneq %rdx, %rax
movq %rcx, -0x78(%rbp)
movq %rax, -0x80(%rbp)
movq -0x78(%rbp), %rdx
movq -0x68(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x70(%rbp), %rcx
movq %rdx, (%rax,%rcx,8)
movq -0x80(%rbp), %rdx
movq -0x68(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x70(%rbp), %rcx
movq %rdx, 0x8(%rax,%rcx,8)
movq -0x8(%rbp), %rax
movq %rax, -0x88(%rbp)
movq -0x88(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xd465
movq -0x88(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x90(%rbp)
jmp 0xd470
xorl %eax, %eax
movq %rax, -0x90(%rbp)
jmp 0xd470
movq -0x90(%rbp), %rcx
movq -0x88(%rbp), %rax
movq %rcx, 0x58(%rax)
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/tabemann[P]attoforth/src/runtime/prim.c
// Function: af_prim_d_arshift
void af_prim_d_arshift(af_task_t* task) {
  af_sign_2cell_t value0;
  af_cell_t value1;
  AF_VERIFY_DATA_STACK_READ(task, 3);
  AF_LOAD_SIGN_2CELL(task, 1, value0);
  value1 = *task->data_stack_current++;
  AF_STORE_2CELL(task, 0, value0 >> value1);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x30(%rbp)
movq $0x1, -0x38(%rbp)
movq -0x30(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x38(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x50(%rbp)
movq $0x0, -0x48(%rbp)
movq -0x30(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x38(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq -0x60(%rbp), %rcx
movq -0x58(%rbp), %rax
movq -0x50(%rbp), %rdx
orq %rdx, %rax
movq %rcx, -0x20(%rbp)
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, -0x28(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x68(%rbp)
movq $0x0, -0x70(%rbp)
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rdx
movb -0x28(%rbp), %sil
movb %sil, %cl
movq %rdx, %rdi
sarq %cl, %rdi
movq %rdi, -0x90(%rbp)
movb %sil, %cl
shrdq %cl, %rdx, %rax
movq -0x90(%rbp), %rcx
sarq $0x3f, %rdx
testb $0x40, %sil
cmovneq %rcx, %rax
cmovneq %rdx, %rcx
movq %rcx, -0x78(%rbp)
movq %rax, -0x80(%rbp)
movq -0x78(%rbp), %rdx
movq -0x68(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x70(%rbp), %rcx
movq %rdx, (%rax,%rcx,8)
movq -0x80(%rbp), %rdx
movq -0x68(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x70(%rbp), %rcx
movq %rdx, 0x8(%rax,%rcx,8)
movq -0x8(%rbp), %rax
movq %rax, -0x88(%rbp)
movq -0x88(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xd722
movq -0x88(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x98(%rbp)
jmp 0xd72d
xorl %eax, %eax
movq %rax, -0x98(%rbp)
jmp 0xd72d
movq -0x98(%rbp), %rcx
movq -0x88(%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_d_lt
void af_prim_d_lt(af_task_t* task) {
  af_sign_2cell_t value0;
  af_sign_2cell_t value1;
  AF_VERIFY_DATA_STACK_READ(task, 4);
  AF_LOAD_SIGN_2CELL(task, 2, value0);
  AF_LOAD_SIGN_2CELL(task, 0, value1);
  task->data_stack_current += 3;
  *task->data_stack_current = (af_cell_t)(value0 < value1 ? -1 : 0);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x38(%rbp)
movq $0x2, -0x40(%rbp)
movq -0x38(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x40(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x50(%rbp)
movq $0x0, -0x48(%rbp)
movq -0x38(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x40(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq -0x60(%rbp), %rcx
movq -0x58(%rbp), %rax
movq -0x50(%rbp), %rdx
orq %rdx, %rax
movq %rcx, -0x20(%rbp)
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x68(%rbp)
movq $0x0, -0x70(%rbp)
movq -0x68(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x70(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x80(%rbp)
movq $0x0, -0x78(%rbp)
movq -0x68(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x70(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq %rax, -0x90(%rbp)
movq $0x0, -0x88(%rbp)
movq -0x90(%rbp), %rcx
movq -0x88(%rbp), %rax
movq -0x80(%rbp), %rdx
orq %rdx, %rax
movq %rcx, -0x30(%rbp)
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rcx
addq $0x18, %rcx
movq %rcx, 0x60(%rax)
movq -0x20(%rbp), %rdx
movq -0x18(%rbp), %rax
movq -0x30(%rbp), %rsi
movq -0x28(%rbp), %rcx
subq %rsi, %rdx
sbbq %rcx, %rax
setl %al
movzbl %al, %eax
negl %eax
movslq %eax, %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x98(%rbp)
movq -0x98(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xd895
movq -0x98(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0xa0(%rbp)
jmp 0xd8a0
xorl %eax, %eax
movq %rax, -0xa0(%rbp)
jmp 0xd8a0
movq -0xa0(%rbp), %rcx
movq -0x98(%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_d_u_lt
void af_prim_d_u_lt(af_task_t* task) {
  af_2cell_t value0;
  af_2cell_t value1;
  AF_VERIFY_DATA_STACK_READ(task, 4);
  AF_LOAD_2CELL(task, 2, value0);
  AF_LOAD_2CELL(task, 0, value1);
  task->data_stack_current += 3;
  *task->data_stack_current = (af_cell_t)(value0 < value1 ? -1 : 0);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x38(%rbp)
movq $0x2, -0x40(%rbp)
movq -0x38(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x40(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x50(%rbp)
movq $0x0, -0x48(%rbp)
movq -0x38(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x40(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq %rax, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq -0x60(%rbp), %rcx
movq -0x58(%rbp), %rax
movq -0x50(%rbp), %rdx
orq %rdx, %rax
movq %rcx, -0x20(%rbp)
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x68(%rbp)
movq $0x0, -0x70(%rbp)
movq -0x68(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x70(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x80(%rbp)
movq $0x0, -0x78(%rbp)
movq -0x68(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x70(%rbp), %rcx
movq 0x8(%rax,%rcx,8), %rax
movq %rax, -0x90(%rbp)
movq $0x0, -0x88(%rbp)
movq -0x90(%rbp), %rcx
movq -0x88(%rbp), %rax
movq -0x80(%rbp), %rdx
orq %rdx, %rax
movq %rcx, -0x30(%rbp)
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rcx
addq $0x18, %rcx
movq %rcx, 0x60(%rax)
movq -0x20(%rbp), %rsi
movq -0x18(%rbp), %rcx
movq -0x30(%rbp), %rdi
movq -0x28(%rbp), %rdx
xorl %eax, %eax
subq %rdi, %rsi
sbbq %rdx, %rcx
sbbl %eax, %eax
movslq %eax, %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x98(%rbp)
movq -0x98(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xe131
movq -0x98(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0xa0(%rbp)
jmp 0xe13c
xorl %eax, %eax
movq %rax, -0xa0(%rbp)
jmp 0xe13c
movq -0xa0(%rbp), %rcx
movq -0x98(%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_store
void af_prim_store(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 2);
  *(af_cell_t*)(*task->data_stack_current) = *(task->data_stack_current + 1);
  task->data_stack_current += 2;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rcx
addq $0x10, %rcx
movq %rcx, 0x60(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xe667
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xe66f
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xe66f
movq -0x18(%rbp), %rcx
movq -0x10(%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_add_store
void af_prim_add_store(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 2);
  *(af_cell_t*)(*task->data_stack_current) +=
    *(task->data_stack_current + 1);
  task->data_stack_current += 2;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
addq (%rax), %rcx
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rcx
addq $0x10, %rcx
movq %rcx, 0x60(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xe6da
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xe6e2
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xe6e2
movq -0x18(%rbp), %rcx
movq -0x10(%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_w_store
void af_prim_w_store(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 2);
  *(uint32_t*)(*task->data_stack_current) =
    *(task->data_stack_current + 1) & 0xFFFFFFFF;
  task->data_stack_current += 2;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rcx
movabsq $0xffffffff, %rax       # imm = 0xFFFFFFFF
andq 0x8(%rcx), %rax
movl %eax, %ecx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movl %ecx, (%rax)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rcx
addq $0x10, %rcx
movq %rcx, 0x60(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xe7b2
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xe7ba
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xe7ba
movq -0x18(%rbp), %rcx
movq -0x10(%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_h_store
void af_prim_h_store(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 2);
  *(uint16_t*)(*task->data_stack_current) =
    *(task->data_stack_current + 1) & 0xFFFF;
  task->data_stack_current += 2;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rax
andq $0xffff, %rax           # imm = 0xFFFF
movw %ax, %cx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movw %cx, (%rax)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rcx
addq $0x10, %rcx
movq %rcx, 0x60(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xe890
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xe898
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xe898
movq -0x18(%rbp), %rcx
movq -0x10(%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_c_store
void af_prim_c_store(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 2);
  *(af_byte_t*)(*task->data_stack_current) =
    *(task->data_stack_current + 1) & 0xFF;
  task->data_stack_current += 2;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rax
andq $0xff, %rax
movb %al, %cl
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movb %cl, (%rax)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rcx
addq $0x10, %rcx
movq %rcx, 0x60(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xe96e
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xe976
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xe976
movq -0x18(%rbp), %rcx
movq -0x10(%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_f_fetch
void af_prim_f_fetch(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_FLOAT_STACK_EXPAND(task, 1);
  *(--task->float_stack_current) = *(af_float_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
movsd (%rax), %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, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xe9ef
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xe9f7
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xe9f7
movq -0x18(%rbp), %rcx
movq -0x10(%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_f_store
void af_prim_f_store(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_FLOAT_STACK_READ(task, 1);
  *(af_float_t*)(*task->data_stack_current++) = *task->float_stack_current++;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd (%rax), %xmm0
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movsd %xmm0, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xea6e
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xea76
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xea76
movq -0x18(%rbp), %rcx
movq -0x10(%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_f_add_store
void af_prim_f_add_store(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_FLOAT_STACK_READ(task, 1);
  *(af_float_t*)(*task->data_stack_current++) += *task->float_stack_current++;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd (%rax), %xmm0
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
addsd (%rax), %xmm0
movsd %xmm0, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xeaf2
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xeafa
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xeafa
movq -0x18(%rbp), %rcx
movq -0x10(%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_sf_fetch
void af_prim_sf_fetch(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_FLOAT_STACK_EXPAND(task, 1);
  *(--task->float_stack_current) = *(af_sfloat_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
movss (%rax), %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, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xeb73
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xeb7b
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xeb7b
movq -0x18(%rbp), %rcx
movq -0x10(%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_sf_store
void af_prim_sf_store(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_FLOAT_STACK_READ(task, 1);
  *(af_sfloat_t*)(*task->data_stack_current++) = *task->float_stack_current++;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd (%rax), %xmm0
cvtsd2ss %xmm0, %xmm0
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movss %xmm0, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xebf2
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xebfa
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xebfa
movq -0x18(%rbp), %rcx
movq -0x10(%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_sf_add_store
void af_prim_sf_add_store(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_FLOAT_STACK_READ(task, 1);
  *(af_sfloat_t*)(*task->data_stack_current++) += *task->float_stack_current++;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd (%rax), %xmm1
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movss (%rax), %xmm0
cvtss2sd %xmm0, %xmm0
addsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xec7e
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xec86
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xec86
movq -0x18(%rbp), %rcx
movq -0x10(%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_df_fetch
void af_prim_df_fetch(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_FLOAT_STACK_EXPAND(task, 1);
  *(--task->float_stack_current) = *(af_dfloat_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
movsd (%rax), %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, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xecff
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xed07
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xed07
movq -0x18(%rbp), %rcx
movq -0x10(%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_df_store
void af_prim_df_store(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_FLOAT_STACK_READ(task, 1);
  *(af_dfloat_t*)(*task->data_stack_current++) = *task->float_stack_current++;
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x68(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x68(%rcx)
movsd (%rax), %xmm0
movq -0x8(%rbp), %rcx
movq 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movsd %xmm0, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xed7e
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xed86
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xed86
movq -0x18(%rbp), %rcx
movq -0x10(%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_to_r
void af_prim_to_r(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_RETURN_STACK_EXPAND(task, 1);
  *(af_cell_t*)(--task->return_stack_current) = *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), %rcx
movq -0x8(%rbp), %rdx
movq 0x70(%rdx), %rax
movq %rax, %rsi
addq $-0x8, %rsi
movq %rsi, 0x70(%rdx)
movq %rcx, -0x8(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xee7a
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xee82
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xee82
movq -0x18(%rbp), %rcx
movq -0x10(%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_from_r
void af_prim_from_r(af_task_t* task) {
  AF_VERIFY_DATA_STACK_EXPAND(task, 1);
  AF_VERIFY_RETURN_STACK_READ(task, 1);
  *(--task->data_stack_current) =
    *(af_cell_t*)(task->return_stack_current++);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq 0x70(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x70(%rcx)
movq (%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 0xeeea
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xeef2
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xeef2
movq -0x18(%rbp), %rcx
movq -0x10(%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_r_fetch
void af_prim_r_fetch(af_task_t* task) {
  AF_VERIFY_DATA_STACK_EXPAND(task, 1);
  AF_VERIFY_RETURN_STACK_READ(task, 1);
  *(--task->data_stack_current) =
    *(af_cell_t*)(task->return_stack_current);
  AF_ADVANCE_IP(task, 1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x70(%rax), %rax
movq (%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 0xef4f
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xef57
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xef57
movq -0x18(%rbp), %rcx
movq -0x10(%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_does
void af_prim_does(af_task_t* task) {
  AF_VERIFY_WORD_CREATED(task);
  AF_VERIFY_NOT_INTERACTIVE(task);
  AF_VERIFY_RETURN_STACK_READ(task, 1);
  task->most_recent_word->code = af_prim_do_does;
  task->most_recent_word->secondary = task->interpreter_pointer + 1;
  task->interpreter_pointer = *task->return_stack_current++;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0xe0(%rax), %rax
leaq 0x79a6(%rip), %rcx      # 0x169a0
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq 0x58(%rax), %rcx
addq $0x8, %rcx
movq -0x8(%rbp), %rax
movq 0xe0(%rax), %rax
movq %rcx, 0x20(%rax)
movq -0x8(%rbp), %rcx
movq 0x70(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x70(%rcx)
movq (%rax), %rcx
movq -0x8(%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_does_at
void af_prim_does_at(af_task_t* task) {
  AF_VERIFY_WORD_CREATED(task);
  AF_VERIFY_NOT_INTERACTIVE(task);
  task->most_recent_word->code = af_prim_do_does;
  task->most_recent_word->secondary =
    (af_compiled_t*)((task->interpreter_pointer + 1)->compiled_cell);
  AF_ADVANCE_IP(task, 2);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0xe0(%rax), %rax
leaq 0x7946(%rip), %rcx      # 0x169a0
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq 0x58(%rax), %rax
movq 0x8(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0xe0(%rax), %rax
movq %rcx, 0x20(%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xf09d
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x10, %rax
movq %rax, -0x18(%rbp)
jmp 0xf0a5
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xf0a5
movq -0x18(%rbp), %rcx
movq -0x10(%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_name_to_string
void af_prim_name_to_string(af_task_t* task) {
  af_word_t* word;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_DATA_STACK_EXPAND(task, 1);
  word = (af_word_t*)(*task->data_stack_current);
  *task->data_stack_current = (af_cell_t)AF_WORD_NAME_DATA(word);
  *(--task->data_stack_current) = (af_cell_t)AF_WORD_NAME_LEN(word);
  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), %rcx
addq $-0x1, %rcx
movq -0x10(%rbp), %rax
movzbl -0x1(%rax), %eax
movslq %eax, %rdx
xorl %eax, %eax
subq %rdx, %rax
addq %rax, %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x10(%rbp), %rax
movzbl -0x1(%rax), %eax
movl %eax, %ecx
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 0xf143
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0xf14b
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0xf14b
movq -0x20(%rbp), %rcx
movq -0x18(%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_name_to_code
void af_prim_name_to_code(af_task_t* task) {
  af_word_t* word;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_DATA_STACK_EXPAND(task, 1);
  word = (af_word_t*)(*task->data_stack_current);
  *task->data_stack_current = (af_cell_t)word->code;
  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 (%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 0xf1ae
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0xf1b6
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0xf1b6
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_name_to_secondary
void af_prim_name_to_secondary(af_task_t* task) {
  af_word_t* word;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  AF_VERIFY_DATA_STACK_EXPAND(task, 1);
  word = (af_word_t*)(*task->data_stack_current);
  *task->data_stack_current = (af_cell_t)word->secondary;
  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 0x20(%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 0xf21f
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0xf227
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0xf227
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_name_to_next
void af_prim_name_to_next(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  *task->data_stack_current =
    (af_cell_t)(((af_word_t*)(*task->data_stack_current))->next_word);
  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 0x8(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xf287
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xf28f
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xf28f
movq -0x18(%rbp), %rcx
movq -0x10(%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_first_word
void af_prim_first_word(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  *task->data_stack_current =
    (af_cell_t)(((af_wordlist_t*)(*task->data_stack_current))->first_word);
  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), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xf2e6
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xf2ee
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xf2ee
movq -0x18(%rbp), %rcx
movq -0x10(%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_all_words
void af_prim_all_words(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->first_of_all_words;
  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 0x190(%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 0xf35a
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0xf362
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0xf362
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_name_to_next_all
void af_prim_name_to_next_all(af_task_t* task) {
  AF_VERIFY_DATA_STACK_READ(task, 1);
  *task->data_stack_current =
    (af_cell_t)(((af_word_t*)(*task->data_stack_current))->next_of_all_words);
  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 0x10(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xf3b7
movq -0x10(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x18(%rbp)
jmp 0xf3bf
xorl %eax, %eax
movq %rax, -0x18(%rbp)
jmp 0xf3bf
movq -0x18(%rbp), %rcx
movq -0x10(%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_to_body
void af_prim_to_body(af_task_t* task) {
  af_word_t* word;
  AF_VERIFY_DATA_STACK_READ(task, 1);
  word = (af_word_t*)(*task->data_stack_current);
  *task->data_stack_current = (af_cell_t)AF_WORD_DATA(word);
  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), %rcx
addq $0x28, %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 0xf41f
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0xf427
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0xf427
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_sp_fetch
void af_prim_sp_fetch(af_task_t* task) {
  af_cell_t* addr;
  AF_VERIFY_DATA_STACK_EXPAND(task, 1);
  addr = task->data_stack_current;
  *(--task->data_stack_current) = (af_cell_t)addr;
  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, -0x10(%rbp)
movq -0x10(%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, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xf494
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
jmp 0xf49c
xorl %eax, %eax
movq %rax, -0x20(%rbp)
jmp 0xf49c
movq -0x20(%rbp), %rcx
movq -0x18(%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_t_fetch
void af_prim_t_fetch(af_task_t* task) {
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  offset = *(task->data_stack_current + 1);
  target_task = (af_task_t*)(*task->data_stack_current);
  *(++task->data_stack_current) =
    *(af_cell_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), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x10(%rbp), %rcx
movq (%rax,%rcx), %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, -0x20(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xf9e6
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0xf9ee
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0xf9ee
movq -0x28(%rbp), %rcx
movq -0x20(%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_t_store
void af_prim_t_store(af_task_t* task) {
  af_cell_t value;
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 3);
  target_task = (af_task_t*)(*task->data_stack_current++);
  offset = *task->data_stack_current++;
  value = *task->data_stack_current++;
  *(af_cell_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 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rdx
movq -0x20(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x18(%rbp), %rcx
movq %rdx, (%rax,%rcx)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xfa92
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0xfa9a
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0xfa9a
movq -0x30(%rbp), %rcx
movq -0x28(%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_wt_fetch
void af_prim_wt_fetch(af_task_t* task) {
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  offset = *(task->data_stack_current + 1);
  target_task = (af_task_t*)(*task->data_stack_current);
  *(++task->data_stack_current) =
    *(uint32_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), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x10(%rbp), %rcx
movl (%rax,%rcx), %eax
movl %eax, %ecx
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, -0x20(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xfb27
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0xfb2f
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0xfb2f
movq -0x28(%rbp), %rcx
movq -0x20(%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_wt_store
void af_prim_wt_store(af_task_t* task) {
  af_cell_t value;
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 3);
  target_task = (af_task_t*)(*task->data_stack_current++);
  offset = *task->data_stack_current++;
  value = *task->data_stack_current++;
  *(uint32_t*)(target_task->task_local_space_base + offset) =
    value & 0xFFFFFFFF;
  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 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movabsq $0xffffffff, %rax       # imm = 0xFFFFFFFF
andq -0x10(%rbp), %rax
movl %eax, %edx
movq -0x20(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x18(%rbp), %rcx
movl %edx, (%rax,%rcx)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xfbdd
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0xfbe5
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0xfbe5
movq -0x30(%rbp), %rcx
movq -0x28(%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_ht_fetch
void af_prim_ht_fetch(af_task_t* task) {
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  offset = *(task->data_stack_current + 1);
  target_task = (af_task_t*)(*task->data_stack_current);
  *(++task->data_stack_current) =
    *(uint16_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), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x10(%rbp), %rcx
movzwl (%rax,%rcx), %eax
movl %eax, %ecx
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, -0x20(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xfc78
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0xfc80
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0xfc80
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_ht_store
void af_prim_ht_store(af_task_t* task) {
  af_cell_t value;
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 3);
  target_task = (af_task_t*)(*task->data_stack_current++);
  offset = *task->data_stack_current++;
  value = *task->data_stack_current++;
  *(uint16_t*)(target_task->task_local_space_base + offset) =
    value & 0xFFFF;
  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 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
andq $0xffff, %rax           # imm = 0xFFFF
movw %ax, %dx
movq -0x20(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x18(%rbp), %rcx
movw %dx, (%rax,%rcx)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xfd2b
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0xfd33
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0xfd33
movq -0x30(%rbp), %rcx
movq -0x28(%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_ct_fetch
void af_prim_ct_fetch(af_task_t* task) {
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 2);
  offset = *(task->data_stack_current + 1);
  target_task = (af_task_t*)(*task->data_stack_current);
  *(++task->data_stack_current) =
    *(af_byte_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), %rax
movq 0x60(%rax), %rax
movq 0x8(%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq 0x60(%rax), %rax
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x10(%rbp), %rcx
movzbl (%rax,%rcx), %eax
movl %eax, %ecx
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, -0x20(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xfdc8
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0xfdd0
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0xfdd0
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_ct_store
void af_prim_ct_store(af_task_t* task) {
  af_cell_t value;
  af_cell_t offset;
  af_task_t* target_task;
  AF_VERIFY_DATA_STACK_READ(task, 3);
  target_task = (af_task_t*)(*task->data_stack_current++);
  offset = *task->data_stack_current++;
  value = *task->data_stack_current++;
  *(af_byte_t*)(target_task->task_local_space_base + offset) = value & 0xFF;
  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 0x60(%rcx), %rax
movq %rax, %rdx
addq $0x8, %rdx
movq %rdx, 0x60(%rcx)
movq (%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
andq $0xff, %rax
movb %al, %dl
movq -0x20(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x18(%rbp), %rcx
movb %dl, (%rax,%rcx)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0xfe79
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x30(%rbp)
jmp 0xfe81
xorl %eax, %eax
movq %rax, -0x30(%rbp)
jmp 0xfe81
movq -0x30(%rbp), %rcx
movq -0x28(%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_ft_fetch
void af_prim_ft_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_float_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 0xff1d
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
jmp 0xff25
xorl %eax, %eax
movq %rax, -0x28(%rbp)
jmp 0xff25
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x58(%rax)
popq %rbp
retq
nopw %cs:(%rax,%rax)