Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .file "mat_vec.c"
- .text
- .p2align 4
- .globl mat_vec
- .type mat_vec, @function
- mat_vec:
- .LFB22:
- .cfi_startproc
- testl %ecx, %ecx
- jle .L1
- leal -1(%rcx), %eax
- movslq %ecx, %r9
- movq %rdi, %r8
- movq %rax, %rcx
- leaq 8(%rsi,%rax,8), %r10
- salq $3, %r9
- shrl $3, %ecx
- movl %ecx, %eax
- salq $6, %rax
- leaq 64(%rdx,%rax), %rdi
- .p2align 4,,10
- .p2align 3
- .L3:
- movq %r8, %rcx
- movq %rdx, %rax
- .p2align 4,,10
- .p2align 3
- .L4:
- movsd (%rcx), %xmm0
- mulsd (%rsi), %xmm0
- addq $64, %rax
- addq $64, %rcx
- addsd -64(%rax), %xmm0
- movsd %xmm0, -64(%rax)
- movsd -56(%rcx), %xmm0
- mulsd (%rsi), %xmm0
- addsd -56(%rax), %xmm0
- movsd %xmm0, -56(%rax)
- movsd -48(%rcx), %xmm0
- mulsd (%rsi), %xmm0
- addsd -48(%rax), %xmm0
- movsd %xmm0, -48(%rax)
- movsd -40(%rcx), %xmm0
- mulsd (%rsi), %xmm0
- addsd -40(%rax), %xmm0
- movsd %xmm0, -40(%rax)
- movsd -32(%rcx), %xmm0
- mulsd (%rsi), %xmm0
- addsd -32(%rax), %xmm0
- movsd %xmm0, -32(%rax)
- movsd -24(%rcx), %xmm0
- mulsd (%rsi), %xmm0
- addsd -24(%rax), %xmm0
- movsd %xmm0, -24(%rax)
- movsd -16(%rcx), %xmm0
- mulsd (%rsi), %xmm0
- addsd -16(%rax), %xmm0
- movsd %xmm0, -16(%rax)
- movsd -8(%rcx), %xmm0
- mulsd (%rsi), %xmm0
- addsd -8(%rax), %xmm0
- movsd %xmm0, -8(%rax)
- cmpq %rax, %rdi
- jne .L4
- addq $8, %rsi
- addq %r9, %r8
- cmpq %rsi, %r10
- jne .L3
- .L1:
- ret
- .cfi_endproc
- .LFE22:
- .size mat_vec, .-mat_vec
- .ident "GCC: (Debian 9.2.1-21) 9.2.1 20191130"
- .section .note.GNU-stack,"",@progbits
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement