diff options
author | Preston Pan <preston@nullring.xyz> | 2024-01-09 18:39:49 -0800 |
---|---|---|
committer | Preston Pan <preston@nullring.xyz> | 2024-01-09 18:39:49 -0800 |
commit | ac6004730fa54a756d1627a4e8450cd32df86f75 (patch) | |
tree | 8cb4d59438a1252fa069788b2ffb78b2a1bbad3e /build/builtins.s | |
parent | 6ccf0572469dfc8cd8fa7b8537b2ac6c265d2df6 (diff) |
reorganize directory structure
Diffstat (limited to 'build/builtins.s')
-rw-r--r-- | build/builtins.s | 4764 |
1 files changed, 4764 insertions, 0 deletions
diff --git a/build/builtins.s b/build/builtins.s new file mode 100644 index 0000000..2dc4886 --- /dev/null +++ b/build/builtins.s @@ -0,0 +1,4764 @@ + .file "builtins.c" + .text + .p2align 4 + .globl nop + .type nop, @function +nop: +.LFB32: + .cfi_startproc + ret + .cfi_endproc +.LFE32: + .size nop, .-nop + .p2align 4 + .globl ssize + .type ssize, @function +ssize: +.LFB71: + .cfi_startproc + subq $8, %rsp + .cfi_def_cfa_offset 16 + movl $1, %edi + call init_value@PLT + movq STACK(%rip), %rdi + movq %rax, %rsi + fildq 8(%rdi) + cmpq $0, 8(%rdi) + jns .L4 + fadds .LC0(%rip) +.L4: + fstpt 16(%rsi) + addq $8, %rsp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE71: + .size ssize, .-ssize + .p2align 4 + .globl clear + .type clear, @function +clear: +.LFB58: + .cfi_startproc + movq STACK(%rip), %rdi + cmpq $0, 8(%rdi) + je .L11 + subq $8, %rsp + .cfi_def_cfa_offset 16 + .p2align 4,,10 + .p2align 3 +.L8: + call array_pop@PLT + movq %rax, %rdi + call value_free@PLT + movq STACK(%rip), %rdi + cmpq $0, 8(%rdi) + jne .L8 + addq $8, %rsp + .cfi_def_cfa_offset 8 + ret + .p2align 4,,10 + .p2align 3 +.L11: + ret + .cfi_endproc +.LFE58: + .size clear, .-clear + .p2align 4 + .globl stemexit + .type stemexit, @function +stemexit: +.LFB45: + .cfi_startproc + movq value_free@GOTPCREL(%rip), %rsi + movq WORD_TABLE(%rip), %rdi + pushq %rbx + .cfi_def_cfa_offset 16 + .cfi_offset 3, -16 + call ht_free@PLT + movq func_free@GOTPCREL(%rip), %rbx + movq FLIT(%rip), %rdi + movq %rbx, %rsi + call ht_free@PLT + movq STACK(%rip), %rdi + call array_free@PLT + movq INBUF(%rip), %rdi + call free@PLT + movq PARSER(%rip), %rdi + call free@PLT + movq EVAL_STACK(%rip), %rdi + call array_free@PLT + movq OBJ_TABLE(%rip), %rdi + movq %rbx, %rsi + call ht_free@PLT + xorl %edi, %edi + call exit@PLT + .cfi_endproc +.LFE45: + .size stemexit, .-stemexit + .p2align 4 + .globl qstack + .type qstack, @function +qstack: +.LFB72: + .cfi_startproc + pushq %rbx + .cfi_def_cfa_offset 16 + .cfi_offset 3, -16 + movl $4, %edi + call init_value@PLT + movq STACK(%rip), %rdi + movq %rax, %rbx + call array_copy@PLT + movq STACK(%rip), %rdi + movq %rbx, %rsi + movq %rax, 16(%rbx) + popq %rbx + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE72: + .size qstack, .-qstack + .p2align 4 + .globl dsc + .type dsc, @function +dsc: +.LFB48: + .cfi_startproc + subq $8, %rsp + .cfi_def_cfa_offset 16 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L20 + movq %rax, %rdi + addq $8, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L20: + .cfi_restore_state + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_def_cfa_offset 8 + movq %rax, %rsi + jmp array_append@PLT + .cfi_endproc +.LFE48: + .size dsc, .-dsc + .p2align 4 + .globl stemdup + .type stemdup, @function +stemdup: +.LFB51: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $8, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L25 + movq %rax, %rdi + movq %rax, %rbx + call value_copy@PLT + movq STACK(%rip), %rdi + movq %rbx, %rsi + movq %rax, %rbp + call array_append@PLT + movq %rbp, %rsi +.L24: + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .p2align 4,,10 + .p2align 3 +.L25: + .cfi_restore_state + movl $5, %edi + call init_value@PLT + movq %rax, %rsi + jmp .L24 + .cfi_endproc +.LFE51: + .size stemdup, .-stemdup + .p2align 4 + .globl stemceil + .type stemceil, @function +stemceil: +.LFB39: + .cfi_startproc + pushq %rbx + .cfi_def_cfa_offset 16 + .cfi_offset 3, -16 + subq $16, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L30 + movq %rax, %rbx + movl $2, %edi + call init_value@PLT + fldt 16(%rbx) + movsd .LC5(%rip), %xmm2 + movsd .LC2(%rip), %xmm3 + movq %rax, %rsi + fstpl 8(%rsp) + movsd 8(%rsp), %xmm0 + movapd %xmm0, %xmm1 + andpd %xmm2, %xmm1 + ucomisd %xmm1, %xmm3 + ja .L31 +.L28: + movsd %xmm0, 8(%rsp) + fldl 8(%rsp) + movq STACK(%rip), %rdi + fstpt 16(%rsi) + call array_append@PLT + addq $16, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 16 + movq %rbx, %rdi + popq %rbx + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L31: + .cfi_restore_state + cvttsd2siq %xmm0, %rax + pxor %xmm1, %xmm1 + movapd %xmm0, %xmm3 + movsd .LC4(%rip), %xmm4 + andnpd %xmm0, %xmm2 + cvtsi2sdq %rax, %xmm1 + cmpnlesd %xmm1, %xmm3 + andpd %xmm4, %xmm3 + addsd %xmm3, %xmm1 + movapd %xmm1, %xmm0 + orpd %xmm2, %xmm0 + jmp .L28 + .p2align 4,,10 + .p2align 3 +.L30: + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $16, %rsp + .cfi_def_cfa_offset 16 + movq %rax, %rsi + popq %rbx + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE39: + .size stemceil, .-stemceil + .p2align 4 + .globl stemfloor + .type stemfloor, @function +stemfloor: +.LFB40: + .cfi_startproc + pushq %rbx + .cfi_def_cfa_offset 16 + .cfi_offset 3, -16 + subq $16, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L36 + movq %rax, %rbx + movl $2, %edi + call init_value@PLT + fldt 16(%rbx) + movsd .LC5(%rip), %xmm2 + movsd .LC2(%rip), %xmm3 + movq %rax, %rsi + fstpl 8(%rsp) + movsd 8(%rsp), %xmm0 + movapd %xmm0, %xmm1 + andpd %xmm2, %xmm1 + ucomisd %xmm1, %xmm3 + ja .L37 +.L34: + movsd %xmm0, 8(%rsp) + fldl 8(%rsp) + movq STACK(%rip), %rdi + fstpt 16(%rsi) + call array_append@PLT + addq $16, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 16 + movq %rbx, %rdi + popq %rbx + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L37: + .cfi_restore_state + cvttsd2siq %xmm0, %rax + pxor %xmm1, %xmm1 + movsd .LC4(%rip), %xmm4 + andnpd %xmm0, %xmm2 + cvtsi2sdq %rax, %xmm1 + movapd %xmm1, %xmm3 + cmpnlesd %xmm0, %xmm3 + andpd %xmm4, %xmm3 + subsd %xmm3, %xmm1 + movapd %xmm1, %xmm0 + orpd %xmm2, %xmm0 + jmp .L34 + .p2align 4,,10 + .p2align 3 +.L36: + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $16, %rsp + .cfi_def_cfa_offset 16 + movq %rax, %rsi + popq %rbx + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE40: + .size stemfloor, .-stemfloor + .p2align 4 + .globl stemln + .type stemln, @function +stemln: +.LFB38: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $8, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L41 + movq %rax, %rbx + movl $2, %edi + call init_value@PLT + pushq 24(%rbx) + .cfi_def_cfa_offset 40 + pushq 16(%rbx) + .cfi_def_cfa_offset 48 + movq %rax, %rbp + call logl@PLT + movq STACK(%rip), %rdi + movq %rbp, %rsi + fstpt 16(%rbp) + call array_append@PLT + addq $24, %rsp + .cfi_def_cfa_offset 24 + movq %rbx, %rdi + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L41: + .cfi_def_cfa_offset 32 + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + movq %rax, %rsi + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE38: + .size stemln, .-stemln + .p2align 4 + .globl quote + .type quote, @function +quote: +.LFB46: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $8, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L46 + movl $4, %edi + movq %rax, %rbx + call init_value@PLT + movl $10, %edi + movq %rax, %rbp + call init_array@PLT + movq %rbx, %rsi + movq %rax, 16(%rbp) + movq %rax, %rdi + call array_append@PLT + movq %rbp, %rsi +.L45: + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .p2align 4,,10 + .p2align 3 +.L46: + .cfi_restore_state + movl $5, %edi + call init_value@PLT + movq %rax, %rsi + jmp .L45 + .cfi_endproc +.LFE46: + .size quote, .-quote + .p2align 4 + .globl stemtype + .type stemtype, @function +stemtype: +.LFB47: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $24, %rsp + .cfi_def_cfa_offset 48 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L51 + movl $1, %edi + movq %rax, %rbx + call init_value@PLT + movq STACK(%rip), %rdi + movq %rbx, %rsi + movq %rax, %rbp + movl (%rbx), %eax + movq %rax, 8(%rsp) + fildq 8(%rsp) + fstpt 16(%rbp) + call array_append@PLT + movq %rbp, %rsi +.L50: + movq STACK(%rip), %rdi + addq $24, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .p2align 4,,10 + .p2align 3 +.L51: + .cfi_restore_state + movl $5, %edi + call init_value@PLT + movq %rax, %rsi + jmp .L50 + .cfi_endproc +.LFE47: + .size stemtype, .-stemtype + .p2align 4 + .globl stemsin + .type stemsin, @function +stemsin: +.LFB34: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $8, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L55 + movq %rax, %rbx + movl $2, %edi + call init_value@PLT + pushq 24(%rbx) + .cfi_def_cfa_offset 40 + pushq 16(%rbx) + .cfi_def_cfa_offset 48 + movq %rax, %rbp + call sinhl@PLT + movq STACK(%rip), %rdi + movq %rbp, %rsi + fstpt 16(%rbp) + call array_append@PLT + addq $24, %rsp + .cfi_def_cfa_offset 24 + movq %rbx, %rdi + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L55: + .cfi_def_cfa_offset 32 + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + movq %rax, %rsi + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE34: + .size stemsin, .-stemsin + .p2align 4 + .globl stemcos + .type stemcos, @function +stemcos: +.LFB35: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $8, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L59 + movq %rax, %rbx + movl $2, %edi + call init_value@PLT + pushq 24(%rbx) + .cfi_def_cfa_offset 40 + pushq 16(%rbx) + .cfi_def_cfa_offset 48 + movq %rax, %rbp + call coshl@PLT + movq STACK(%rip), %rdi + movq %rbp, %rsi + fstpt 16(%rbp) + call array_append@PLT + addq $24, %rsp + .cfi_def_cfa_offset 24 + movq %rbx, %rdi + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L59: + .cfi_def_cfa_offset 32 + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + movq %rax, %rsi + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE35: + .size stemcos, .-stemcos + .p2align 4 + .globl stemexp + .type stemexp, @function +stemexp: +.LFB36: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $8, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L63 + movq %rax, %rbx + movl $2, %edi + call init_value@PLT + pushq 24(%rbx) + .cfi_def_cfa_offset 40 + pushq 16(%rbx) + .cfi_def_cfa_offset 48 + movq %rax, %rbp + call expl@PLT + movq STACK(%rip), %rdi + movq %rbp, %rsi + fstpt 16(%rbp) + call array_append@PLT + addq $24, %rsp + .cfi_def_cfa_offset 24 + movq %rbx, %rdi + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L63: + .cfi_def_cfa_offset 32 + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + movq %rax, %rsi + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE36: + .size stemexp, .-stemexp + .p2align 4 + .globl stoi + .type stoi, @function +stoi: +.LFB70: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $24, %rsp + .cfi_def_cfa_offset 48 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L67 + movl $1, %edi + movq %rax, %rbx + call init_value@PLT + movl $10, %edx + xorl %esi, %esi + movq %rax, %rbp + movq 16(%rbx), %rax + movq 16(%rax), %rdi + call strtol@PLT + movq STACK(%rip), %rdi + movq %rbp, %rsi + movl %eax, 12(%rsp) + fildl 12(%rsp) + fstpt 16(%rbp) + call array_append@PLT + addq $24, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 24 + movq %rbx, %rdi + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L67: + .cfi_restore_state + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $24, %rsp + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + movq %rax, %rsi + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE70: + .size stoi, .-stoi + .p2align 4 + .globl isdef + .type isdef, @function +isdef: +.LFB50: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $24, %rsp + .cfi_def_cfa_offset 48 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L74 + movl $1, %edi + movq %rax, %rbx + call init_value@PLT + movq %rax, %rbp + movl (%rbx), %eax + testl %eax, %eax + je .L75 + fldz +.L70: + fstpt 16(%rbp) + movq STACK(%rip), %rdi + movq %rbx, %rsi + call array_append@PLT + movq %rbp, %rsi +.L73: + movq STACK(%rip), %rdi + addq $24, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .p2align 4,,10 + .p2align 3 +.L75: + .cfi_restore_state + movq 16(%rbx), %rsi + movq WORD_TABLE(%rip), %rdi + call ht_exists@PLT + movzbl %al, %eax + movw %ax, 14(%rsp) + filds 14(%rsp) + jmp .L70 + .p2align 4,,10 + .p2align 3 +.L74: + movl $5, %edi + call init_value@PLT + movq %rax, %rsi + jmp .L73 + .cfi_endproc +.LFE50: + .size isdef, .-isdef + .p2align 4 + .globl isnum + .type isnum, @function +isnum: +.LFB69: + .cfi_startproc + pushq %r13 + .cfi_def_cfa_offset 16 + .cfi_offset 13, -16 + pushq %r12 + .cfi_def_cfa_offset 24 + .cfi_offset 12, -24 + pushq %rbp + .cfi_def_cfa_offset 32 + .cfi_offset 6, -32 + pushq %rbx + .cfi_def_cfa_offset 40 + .cfi_offset 3, -40 + subq $8, %rsp + .cfi_def_cfa_offset 48 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L85 + movq %rax, %r12 + movl $1, %edi + call init_value@PLT + movq 16(%r12), %r13 + movq %rax, %rbp + movq 0(%r13), %rbx + testq %rbx, %rbx + je .L80 + call __ctype_b_loc@PLT + movq (%rax), %rdi + movq 16(%r13), %rax + leaq (%rbx,%rax), %rcx + .p2align 4,,10 + .p2align 3 +.L79: + movsbq (%rax), %rdx + testw $10240, (%rdi,%rdx,2) + je .L81 + addq $1, %rax + cmpq %rax, %rcx + jne .L79 +.L80: + fld1 +.L78: + fstpt 16(%rbp) + movq STACK(%rip), %rdi + movq %r12, %rsi + call array_append@PLT + movq %rbp, %rsi +.L84: + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 40 + popq %rbx + .cfi_def_cfa_offset 32 + popq %rbp + .cfi_def_cfa_offset 24 + popq %r12 + .cfi_def_cfa_offset 16 + popq %r13 + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .p2align 4,,10 + .p2align 3 +.L81: + .cfi_restore_state + fldz + jmp .L78 + .p2align 4,,10 + .p2align 3 +.L85: + movl $5, %edi + call init_value@PLT + movq %rax, %rsi + jmp .L84 + .cfi_endproc +.LFE69: + .size isnum, .-isnum + .p2align 4 + .globl stemlen + .type stemlen, @function +stemlen: +.LFB54: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $24, %rsp + .cfi_def_cfa_offset 48 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L96 + movl $1, %edi + movq %rax, %rbx + call init_value@PLT + movq %rax, %rbp + movl (%rbx), %eax + leal -1(%rax), %edx + cmpl $1, %edx + jbe .L97 + cmpl $3, %eax + je .L93 + testl %eax, %eax + je .L93 + cmpl $4, %eax + jne .L89 + movq 16(%rbx), %rax + fildq 8(%rax) + cmpq $0, 8(%rax) + js .L98 +.L92: + fstpt 16(%rbp) + jmp .L89 + .p2align 4,,10 + .p2align 3 +.L97: + fld1 + fstpt 16(%rbp) +.L89: + movq STACK(%rip), %rdi + movq %rbx, %rsi + call array_append@PLT + movq %rbp, %rsi +.L95: + movq STACK(%rip), %rdi + addq $24, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .p2align 4,,10 + .p2align 3 +.L93: + .cfi_restore_state + movq 16(%rbx), %rax + movq 16(%rax), %rdi + call strlen@PLT + movq %rax, 8(%rsp) + fildq 8(%rsp) + fstpt 16(%rbp) + jmp .L89 + .p2align 4,,10 + .p2align 3 +.L96: + movl $5, %edi + call init_value@PLT + movq %rax, %rsi + jmp .L95 + .p2align 4,,10 + .p2align 3 +.L98: + fadds .LC0(%rip) + jmp .L92 + .cfi_endproc +.LFE54: + .size stemlen, .-stemlen + .p2align 4 + .globl swap + .type swap, @function +swap: +.LFB49: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $8, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L104 + movq STACK(%rip), %rdi + movq %rax, %rbx + call array_pop@PLT + movq STACK(%rip), %rdi + movq %rbx, %rsi + movq %rax, %rbp + testq %rax, %rax + je .L105 + call array_append@PLT + movq %rbp, %rsi +.L103: + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .p2align 4,,10 + .p2align 3 +.L105: + .cfi_restore_state + call array_append@PLT +.L104: + movl $5, %edi + call init_value@PLT + movq %rax, %rsi + jmp .L103 + .cfi_endproc +.LFE49: + .size swap, .-swap + .section .rodata.str1.1,"aMS",@progbits,1 +.LC9: + .string "add_funcs" +.LC10: + .string "add_objs" +.LC11: + .string "%s\n" + .text + .p2align 4 + .globl clib + .type clib, @function +clib: +.LFB62: + .cfi_startproc + pushq %r13 + .cfi_def_cfa_offset 16 + .cfi_offset 13, -16 + pushq %r12 + .cfi_def_cfa_offset 24 + .cfi_offset 12, -24 + pushq %rbp + .cfi_def_cfa_offset 32 + .cfi_offset 6, -32 + pushq %rbx + .cfi_def_cfa_offset 40 + .cfi_offset 3, -40 + subq $8, %rsp + .cfi_def_cfa_offset 48 + movq STACK(%rip), %rdi + call array_pop@PLT + movl $1, %esi + movq %rax, %rbp + movq 16(%rax), %rax + movq 16(%rax), %rdi + call dlopen@PLT + testq %rax, %rax + je .L111 + movq %rax, %rbx + call dlerror@PLT + movq %rbx, %rdi + leaq .LC9(%rip), %rsi + call dlsym@PLT + movq %rbx, %rdi + leaq .LC10(%rip), %rsi + movq %rax, %r12 + call dlsym@PLT + movq %rax, %r13 + call dlerror@PLT + movq %rax, %rbx + testq %rax, %rax + jne .L112 + call *%r12 + call *%r13 + addq $8, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 40 + movq %rbp, %rdi + popq %rbx + .cfi_def_cfa_offset 32 + popq %rbp + .cfi_def_cfa_offset 24 + popq %r12 + .cfi_def_cfa_offset 16 + popq %r13 + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L112: + .cfi_restore_state + movq %rbp, %rdi + call value_free@PLT + movq stderr(%rip), %rdi + movq %rbx, %rdx + xorl %eax, %eax + leaq .LC11(%rip), %rsi + call fprintf@PLT +.L110: + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 40 + popq %rbx + .cfi_def_cfa_offset 32 + movq %rax, %rsi + popq %rbp + .cfi_def_cfa_offset 24 + popq %r12 + .cfi_def_cfa_offset 16 + popq %r13 + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .p2align 4,,10 + .p2align 3 +.L111: + .cfi_restore_state + movq STACK(%rip), %rdi + movq %rbp, %rsi + call array_append@PLT + jmp .L110 + .cfi_endproc +.LFE62: + .size clib, .-clib + .p2align 4 + .globl stemmul + .type stemmul, @function +stemmul: +.LFB29: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $8, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L118 + movq STACK(%rip), %rdi + movq %rax, %rbx + call array_pop@PLT + movq %rax, %rbp + testq %rax, %rax + je .L119 + movl $2, %edi + call init_value@PLT + cmpl $1, 0(%rbp) + movq %rax, %rsi + je .L120 +.L116: + fldt 16(%rbp) + movq STACK(%rip), %rdi + fldt 16(%rbx) + fmulp %st, %st(1) + fstpt 16(%rsi) + call array_append@PLT + movq %rbp, %rdi + call value_free@PLT + addq $8, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 24 + movq %rbx, %rdi + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L120: + .cfi_restore_state + cmpl $1, (%rbx) + jne .L116 + movl $1, (%rax) + jmp .L116 + .p2align 4,,10 + .p2align 3 +.L119: + movq STACK(%rip), %rdi + movq %rbx, %rsi + call array_append@PLT +.L118: + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + movq %rax, %rsi + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE29: + .size stemmul, .-stemmul + .p2align 4 + .globl stemsub + .type stemsub, @function +stemsub: +.LFB28: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $8, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L126 + movq STACK(%rip), %rdi + movq %rax, %rbx + call array_pop@PLT + movq %rax, %rbp + testq %rax, %rax + je .L127 + movl $2, %edi + call init_value@PLT + cmpl $1, 0(%rbp) + movq %rax, %rsi + je .L128 +.L124: + fldt 16(%rbp) + movq STACK(%rip), %rdi + fldt 16(%rbx) + fsubrp %st, %st(1) + fstpt 16(%rsi) + call array_append@PLT + movq %rbp, %rdi + call value_free@PLT + addq $8, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 24 + movq %rbx, %rdi + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L128: + .cfi_restore_state + cmpl $1, (%rbx) + jne .L124 + movl $1, (%rax) + jmp .L124 + .p2align 4,,10 + .p2align 3 +.L127: + movq STACK(%rip), %rdi + movq %rbx, %rsi + call array_append@PLT +.L126: + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + movq %rax, %rsi + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE28: + .size stemsub, .-stemsub + .p2align 4 + .globl stemdiv + .type stemdiv, @function +stemdiv: +.LFB30: + .cfi_startproc + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset 6, -16 + pushq %rbx + .cfi_def_cfa_offset 24 + .cfi_offset 3, -24 + subq $8, %rsp + .cfi_def_cfa_offset 32 + movq STACK(%rip), %rdi + call array_pop@PLT + testq %rax, %rax + je .L134 + movq STACK(%rip), %rdi + movq %rax, %rbx + call array_pop@PLT + movq %rax, %rbp + testq %rax, %rax + je .L135 + movl $2, %edi + call init_value@PLT + cmpl $1, 0(%rbp) + movq %rax, %rsi + je .L136 +.L132: + fldt 16(%rbp) + movq STACK(%rip), %rdi + fldt 16(%rbx) + fdivrp %st, %st(1) + fstpt 16(%rsi) + call array_append@PLT + movq %rbp, %rdi + call value_free@PLT + addq $8, %rsp + .cfi_remember_state + .cfi_def_cfa_offset 24 + movq %rbx, %rdi + popq %rbx + .cfi_def_cfa_offset 16 + popq %rbp + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L136: + .cfi_restore_state + cmpl $1, (%rbx) + jne .L132 + movl $1, (%rax) + jmp .L132 + .p2align 4,,10 + .p2align 3 +.L135: + movq STACK(%rip), %rdi + movq %rbx, %rsi + call array_append@PLT +.L134: + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + addq $8, %rsp + .cfi_def_cfa_offset 24 + popq %rbx + .cfi_def_cfa_offset 16 + movq %rax, %rsi + popq %rbp + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE30: + .size stemdiv, .-stemdiv + .p2align 4 + .globl stempow + .type stempow, @function +stempow: +.LFB33: + .cfi_startproc + pushq %r12 + .cfi_def_cfa_offset 16 + .cfi_offset 12, -16 + movq STACK(%rip), %rdi + pushq %rbp + .cfi_def_cfa_offset 24 + .cfi_offset 6, -24 + pushq %rbx + .cfi_def_cfa_offset 32 + .cfi_offset 3, -32 + call array_pop@PLT + testq %rax, %rax + je .L142 + movq STACK(%rip), %rdi + movq %rax, %rbx + call array_pop@PLT + movq %rax, %rbp + testq %rax, %rax + je .L143 + movl $2, %edi + call init_value@PLT + cmpl $1, 0(%rbp) + movq %rax, %r12 + je .L144 +.L140: + pushq 24(%rbx) + .cfi_def_cfa_offset 40 + pushq 16(%rbx) + .cfi_def_cfa_offset 48 + pushq 24(%rbp) + .cfi_def_cfa_offset 56 + pushq 16(%rbp) + .cfi_def_cfa_offset 64 + call powl@PLT + movq STACK(%rip), %rdi + addq $32, %rsp + .cfi_def_cfa_offset 32 + movq %r12, %rsi + fstpt 16(%r12) + call array_append@PLT + movq %rbp, %rdi + call value_free@PLT + movq %rbx, %rdi + popq %rbx + .cfi_remember_state + .cfi_def_cfa_offset 24 + popq %rbp + .cfi_def_cfa_offset 16 + popq %r12 + .cfi_def_cfa_offset 8 + jmp value_free@PLT + .p2align 4,,10 + .p2align 3 +.L144: + .cfi_restore_state + cmpl $1, (%rbx) + jne .L140 + movl $1, (%rax) + jmp .L140 + .p2align 4,,10 + .p2align 3 +.L143: + movq STACK(%rip), %rdi + movq %rbx, %rsi + call array_append@PLT +.L142: + movl $5, %edi + call init_value@PLT + movq STACK(%rip), %rdi + popq %rbx + .cfi_def_cfa_offset 24 + movq %rax, %rsi + popq %rbp + .cfi_def_cfa_offset 16 + popq %r12 + .cfi_def_cfa_offset 8 + jmp array_append@PLT + .cfi_endproc +.LFE33: + .size stempow, .-stempow + .p2align 4 + .globl keep + .type keep, @function +keep: +.LFB56: + .cfi_startproc + pushq %r12 + .cfi_def_cfa_offset 16 + .cfi_offset 12, -16 + movq STACK(%rip), %rdi + pushq %rbp + .cfi_def_cfa_offset 24 + .cfi_offset 6, -24 + pushq %rbx + .cfi_def_cfa_offset 32 + .cfi_offset 3, -32 + call array_pop@PLT + testq %rax, %rax + je .L155 + movq STACK(%rip), %rdi + movq %rax, %rbp + call array_pop@PLT + movq %rax, %r12 + testq %rax, %rax + je .L156 + movq %rax, %rdi + call value_copy@PLT + movq STACK(%rip), %rdi + movq %rax, %rsi + call array_append@PLT + cmpl $4, 0(%rbp) + je .L157 + movq %r12, %rdi + call eval@PLT +.L151: + movq STACK(%rip), %rdi + popq %rbx + .cfi_remember_state + .cfi_def_cfa_offset 24 + movq %r12, %rsi + popq %rbp + .cfi_d |