.file "call3.c" .section .rodata .LC0: .string "y.part1 = %d, y.part2 = %d\n" .text .globl proc .type proc, @function proc: pushl %ebp movl %esp, %ebp subl $40, %esp leal -24(%ebp), %eax movl %eax, (%esp) call foo subl $4, %esp movl -24(%ebp), %eax movl -20(%ebp), %edx movl %eax, -8(%ebp) movl %edx, -4(%ebp) movl -4(%ebp), %eax movl -8(%ebp), %edx movl %eax, 8(%esp) movl %edx, 4(%esp) movl $.LC0, (%esp) call printf leave ret .size proc, .-proc .globl main .type main, @function main: leal 4(%esp), %ecx andl $-16, %esp pushl -4(%ecx) pushl %ebp movl %esp, %ebp pushl %ecx subl $4, %esp call proc addl $4, %esp popl %ecx popl %ebp leal -4(%ecx), %esp ret .size main, .-main .ident "GCC: (GNU) 4.1.2 20080704 (Red Hat 4.1.2-44)" .section .note.GNU-stack,"",@progbits