.file "add_float_list.c" .text .p2align 4 .globl sum .type sum, @function sum: .LFB11: .cfi_startproc movsd (%rdi), %xmm0 pxor %xmm1, %xmm1 addq $8, %rdi movapd %xmm1, %xmm2 comisd %xmm1, %xmm0 je .L9 .p2align 4,,10 .p2align 3 .L4: addq $8, %rdi addsd %xmm0, %xmm1 movsd -8(%rdi), %xmm0 comisd %xmm2, %xmm0 jne .L4 movapd %xmm1, %xmm0 ret .p2align 4,,10 .p2align 3 .L9: movapd %xmm0, %xmm1 movapd %xmm1, %xmm0 ret .cfi_endproc .LFE11: .size sum, .-sum .section .rodata.str1.1,"aMS",@progbits,1 .LC4: .string "%lf\n" .section .text.startup,"ax",@progbits .p2align 4 .globl main .type main, @function main: .LFB12: .cfi_startproc subq $56, %rsp .cfi_def_cfa_offset 64 movapd .LC2(%rip), %xmm0 pxor %xmm1, %xmm1 movq $0x000000000, 32(%rsp) leaq 8(%rsp), %rax movapd %xmm1, %xmm2 movaps %xmm0, (%rsp) movapd .LC3(%rip), %xmm0 movaps %xmm0, 16(%rsp) movsd .LC1(%rip), %xmm0 .p2align 4,,10 .p2align 3 .L12: addq $8, %rax addsd %xmm0, %xmm1 movsd -8(%rax), %xmm0 comisd %xmm2, %xmm0 jne .L12 movapd %xmm1, %xmm0 leaq .LC4(%rip), %rdi movl $1, %eax call printf@PLT xorl %eax, %eax addq $56, %rsp .cfi_def_cfa_offset 8 ret .cfi_endproc .LFE12: .size main, .-main .set .LC1,.LC2 .section .rodata.cst16,"aM",@progbits,16 .align 16 .LC2: .long 1374389535 .long 1074339512 .long 2061584302 .long 1074114068 .align 16 .LC3: .long 1030792151 .long 1075959562 .long -2061584302 .long 1074549227 .ident "GCC: (Debian 12.2.0-14) 12.2.0" .section .note.GNU-stack,"",@progbits