.text
.globl -main
main
hello_f:
pushq %rbp
movq %rsp, %rbp
subq $40, %rsp
movq %rdi, -32(%rbp)
movq %rsi, -8(%rbp)
movq %rdx, -16(%rbp)
movq 0(%rbp), %rbx
movq %rbx, 0(%rbp)
jmp .L7
movq -16(%rbp), %rbx
movq $1, %rcx
addq %rbx, %rcx
movq %rcx, -16(%rbp)
movq $1, 0(%rbp)
.L7:
movq -8(%rbp), %rax
movq -8(%rbp), %rbx
movq $1, %rcx
addq %rbx, %rcx
movq %rcx, -8(%rbp)
leave
ret
main
hi_T:
pushq %rbp
movq %rsp, %rbp
subq $88, %rsp
movq %rdi, -80(%rbp)
movq %rsi, -8(%rbp)
movq %rdx, -16(%rbp)
movq -8(%rbp), %rbx
movq -16(%rbp), %rcx
addq %rbx, %rcx
movq %rcx, -56(%rbp)
movq -56(%rbp), %rbx
movq %rbx, -48(%rbp)
movq -8(%rbp), %rbx
movq -16(%rbp), %rcx
subq %rbx, %rcx
movq %rcx, -64(%rbp)
movq -64(%rbp), %rbx
movq %rbx, -40(%rbp)
movq $0, %rdi
call malloc
movq %rax, -32(%rbp)
movq -32(%rbp), %rdi
movq -48(%rbp), %rsi
movq -40(%rbp), %rdx
call hi-h.f
movq %rax, -72(%rbp)
movq -72(%rbp), %rax
leave
ret
main
main:
pushq %rbp
movq %rsp, %rbp
subq $56, %rsp
movq %rdi, -48(%rbp)
movq $1, %rsi
movq $2, %rdx
call hi-T
movq %rax, -16(%rbp)
movq -16(%rbp), %rbx
movq %rbx, -8(%rbp)
movq $0, %rax
movq $printfmt, %rdi
movq -8(%rbp), %rsi
call printf
leave
ret
movq $60, %rax
xorq %rbx, %rbx
syscall
printfmt:
.string "%d"