Created
May 14, 2017 02:33
-
-
Save saethlin/168af45f0775604e873b20fb3c8eb3bb to your computer and use it in GitHub Desktop.
leapfrog with some explicit loops
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
----------------------------------ASSEMBLY nrt---------------------------------- | |
.text | |
.file "<string>" | |
.globl nrt_atomic_add | |
.p2align 4, 0x90 | |
.type nrt_atomic_add,@function | |
nrt_atomic_add: | |
movl $1, %eax | |
lock xaddq %rax, (%rdi) | |
addq $1, %rax | |
retq | |
.Lfunc_end0: | |
.size nrt_atomic_add, .Lfunc_end0-nrt_atomic_add | |
.globl nrt_atomic_sub | |
.p2align 4, 0x90 | |
.type nrt_atomic_sub,@function | |
nrt_atomic_sub: | |
movq $-1, %rax | |
lock xaddq %rax, (%rdi) | |
addq $-1, %rax | |
retq | |
.Lfunc_end1: | |
.size nrt_atomic_sub, .Lfunc_end1-nrt_atomic_sub | |
.globl nrt_atomic_cas | |
.p2align 4, 0x90 | |
.type nrt_atomic_cas,@function | |
nrt_atomic_cas: | |
xorl %r8d, %r8d | |
movq %rsi, %rax | |
lock cmpxchgq %rdx, (%rdi) | |
sete %r8b | |
movq %rax, (%rcx) | |
movl %r8d, %eax | |
retq | |
.Lfunc_end2: | |
.size nrt_atomic_cas, .Lfunc_end2-nrt_atomic_cas | |
.globl NRT_MemInfo_data_fast | |
.p2align 4, 0x90 | |
.type NRT_MemInfo_data_fast,@function | |
NRT_MemInfo_data_fast: | |
movq 24(%rdi), %rax | |
retq | |
.Lfunc_end3: | |
.size NRT_MemInfo_data_fast, .Lfunc_end3-NRT_MemInfo_data_fast | |
.globl NRT_incref | |
.p2align 4, 0x90 | |
.type NRT_incref,@function | |
NRT_incref: | |
testq %rdi, %rdi | |
je .LBB4_1 | |
lock addq $1, (%rdi) | |
retq | |
.LBB4_1: | |
retq | |
.Lfunc_end4: | |
.size NRT_incref, .Lfunc_end4-NRT_incref | |
.globl NRT_decref | |
.p2align 4, 0x90 | |
.type NRT_decref,@function | |
NRT_decref: | |
.cfi_startproc | |
testq %rdi, %rdi | |
je .LBB5_2 | |
movq $-1, %rax | |
lock xaddq %rax, (%rdi) | |
cmpq $1, %rax | |
je .LBB5_3 | |
.LBB5_2: | |
retq | |
.LBB5_3: | |
movabsq $NRT_MemInfo_call_dtor, %rax | |
jmpq *%rax | |
.Lfunc_end5: | |
.size NRT_decref, .Lfunc_end5-NRT_decref | |
.cfi_endproc | |
.globl nrt_unresolved_abort | |
.p2align 4, 0x90 | |
.type nrt_unresolved_abort,@function | |
nrt_unresolved_abort: | |
movabsq $.const.picklebuf.140174803665544, %rax | |
movq %rax, (%rsi) | |
movl $1, %eax | |
retq | |
.Lfunc_end6: | |
.size nrt_unresolved_abort, .Lfunc_end6-nrt_unresolved_abort | |
.type .const.picklebuf.140174803665544,@object | |
.section .rodata,"a",@progbits | |
.p2align 3 | |
.const.picklebuf.140174803665544: | |
.quad .const.pickledata.140174803665544 | |
.long 101 | |
.zero 4 | |
.size .const.picklebuf.140174803665544, 16 | |
.type .const.pickledata.140174803665544,@object | |
.p2align 4 | |
.const.pickledata.140174803665544: | |
.ascii "\200\004\225Z\000\000\000\000\000\000\000\214\bbuiltins\224\214\fRuntimeError\224\223\224\2146numba jitted function aborted due to unresolved symbol\224\205\224\206\224." | |
.size .const.pickledata.140174803665544, 101 | |
.section ".note.GNU-stack","",@progbits | |
================================================================================ | |
-------------------------------ASSEMBLY leapfrog-------------------------------- | |
.text | |
.file "<string>" | |
.section .rodata.cst8,"aM",@progbits,8 | |
.p2align 3 | |
.LCPI0_0: | |
.quad 4585925428558828667 | |
.LCPI0_1: | |
.quad 4590429028186199163 | |
.LCPI0_2: | |
.quad 4645133162144333824 | |
.LCPI0_3: | |
.quad -4768654942473954831 | |
.text | |
.globl _ZN8__main__12leapfrog$241E5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE | |
.p2align 4, 0x90 | |
.type _ZN8__main__12leapfrog$241E5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE,@function | |
_ZN8__main__12leapfrog$241E5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE: | |
.cfi_startproc | |
pushq %rbp | |
.Lcfi0: | |
.cfi_def_cfa_offset 16 | |
pushq %r15 | |
.Lcfi1: | |
.cfi_def_cfa_offset 24 | |
pushq %r14 | |
.Lcfi2: | |
.cfi_def_cfa_offset 32 | |
pushq %r13 | |
.Lcfi3: | |
.cfi_def_cfa_offset 40 | |
pushq %r12 | |
.Lcfi4: | |
.cfi_def_cfa_offset 48 | |
pushq %rbx | |
.Lcfi5: | |
.cfi_def_cfa_offset 56 | |
subq $184, %rsp | |
.Lcfi6: | |
.cfi_def_cfa_offset 240 | |
.Lcfi7: | |
.cfi_offset %rbx, -56 | |
.Lcfi8: | |
.cfi_offset %r12, -48 | |
.Lcfi9: | |
.cfi_offset %r13, -40 | |
.Lcfi10: | |
.cfi_offset %r14, -32 | |
.Lcfi11: | |
.cfi_offset %r15, -24 | |
.Lcfi12: | |
.cfi_offset %rbp, -16 | |
movq %r9, 40(%rsp) | |
movq %r8, 32(%rsp) | |
movq %rsi, 56(%rsp) | |
movq %rdi, 48(%rsp) | |
movq 432(%rsp), %rbp | |
movq 408(%rsp), %r15 | |
movq 360(%rsp), %r13 | |
movq 288(%rsp), %r12 | |
movq 264(%rsp), %r14 | |
movabsq $NRT_incref, %rbx | |
movq %rcx, 24(%rsp) | |
movq %rcx, %rdi | |
callq *%rbx | |
movq %r12, %rdi | |
callq *%rbx | |
movq %r13, %rdi | |
movq 400(%rsp), %r13 | |
callq *%rbx | |
movq %rbp, %rdi | |
callq *%rbx | |
movq 336(%rsp), %rsi | |
movq 248(%rsp), %r8 | |
movq %r13, %rax | |
sarq $63, %rax | |
andq %r13, %rax | |
movq %rax, 136(%rsp) | |
imulq %r15, %rax | |
movq %r15, %rcx | |
notq %rcx | |
cmpq $-2, %rcx | |
movq $-1, %rdx | |
cmovgq %rcx, %rdx | |
leaq (%rdx,%r15), %rcx | |
leaq 8(,%rcx,8), %r9 | |
leaq (%r14,%r14), %rdi | |
leaq (%rsi,%rsi), %rbp | |
leaq 1(%r14,%r14), %rcx | |
leaq 1(%rsi,%rsi), %r10 | |
leaq (%r15,%r15), %rbx | |
movq %rbx, 88(%rsp) | |
leaq 1(%r15,%r15), %rbx | |
movq %rbx, 80(%rsp) | |
testq %r13, %r13 | |
setle %r11b | |
testq %r15, %r15 | |
setle %bl | |
orb %r11b, %bl | |
movb %bl, 7(%rsp) | |
addq $-1, %rax | |
subq %rdx, %rax | |
movq 320(%rsp), %rdx | |
movq 392(%rsp), %rbx | |
leaq (%rbx,%rax,8), %rax | |
movq %rax, 128(%rsp) | |
leaq (,%r15,8), %rax | |
movq %rax, 160(%rsp) | |
leaq (,%r14,8), %rbx | |
movabsq $.LCPI0_0, %rax | |
vmovsd (%rax), %xmm8 | |
movabsq $.LCPI0_3, %rax | |
vmovsd (%rax), %xmm0 | |
movabsq $.LCPI0_1, %rax | |
vmovsd (%rax), %xmm1 | |
vmovsd %xmm1, 72(%rsp) | |
movabsq $.LCPI0_2, %rax | |
vmovsd (%rax), %xmm1 | |
vmovsd %xmm1, 64(%rsp) | |
vxorpd %xmm2, %xmm2, %xmm2 | |
movq %r9, 16(%rsp) | |
movq %rdi, 120(%rsp) | |
movq %rbp, 112(%rsp) | |
movq %rcx, 104(%rsp) | |
movq %r10, 96(%rsp) | |
vmovsd %xmm8, 152(%rsp) | |
vmovsd %xmm0, 144(%rsp) | |
.LBB0_1: | |
vmovsd %xmm2, 8(%rsp) | |
vmulsd (%rdx), %xmm8, %xmm0 | |
vaddsd (%r8), %xmm0, %xmm0 | |
vmovsd %xmm0, (%r8) | |
vmulsd 8(%rdx), %xmm8, %xmm0 | |
vaddsd 8(%r8), %xmm0, %xmm0 | |
vmovsd %xmm0, 8(%r8) | |
vmulsd 16(%rdx), %xmm8, %xmm0 | |
vaddsd 16(%r8), %xmm0, %xmm0 | |
vmovsd %xmm0, 16(%r8) | |
vmulsd (%rdx,%rsi,8), %xmm8, %xmm0 | |
vaddsd (%r8,%r14,8), %xmm0, %xmm0 | |
vmovsd %xmm0, (%r8,%r14,8) | |
vmulsd 8(%rdx,%rsi,8), %xmm8, %xmm0 | |
vaddsd 8(%r8,%r14,8), %xmm0, %xmm0 | |
vmovsd %xmm0, 8(%r8,%r14,8) | |
vmulsd 16(%rdx,%rsi,8), %xmm8, %xmm0 | |
vaddsd 16(%r8,%r14,8), %xmm0, %xmm0 | |
vmovsd %xmm0, 16(%r8,%r14,8) | |
vmulsd (%rdx,%rbp,8), %xmm8, %xmm0 | |
vaddsd (%r8,%rdi,8), %xmm0, %xmm0 | |
vmovsd %xmm0, (%r8,%rdi,8) | |
vmulsd (%rdx,%r10,8), %xmm8, %xmm0 | |
vaddsd (%r8,%rcx,8), %xmm0, %xmm0 | |
vmovsd %xmm0, (%r8,%rcx,8) | |
vmulsd 16(%rdx,%rbp,8), %xmm8, %xmm0 | |
vaddsd 16(%r8,%rdi,8), %xmm0, %xmm0 | |
vmovsd %xmm0, 16(%r8,%rdi,8) | |
cmpb $0, 7(%rsp) | |
movq 160(%rsp), %r12 | |
jne .LBB0_4 | |
movq 128(%rsp), %r15 | |
movq 136(%rsp), %rbp | |
.p2align 4, 0x90 | |
.LBB0_3: | |
xorl %esi, %esi | |
movq %r15, %rdi | |
movq %r9, %rdx | |
movabsq $memset, %rax | |
callq *%rax | |
movq 16(%rsp), %r9 | |
addq $1, %rbp | |
addq %r12, %r15 | |
cmpq %r13, %rbp | |
jl .LBB0_3 | |
.LBB0_4: | |
vmovsd 152(%rsp), %xmm8 | |
vaddsd 8(%rsp), %xmm8, %xmm9 | |
movl $3, %r10d | |
xorl %r11d, %r11d | |
movq 248(%rsp), %r8 | |
vxorps %xmm7, %xmm7, %xmm7 | |
vmovsd 144(%rsp), %xmm0 | |
.p2align 4, 0x90 | |
.LBB0_5: | |
movq %r11, %rsi | |
movq %r10, %rbp | |
leaq -1(%rbp), %r10 | |
movq %rsi, %rax | |
imulq %r14, %rax | |
movq %rax, 8(%rsp) | |
movq %rsi, %r13 | |
imulq 408(%rsp), %r13 | |
leaq 1(%rsi), %r11 | |
xorl %eax, %eax | |
leaq -1(%rax), %rax | |
xorl %r15d, %r15d | |
movq %r8, %rdi | |
movq 464(%rsp), %rdx | |
movl $3, %ecx | |
testq %rcx, %rcx | |
jg .LBB0_11 | |
jmp .LBB0_6 | |
.LBB0_9: | |
addq $1, %rax | |
vdivsd %xmm4, %xmm0, %xmm4 | |
andq 472(%rsp), %r12 | |
addq %r15, %r12 | |
vmulsd -8(%rdx,%r12,8), %xmm4, %xmm4 | |
vmulsd %xmm4, %xmm3, %xmm3 | |
movq 392(%rsp), %rdx | |
vaddsd (%rdx,%r13,8), %xmm3, %xmm3 | |
vmovsd %xmm3, (%rdx,%r13,8) | |
vmulsd %xmm4, %xmm2, %xmm2 | |
vaddsd 8(%rdx,%r13,8), %xmm2, %xmm2 | |
vmovsd %xmm2, 8(%rdx,%r13,8) | |
vmulsd %xmm4, %xmm1, %xmm1 | |
vaddsd 16(%rdx,%r13,8), %xmm1, %xmm1 | |
vmovsd %xmm1, 16(%rdx,%r13,8) | |
movq %rax, %r15 | |
leaq -1(%rax), %rax | |
movq %r8, %rdi | |
movq %r11, %rdx | |
movq 16(%rsp), %r9 | |
movq 168(%rsp), %r11 | |
movq 176(%rsp), %rbp | |
.p2align 4, 0x90 | |
.LBB0_10: | |
testq %rcx, %rcx | |
jle .LBB0_6 | |
.LBB0_11: | |
addq $-1, %rcx | |
addq $8, %rdx | |
addq %rbx, %rdi | |
addq $1, %rax | |
cmpq %rax, %rsi | |
je .LBB0_10 | |
movq %rbp, 176(%rsp) | |
movq %r11, 168(%rsp) | |
movq 464(%rsp), %r11 | |
movq 8(%rsp), %r9 | |
vmovsd (%r8,%r9,8), %xmm3 | |
movq %rax, %r12 | |
sarq $63, %r12 | |
movq %r14, %r8 | |
movq %r12, %r14 | |
andq 256(%rsp), %r14 | |
addq %r15, %r14 | |
leaq -8(,%r14,8), %rbp | |
movq %r8, %r14 | |
movq 248(%rsp), %r8 | |
imulq %r14, %rbp | |
vmovsd 8(%r8,%r9,8), %xmm1 | |
vsubsd 8(%rbp,%rdi), %xmm1, %xmm2 | |
vmovsd 16(%r8,%r9,8), %xmm1 | |
vsubsd 16(%rbp,%rdi), %xmm1, %xmm1 | |
vmulsd %xmm2, %xmm2, %xmm4 | |
vmulsd %xmm1, %xmm1, %xmm5 | |
vsubsd (%rbp,%rdi), %xmm3, %xmm3 | |
vmulsd %xmm3, %xmm3, %xmm6 | |
vaddsd %xmm4, %xmm6, %xmm4 | |
vaddsd %xmm5, %xmm4, %xmm4 | |
vsqrtsd %xmm4, %xmm4, %xmm4 | |
vmulsd %xmm4, %xmm4, %xmm5 | |
vmulsd %xmm5, %xmm4, %xmm4 | |
vucomisd %xmm7, %xmm4 | |
jne .LBB0_9 | |
jp .LBB0_9 | |
jmp .LBB0_13 | |
.p2align 4, 0x90 | |
.LBB0_6: | |
cmpq $1, %rbp | |
jg .LBB0_5 | |
movq 392(%rsp), %rcx | |
vmovsd 72(%rsp), %xmm3 | |
vmulsd (%rcx), %xmm3, %xmm1 | |
movq 320(%rsp), %rdx | |
vaddsd (%rdx), %xmm1, %xmm1 | |
vmovsd %xmm1, (%rdx) | |
vmulsd 8(%rcx), %xmm3, %xmm2 | |
vaddsd 8(%rdx), %xmm2, %xmm2 | |
vmovsd %xmm2, 8(%rdx) | |
vmulsd 16(%rcx), %xmm3, %xmm2 | |
vaddsd 16(%rdx), %xmm2, %xmm2 | |
vmovsd %xmm2, 16(%rdx) | |
vmulsd %xmm8, %xmm1, %xmm1 | |
vaddsd (%r8), %xmm1, %xmm1 | |
vmovsd %xmm1, (%r8) | |
vmulsd 8(%rdx), %xmm8, %xmm1 | |
vaddsd 8(%r8), %xmm1, %xmm1 | |
vmovsd %xmm1, 8(%r8) | |
vmulsd 16(%rdx), %xmm8, %xmm1 | |
vaddsd 16(%r8), %xmm1, %xmm1 | |
vmovsd %xmm1, 16(%r8) | |
movq 408(%rsp), %rax | |
vmulsd (%rcx,%rax,8), %xmm3, %xmm1 | |
movq 336(%rsp), %rsi | |
vaddsd (%rdx,%rsi,8), %xmm1, %xmm1 | |
vmovsd %xmm1, (%rdx,%rsi,8) | |
vmulsd 8(%rcx,%rax,8), %xmm3, %xmm2 | |
vaddsd 8(%rdx,%rsi,8), %xmm2, %xmm2 | |
vmovsd %xmm2, 8(%rdx,%rsi,8) | |
vmulsd 16(%rcx,%rax,8), %xmm3, %xmm2 | |
vaddsd 16(%rdx,%rsi,8), %xmm2, %xmm2 | |
vmovsd %xmm2, 16(%rdx,%rsi,8) | |
vmulsd %xmm8, %xmm1, %xmm1 | |
vaddsd (%r8,%r14,8), %xmm1, %xmm1 | |
vmovsd %xmm1, (%r8,%r14,8) | |
vmulsd 8(%rdx,%rsi,8), %xmm8, %xmm1 | |
vaddsd 8(%r8,%r14,8), %xmm1, %xmm1 | |
vmovsd %xmm1, 8(%r8,%r14,8) | |
vmulsd 16(%rdx,%rsi,8), %xmm8, %xmm1 | |
vaddsd 16(%r8,%r14,8), %xmm1, %xmm1 | |
vmovsd %xmm1, 16(%r8,%r14,8) | |
movq 88(%rsp), %rax | |
vmulsd (%rcx,%rax,8), %xmm3, %xmm1 | |
movq 112(%rsp), %rbp | |
vaddsd (%rdx,%rbp,8), %xmm1, %xmm1 | |
vmovsd %xmm1, (%rdx,%rbp,8) | |
movq 80(%rsp), %rdi | |
vmulsd (%rcx,%rdi,8), %xmm3, %xmm2 | |
movq 96(%rsp), %r10 | |
vaddsd (%rdx,%r10,8), %xmm2, %xmm2 | |
vmovsd %xmm2, (%rdx,%r10,8) | |
vmulsd 16(%rcx,%rax,8), %xmm3, %xmm2 | |
vaddsd 16(%rdx,%rbp,8), %xmm2, %xmm2 | |
vmovsd %xmm2, 16(%rdx,%rbp,8) | |
vmulsd %xmm8, %xmm1, %xmm1 | |
movq 120(%rsp), %rdi | |
vaddsd (%r8,%rdi,8), %xmm1, %xmm1 | |
vmovsd %xmm1, (%r8,%rdi,8) | |
vmulsd (%rdx,%r10,8), %xmm8, %xmm1 | |
movq 104(%rsp), %rcx | |
vaddsd (%r8,%rcx,8), %xmm1, %xmm1 | |
vmovsd %xmm1, (%r8,%rcx,8) | |
vmulsd 16(%rdx,%rbp,8), %xmm8, %xmm1 | |
vaddsd 16(%r8,%rdi,8), %xmm1, %xmm1 | |
vmovsd %xmm1, 16(%r8,%rdi,8) | |
vaddsd %xmm8, %xmm9, %xmm2 | |
vmovsd 64(%rsp), %xmm1 | |
vucomisd %xmm2, %xmm1 | |
movq 400(%rsp), %r13 | |
ja .LBB0_1 | |
movabsq $NRT_decref, %rbx | |
movq 288(%rsp), %rdi | |
movq %r8, %rbp | |
callq *%rbx | |
movq 432(%rsp), %rdi | |
callq *%rbx | |
movq 360(%rsp), %rdi | |
callq *%rbx | |
movq 48(%rsp), %rax | |
movq 24(%rsp), %rcx | |
movq %rcx, (%rax) | |
movq 32(%rsp), %rcx | |
movq %rcx, 8(%rax) | |
movq 40(%rsp), %rcx | |
movq %rcx, 16(%rax) | |
movq 240(%rsp), %rcx | |
movq %rcx, 24(%rax) | |
movq %rbp, 32(%rax) | |
movq 256(%rsp), %rcx | |
movq %rcx, 40(%rax) | |
movq %r14, 48(%rax) | |
movq 272(%rsp), %rcx | |
movq %rcx, 56(%rax) | |
movq 280(%rsp), %rcx | |
movq %rcx, 64(%rax) | |
xorl %eax, %eax | |
jmp .LBB0_14 | |
.LBB0_13: | |
movabsq $.const.picklebuf.140174789618696, %rax | |
movq 56(%rsp), %rcx | |
movq %rax, (%rcx) | |
movl $1, %eax | |
.LBB0_14: | |
addq $184, %rsp | |
popq %rbx | |
popq %r12 | |
popq %r13 | |
popq %r14 | |
popq %r15 | |
popq %rbp | |
retq | |
.Lfunc_end0: | |
.size _ZN8__main__12leapfrog$241E5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE, .Lfunc_end0-_ZN8__main__12leapfrog$241E5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE | |
.cfi_endproc | |
.globl _ZN7cpython8__main__12leapfrog$241E5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE | |
.p2align 4, 0x90 | |
.type _ZN7cpython8__main__12leapfrog$241E5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE,@function | |
_ZN7cpython8__main__12leapfrog$241E5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE: | |
.cfi_startproc | |
pushq %rbp | |
.Lcfi13: | |
.cfi_def_cfa_offset 16 | |
.Lcfi14: | |
.cfi_offset %rbp, -16 | |
movq %rsp, %rbp | |
.Lcfi15: | |
.cfi_def_cfa_register %rbp | |
pushq %r15 | |
pushq %r14 | |
pushq %r13 | |
pushq %r12 | |
pushq %rbx | |
andq $-32, %rsp | |
subq $800, %rsp | |
.Lcfi16: | |
.cfi_offset %rbx, -56 | |
.Lcfi17: | |
.cfi_offset %r12, -48 | |
.Lcfi18: | |
.cfi_offset %r13, -40 | |
.Lcfi19: | |
.cfi_offset %r14, -32 | |
.Lcfi20: | |
.cfi_offset %r15, -24 | |
movq %rdi, %rbx | |
leaq 224(%rsp), %r11 | |
leaq 232(%rsp), %r14 | |
movabsq $.const.leapfrog, %r10 | |
movabsq $PyArg_UnpackTuple, %r15 | |
leaq 248(%rsp), %r8 | |
leaq 240(%rsp), %r9 | |
movl $4, %edx | |
movl $4, %ecx | |
xorl %eax, %eax | |
movq %rsi, %rdi | |
movq %r10, %rsi | |
pushq %r11 | |
pushq %r14 | |
callq *%r15 | |
addq $16, %rsp | |
vxorps %ymm0, %ymm0, %ymm0 | |
vmovaps %ymm0, 576(%rsp) | |
vmovaps %ymm0, 544(%rsp) | |
movq $0, 608(%rsp) | |
vmovaps %ymm0, 480(%rsp) | |
vmovaps %ymm0, 448(%rsp) | |
movq $0, 512(%rsp) | |
vmovaps %ymm0, 384(%rsp) | |
vmovaps %ymm0, 352(%rsp) | |
movq $0, 416(%rsp) | |
vmovups %ymm0, 664(%rsp) | |
vmovaps %ymm0, 640(%rsp) | |
testl %eax, %eax | |
je .LBB1_24 | |
testq %rbx, %rbx | |
je .LBB1_26 | |
movq 24(%rbx), %r12 | |
testq %r12, %r12 | |
je .LBB1_18 | |
movq 248(%rsp), %rdi | |
movabsq $NRT_adapt_ndarray_from_python, %r14 | |
leaq 544(%rsp), %rsi | |
vzeroupper | |
callq *%r14 | |
testl %eax, %eax | |
jne .LBB1_24 | |
movq 544(%rsp), %rax | |
movq %rax, 72(%rsp) | |
movq 552(%rsp), %rax | |
movq %rax, 40(%rsp) | |
movq 560(%rsp), %rax | |
movq %rax, 32(%rsp) | |
movq 568(%rsp), %r15 | |
movq 576(%rsp), %r13 | |
movq 584(%rsp), %rbx | |
movq 592(%rsp), %rax | |
movq %rax, 64(%rsp) | |
movq 600(%rsp), %rax | |
movq %rax, 56(%rsp) | |
movq 608(%rsp), %rax | |
movq %rax, 48(%rsp) | |
movq 240(%rsp), %rdi | |
leaq 448(%rsp), %rsi | |
callq *%r14 | |
testl %eax, %eax | |
jne .LBB1_22 | |
movq %rbx, 24(%rsp) | |
movq 448(%rsp), %rbx | |
movq 456(%rsp), %rax | |
movq %rax, 16(%rsp) | |
movq 464(%rsp), %rax | |
movq %rax, 8(%rsp) | |
movq 472(%rsp), %rax | |
movq %rax, (%rsp) | |
movq 480(%rsp), %rax | |
movq %rax, 208(%rsp) | |
movq 488(%rsp), %rax | |
movq %rax, 200(%rsp) | |
movq 496(%rsp), %rax | |
movq %rax, 192(%rsp) | |
movq 504(%rsp), %rax | |
movq %rax, 184(%rsp) | |
movq 512(%rsp), %rax | |
movq %rax, 176(%rsp) | |
movq 232(%rsp), %rdi | |
leaq 352(%rsp), %rsi | |
callq *%r14 | |
testl %eax, %eax | |
jne .LBB1_21 | |
movq %r13, 160(%rsp) | |
movq %r15, 168(%rsp) | |
movq %rbx, 80(%rsp) | |
movq 352(%rsp), %r15 | |
movq %r14, %rax | |
movq 360(%rsp), %r14 | |
movq 368(%rsp), %rbx | |
movq 376(%rsp), %r13 | |
movq 384(%rsp), %rcx | |
movq %rcx, 152(%rsp) | |
movq 392(%rsp), %rcx | |
movq %rcx, 144(%rsp) | |
movq 400(%rsp), %rcx | |
movq %rcx, 136(%rsp) | |
movq 408(%rsp), %rcx | |
movq %rcx, 128(%rsp) | |
movq 416(%rsp), %rcx | |
movq %rcx, 120(%rsp) | |
movq 224(%rsp), %rdi | |
leaq 640(%rsp), %rsi | |
callq *%rax | |
testl %eax, %eax | |
jne .LBB1_20 | |
movq %r12, 88(%rsp) | |
movq %rbx, 104(%rsp) | |
movq 640(%rsp), %rax | |
movq %rax, 112(%rsp) | |
movq 648(%rsp), %r11 | |
movq %r13, 96(%rsp) | |
movq 656(%rsp), %r13 | |
movq 664(%rsp), %rbx | |
movq 672(%rsp), %rdx | |
movq 680(%rsp), %r10 | |
movq 688(%rsp), %r12 | |
vxorps %ymm0, %ymm0, %ymm0 | |
vmovaps %ymm0, 288(%rsp) | |
vmovaps %ymm0, 256(%rsp) | |
movq $0, 320(%rsp) | |
subq $8, %rsp | |
leaq 264(%rsp), %rdi | |
leaq 224(%rsp), %rsi | |
movq 80(%rsp), %rcx | |
movq 48(%rsp), %r8 | |
movq 40(%rsp), %r9 | |
pushq %r12 | |
pushq %r10 | |
pushq %rdx | |
pushq %rbx | |
pushq %r13 | |
pushq %r11 | |
pushq %rax | |
pushq 184(%rsp) | |
pushq 200(%rsp) | |
pushq 216(%rsp) | |
pushq 232(%rsp) | |
pushq 248(%rsp) | |
pushq 200(%rsp) | |
pushq 216(%rsp) | |
pushq %r14 | |
pushq %r15 | |
movq %r15, %r14 | |
pushq 312(%rsp) | |
pushq 328(%rsp) | |
pushq 344(%rsp) | |
pushq 360(%rsp) | |
pushq 376(%rsp) | |
pushq 176(%rsp) | |
pushq 192(%rsp) | |
pushq 208(%rsp) | |
movq 280(%rsp), %r13 | |
pushq %r13 | |
pushq 256(%rsp) | |
pushq 272(%rsp) | |
pushq 288(%rsp) | |
pushq 256(%rsp) | |
pushq 400(%rsp) | |
pushq 416(%rsp) | |
movabsq $_ZN8__main__12leapfrog$241E5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE, %rax | |
vzeroupper | |
callq *%rax | |
addq $256, %rsp | |
movl %eax, %ebx | |
movq 216(%rsp), %rax | |
movq %rax, (%rsp) | |
movq 256(%rsp), %r15 | |
movq 264(%rsp), %rax | |
movq %rax, 64(%rsp) | |
movq 272(%rsp), %rax | |
movq %rax, 56(%rsp) | |
movq 280(%rsp), %rax | |
movq %rax, 48(%rsp) | |
movq 288(%rsp), %rax | |
movq %rax, 40(%rsp) | |
movq 296(%rsp), %rax | |
movq %rax, 32(%rsp) | |
movq 304(%rsp), %rax | |
movq %rax, 24(%rsp) | |
movq 312(%rsp), %rax | |
movq %rax, 16(%rsp) | |
movq 320(%rsp), %rax | |
movq %rax, 8(%rsp) | |
movabsq $NRT_decref, %r12 | |
movq 72(%rsp), %rdi | |
callq *%r12 | |
movq %r13, %rdi | |
callq *%r12 | |
movq %r14, %rdi | |
callq *%r12 | |
movq 112(%rsp), %rdi | |
callq *%r12 | |
cmpl $-2, %ebx | |
je .LBB1_10 | |
testl %ebx, %ebx | |
jne .LBB1_11 | |
movq 88(%rsp), %rax | |
movq 24(%rax), %rdi | |
movabsq $PyList_GetItem, %rax | |
xorl %esi, %esi | |
callq *%rax | |
movq %r15, 704(%rsp) | |
movq 64(%rsp), %rcx | |
movq %rcx, 712(%rsp) | |
movq 56(%rsp), %rcx | |
movq %rcx, 720(%rsp) | |
movq 48(%rsp), %rcx | |
movq %rcx, 728(%rsp) | |
movq 40(%rsp), %rcx | |
movq %rcx, 736(%rsp) | |
movq 32(%rsp), %rcx | |
movq %rcx, 744(%rsp) | |
movq 24(%rsp), %rcx | |
movq %rcx, 752(%rsp) | |
movq 16(%rsp), %rcx | |
movq %rcx, 760(%rsp) | |
movq 8(%rsp), %rcx | |
movq %rcx, 768(%rsp) | |
movabsq $NRT_adapt_ndarray_to_python, %rbx | |
leaq 704(%rsp), %rdi | |
movl $2, %esi | |
movl $1, %edx | |
movq %rax, %rcx | |
callq *%rbx | |
jmp .LBB1_25 | |
.LBB1_10: | |
movabsq $_Py_NoneStruct, %rbx | |
movabsq $Py_IncRef, %rax | |
movq %rbx, %rdi | |
callq *%rax | |
movq %rbx, %rax | |
jmp .LBB1_25 | |
.LBB1_11: | |
jle .LBB1_14 | |
movabsq $PyErr_Clear, %rax | |
callq *%rax | |
movq (%rsp), %rax | |
movl 8(%rax), %esi | |
movq (%rax), %rdi | |
movabsq $numba_unpickle, %rax | |
callq *%rax | |
testq %rax, %rax | |
je .LBB1_24 | |
movabsq $numba_do_raise, %rcx | |
movq %rax, %rdi | |
callq *%rcx | |
jmp .LBB1_24 | |
.LBB1_14: | |
cmpl $-3, %ebx | |
je .LBB1_17 | |
cmpl $-1, %ebx | |
je .LBB1_24 | |
movabsq $PyExc_SystemError, %rdi | |
movabsq $".const.unknown error when calling native function", %rsi | |
jmp .LBB1_19 | |
.LBB1_17: | |
movabsq $PyExc_StopIteration, %rdi | |
movabsq $PyErr_SetNone, %rax | |
jmp .LBB1_23 | |
.LBB1_18: | |
movabsq $PyExc_RuntimeError, %rdi | |
movabsq $".const.missing Environment", %rsi | |
.LBB1_19: | |
movabsq $PyErr_SetString, %rax | |
vzeroupper | |
callq *%rax | |
jmp .LBB1_24 | |
.LBB1_20: | |
movabsq $NRT_decref, %rax | |
movq %r15, %rdi | |
callq *%rax | |
movq 80(%rsp), %rbx | |
.LBB1_21: | |
movabsq $NRT_decref, %rax | |
movq %rbx, %rdi | |
callq *%rax | |
.LBB1_22: | |
movabsq $NRT_decref, %rax | |
movq 72(%rsp), %rdi | |
.LBB1_23: | |
callq *%rax | |
.LBB1_24: | |
xorl %eax, %eax | |
.LBB1_25: | |
leaq -40(%rbp), %rsp | |
popq %rbx | |
popq %r12 | |
popq %r13 | |
popq %r14 | |
popq %r15 | |
popq %rbp | |
vzeroupper | |
retq | |
.LBB1_26: | |
movabsq $".const.Fatal error: missing _dynfunc.Closure", %rdi | |
movabsq $puts, %rax | |
vzeroupper | |
callq *%rax | |
.Lfunc_end1: | |
.size _ZN7cpython8__main__12leapfrog$241E5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE, .Lfunc_end1-_ZN7cpython8__main__12leapfrog$241E5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi2E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE | |
.cfi_endproc | |
.weak NRT_incref | |
.p2align 4, 0x90 | |
.type NRT_incref,@function | |
NRT_incref: | |
testq %rdi, %rdi | |
je .LBB2_1 | |
lock addq $1, (%rdi) | |
retq | |
.LBB2_1: | |
retq | |
.Lfunc_end2: | |
.size NRT_incref, .Lfunc_end2-NRT_incref | |
.weak NRT_decref | |
.p2align 4, 0x90 | |
.type NRT_decref,@function | |
NRT_decref: | |
.cfi_startproc | |
testq %rdi, %rdi | |
je .LBB3_2 | |
movq $-1, %rax | |
lock xaddq %rax, (%rdi) | |
cmpq $1, %rax | |
je .LBB3_3 | |
.LBB3_2: | |
retq | |
.LBB3_3: | |
movabsq $NRT_MemInfo_call_dtor, %rax | |
jmpq *%rax | |
.Lfunc_end3: | |
.size NRT_decref, .Lfunc_end3-NRT_decref | |
.cfi_endproc | |
.type .const.picklebuf.140174789618696,@object | |
.section .rodata,"a",@progbits | |
.p2align 3 | |
.const.picklebuf.140174789618696: | |
.quad .const.pickledata.140174789618696 | |
.long 68 | |
.zero 4 | |
.size .const.picklebuf.140174789618696, 16 | |
.type .const.pickledata.140174789618696,@object | |
.p2align 4 | |
.const.pickledata.140174789618696: | |
.ascii "\200\004\2259\000\000\000\000\000\000\000\214\bbuiltins\224\214\021ZeroDivisionError\224\223\224\214\020division by zero\224\205\224\206\224." | |
.size .const.pickledata.140174789618696, 68 | |
.type .const.leapfrog,@object | |
.const.leapfrog: | |
.asciz "leapfrog" | |
.size .const.leapfrog, 9 | |
.type ".const.Fatal error: missing _dynfunc.Closure",@object | |
.p2align 4 | |
".const.Fatal error: missing _dynfunc.Closure": | |
.asciz "Fatal error: missing _dynfunc.Closure" | |
.size ".const.Fatal error: missing _dynfunc.Closure", 38 | |
.type ".const.missing Environment",@object | |
.p2align 4 | |
".const.missing Environment": | |
.asciz "missing Environment" | |
.size ".const.missing Environment", 20 | |
.type ".const.unknown error when calling native function",@object | |
.p2align 4 | |
".const.unknown error when calling native function": | |
.asciz "unknown error when calling native function" | |
.size ".const.unknown error when calling native function", 43 | |
.section ".note.GNU-stack","",@progbits | |
================================================================================ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment