.globl entry ahh: pushq %rbp movq %rsp, %rbp subq $128, %rsp movl %edi, -4(%rbp) #FunctionStart1param end movl -4(%rbp), %edi #adding param start call printInteger movl %eax, -8(%rbp) #store return from call .L1: movl -8(%rbp), %eax #assign start movl %eax, -4(%rbp) #assign end movl $1, -12(%rbp) #constant assign movl -12(%rbp), %eax #negation start negl %eax movl %eax, -16(%rbp) #negation end movl -16(%rbp), %eax #return $t2 leave ret bar: pushq %rbp movq %rsp, %rbp subq $128, %rsp movl 20(%rbp), %eax #FunctionStart1Param start movl %eax, -4(%rbp) #FunctionStart1param end movl %r9d, -12(%rbp) #FunctionStart1param end movl %r8d, -16(%rbp) #FunctionStart1param end movl %ecx, -20(%rbp) #FunctionStart1param end movl %edx, -24(%rbp) #FunctionStart1param end movl %esi, -28(%rbp) #FunctionStart1param end movl %edi, -32(%rbp) #FunctionStart1param end movl -32(%rbp), %edi #adding param start call printInteger movl %eax, -36(%rbp) #store return from call .L2: movl -36(%rbp), %eax #assign start movl %eax, -4(%rbp) #assign end movl -12(%rbp), %eax #return b leave ret entry: pushq %rbp movq %rsp, %rbp subq $128, %rsp movl %edi, -8(%rbp) #FunctionStart1param end movl $1, -12(%rbp) #constant assign movl $2, -16(%rbp) #constant assign movl $3, -20(%rbp) #constant assign movl $4, -24(%rbp) #constant assign movl $5, -28(%rbp) #constant assign movl $6, -32(%rbp) #constant assign movl $7, -36(%rbp) #constant assign movl -36(%rbp), %edi #adding param start movl -32(%rbp), %esi #adding param start movl -28(%rbp), %edx #adding param start movl -24(%rbp), %ecx #adding param start movl -20(%rbp), %r8d #adding param start movl -16(%rbp), %r9d #adding param start movl -12(%rbp), %eax #adding param start movl %eax, 88(%rbp) #adding param end call bar movl %eax, -44(%rbp) #store return from call .L3: movl -44(%rbp), %eax #assign start movl %eax, -48(%rbp) #assign end movl $1, -52(%rbp) #constant assign movl -52(%rbp), %eax #return $t12 leave ret