Skip to content

Instantly share code, notes, and snippets.

@jmbr
Created March 16, 2018 20:32
Show Gist options
  • Select an option

  • Save jmbr/7e29f14968bc3fbec3a8e12ec9359ec7 to your computer and use it in GitHub Desktop.

Select an option

Save jmbr/7e29f14968bc3fbec3a8e12ec9359ec7 to your computer and use it in GitHub Desktop.
.text
.align 4,0x90
.globl __Z21matrix_vector_productPKdPd
__Z21matrix_vector_productPKdPd:
LFB18:
movsd (%rdi), %xmm0
movsd 8(%rdi), %xmm4
movapd %xmm0, %xmm5
movsd 16(%rdi), %xmm3
mulsd %xmm0, %xmm5
movapd %xmm4, %xmm10
movsd 24(%rdi), %xmm2
mulsd %xmm4, %xmm10
movsd 32(%rdi), %xmm1
mulsd %xmm0, %xmm2
movsd 40(%rdi), %xmm6
mulsd %xmm4, %xmm1
movsd 48(%rdi), %xmm9
movsd 56(%rdi), %xmm8
mulsd %xmm3, %xmm6
mulsd %xmm9, %xmm0
movsd 64(%rdi), %xmm7
addsd %xmm10, %xmm5
mulsd %xmm8, %xmm4
movapd %xmm3, %xmm10
mulsd %xmm3, %xmm10
addsd %xmm2, %xmm1
mulsd %xmm7, %xmm3
addsd %xmm6, %xmm1
addsd %xmm10, %xmm5
addsd %xmm4, %xmm0
movsd %xmm1, -32(%rsp)
movsd %xmm5, -40(%rsp)
movq -40(%rsp), %rax
addsd %xmm3, %xmm0
movq %rax, (%rsi)
movq -32(%rsp), %rax
movsd %xmm0, -24(%rsp)
movq %rax, 8(%rsi)
movq -24(%rsp), %rax
movq %rax, 16(%rsi)
ret
LFE18:
.section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support
EH_frame1:
.set L$set$0,LECIE1-LSCIE1
.long L$set$0
LSCIE1:
.long 0
.byte 0x1
.ascii "zR\0"
.byte 0x1
.byte 0x78
.byte 0x10
.byte 0x1
.byte 0x10
.byte 0xc
.byte 0x7
.byte 0x8
.byte 0x90
.byte 0x1
.align 3
LECIE1:
LSFDE1:
.set L$set$1,LEFDE1-LASFDE1
.long L$set$1
LASFDE1:
.long LASFDE1-EH_frame1
.quad LFB18-.
.set L$set$2,LFE18-LFB18
.quad L$set$2
.byte 0
.align 3
LEFDE1:
.constructor
.destructor
.align 1
.subsections_via_symbols
.text
.align 4,0x90
.globl __Z21matrix_vector_productPKdPd
__Z21matrix_vector_productPKdPd:
LFB18:
movsd (%rdi), %xmm1
pxor %xmm4, %xmm4
movsd (%rsi), %xmm0
movsd 8(%rdi), %xmm5
mulsd %xmm0, %xmm1
movsd 8(%rsi), %xmm3
movsd 16(%rsi), %xmm2
mulsd %xmm3, %xmm5
addsd %xmm4, %xmm1
addsd %xmm5, %xmm1
movsd 16(%rdi), %xmm5
mulsd %xmm2, %xmm5
addsd %xmm5, %xmm1
movsd 32(%rdi), %xmm5
mulsd %xmm3, %xmm5
movsd %xmm1, -40(%rsp)
movsd 24(%rdi), %xmm1
mulsd 56(%rdi), %xmm3
mulsd %xmm0, %xmm1
movq -40(%rsp), %rax
mulsd 48(%rdi), %xmm0
addsd %xmm4, %xmm1
addsd %xmm4, %xmm0
addsd %xmm5, %xmm1
movsd 40(%rdi), %xmm5
addsd %xmm3, %xmm0
mulsd %xmm2, %xmm5
mulsd 64(%rdi), %xmm2
movq %rax, (%rsi)
addsd %xmm5, %xmm1
addsd %xmm2, %xmm0
movsd %xmm1, -32(%rsp)
movq -32(%rsp), %rax
movsd %xmm0, -24(%rsp)
movq %rax, 8(%rsi)
movq -24(%rsp), %rax
movq %rax, 16(%rsi)
movq -16(%rsp), %rax
movq %rax, 24(%rsi)
ret
LFE18:
.section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support
EH_frame1:
.set L$set$0,LECIE1-LSCIE1
.long L$set$0
LSCIE1:
.long 0
.byte 0x1
.ascii "zR\0"
.byte 0x1
.byte 0x78
.byte 0x10
.byte 0x1
.byte 0x10
.byte 0xc
.byte 0x7
.byte 0x8
.byte 0x90
.byte 0x1
.align 3
LECIE1:
LSFDE1:
.set L$set$1,LEFDE1-LASFDE1
.long L$set$1
LASFDE1:
.long LASFDE1-EH_frame1
.quad LFB18-.
.set L$set$2,LFE18-LFB18
.quad L$set$2
.byte 0
.align 3
LEFDE1:
.constructor
.destructor
.align 1
.subsections_via_symbols
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment