subl $24,%esp ; allocate space for main local variables AND parameters to sum ... ; code before call to sum not shown movl -12(%ebp),4(%esp) ; movl b instead of push b movl -16(%ebp),(%esp) ; movl a instead of push a call sum ; sum(a,b) movl %eax,-8(%ebp) ; ans = return value of sum(a,b)