// File: /workspace/github_c_makefile_star2_O1/zpole[P]IICV/vl/scalespace.c
// Function: vl_scalespace_put_image
void
vl_scalespace_put_image (VlScaleSpace *self, float const *image)
{
  vl_index o ;
  _vl_scalespace_start_octave_from_image(self, image, self->geom.firstOctave) ;
  _vl_scalespace_fill_octave(self, self->geom.firstOctave) ;
  for (o = self->geom.firstOctave + 1 ; o <= self->geom.lastOctave ; ++o) {
    _vl_scalespace_start_octave_from_previous_octave(self, o) ;
    _vl_scalespace_fill_octave(self, o) ;
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rsi, %r15
movq %rdi, %rbx
movq 0x10(%rdi), %r14
movq 0x28(%rdi), %rdx
xorl %r12d, %r12d
testq %r14, %r14
cmovgq %r14, %r12
movq %r12, %rsi
callq 0x9050
movl $0x1, %esi
movl %r12d, %ecx
shll %cl, %esi
movq (%rbx), %rdx
movq 0x8(%rbx), %rcx
testq %r14, %r14
jle 0x2af96
movslq %ecx, %rcx
testq %rcx, %rcx
jle 0x2afa9
movslq %esi, %rsi
movl %edx, %edi
subl %esi, %edi
leal 0x1(%rdi), %r8d
movslq %r8d, %r8
imulq %rsi, %rdx
shlq $0x2, %rdx
xorl %r9d, %r9d
cmpl $0x7ffffffe, %edi       # imm = 0x7FFFFFFE
ja 0x2af89
xorl %r10d, %r10d
movss (%r15,%r10,4), %xmm0
movss %xmm0, (%rax)
addq $0x4, %rax
addq %rsi, %r10
cmpq %r8, %r10
jl 0x2af73
addq %rsi, %r9
addq %rdx, %r15
cmpq %rcx, %r9
jl 0x2af68
jmp 0x2afa9
imulq %rcx, %rdx
shlq $0x2, %rdx
movq %rax, %rdi
movq %r15, %rsi
callq 0x95a0
testq %r14, %r14
movq %rbx, 0x28(%rsp)
jns 0x2b132
movq $-0x1, %r15
movq %r14, 0x20(%rsp)
movl %r15d, %ecx
notb %cl
movq (%rbx), %rax
movq 0x8(%rbx), %r13
shlq %cl, %rax
movq %rax, 0x8(%rsp)
shlq %cl, %r13
leaq 0x1(%r15), %r12
xorps %xmm0, %xmm0
cvtsi2sd %r12, %xmm0
callq 0x9040
movq 0x28(%rbx), %rdx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x9050
movq %rax, %r12
movq 0x28(%rbx), %rdx
movq %rbx, %rdi
movq %r15, 0x10(%rsp)
movq %r15, %rsi
callq 0x9050
movsd 0x9357(%rip), %xmm5     # 0x34370
movss 0x832f(%rip), %xmm4     # 0x33350
movslq %r13d, %rcx
testq %rcx, %rcx
jle 0x2b116
shlq $0x20, %r13
movabsq $-0x100000000, %rdi     # imm = 0xFFFFFFFF00000000
addq %rdi, %r13
sarq $0x20, %r13
movq 0x8(%rsp), %r8
movq %r8, %rdx
shlq $0x20, %rdx
movslq %r8d, %rsi
addq %rdi, %rdx
sarq $0x20, %rdx
leaq (,%r8,8), %rdi
xorl %r8d, %r8d
cmpq %r13, %r8
movl $0x0, %r9d
cmovlq 0x8(%rsp), %r9
testq %rsi, %rsi
jle 0x2b0fb
movss (%r12,%r9,4), %xmm0
movss (%r12), %xmm1
leaq (%rax,%rdi), %r14
movq %rax, %r11
movq %r12, %r10
xorl %r15d, %r15d
xorl %ebx, %ebx
cmpq %rdx, %r15
setl %bl
leaq (%r12,%rbx,4), %rbp
movss (%rbp,%r15,4), %xmm2
addq %r9, %rbx
leaq (%r12,%rbx,4), %rbx
movss (%rbx,%r15,4), %xmm3
movss %xmm1, (%rax,%r15,8)
addss %xmm1, %xmm0
addss %xmm2, %xmm1
mulss %xmm4, %xmm1
movss %xmm1, 0x4(%rax,%r15,8)
movaps %xmm0, %xmm1
addss %xmm2, %xmm1
addss %xmm3, %xmm1
unpcklps %xmm1, %xmm0            # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
mulps %xmm5, %xmm0
movlps %xmm0, (%r14,%r15,8)
addq $0x8, %r11
addq $0x4, %r10
incq %r15
movaps %xmm3, %xmm0
movaps %xmm2, %xmm1
cmpq %r15, %rsi
jne 0x2b094
jmp 0x2b101
movq %r12, %r10
movq %rax, %r11
addq %rdi, %r11
incq %r8
movq %r11, %rax
movq %r10, %r12
cmpq %rcx, %r8
jne 0x2b063
movq 0x10(%rsp), %rcx
leaq -0x1(%rcx), %r15
movq 0x20(%rsp), %r14
cmpq %r14, %rcx
movq 0x28(%rsp), %rbx
jg 0x2afc3
xorps %xmm3, %xmm3
cvtsi2sd %r14, %xmm3
xorps %xmm0, %xmm0
cvtsi2sdq 0x28(%rbx), %xmm0
movsd 0x20(%rbx), %xmm1
unpcklps 0x8031(%rip), %xmm1     # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
movsd 0x38(%rbx), %xmm2
movsd %xmm2, 0x8(%rsp)
subpd 0x802e(%rip), %xmm1     # 0x33190
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
divsd %xmm2, %xmm0
movsd %xmm3, 0x10(%rsp)
addsd %xmm3, %xmm0
callq 0x9040
movapd %xmm0, %xmm1
mulsd 0x8(%rsp), %xmm1
movsd 0x40(%rbx), %xmm0
ucomisd %xmm0, %xmm1
jbe 0x2b25a
movl %r14d, %eax
negb %al
movq (%rbx), %r15
movq %r15, %rdx
movl %eax, %ecx
shlq %cl, %rdx
movl %r14d, %ecx
shrq %cl, %r15
movq 0x8(%rbx), %r12
movq %r12, %rsi
movl %eax, %ecx
shlq %cl, %rsi
movl %r14d, %ecx
shrq %cl, %r12
testq %r14, %r14
cmovleq %rdx, %r15
cmovleq %rsi, %r12
movsd %xmm0, 0x18(%rsp)
movsd 0x10(%rsp), %xmm0
movsd %xmm1, 0x8(%rsp)
callq 0x9040
movsd 0x8(%rsp), %xmm1
movsd %xmm0, 0x10(%rsp)
movsd 0x18(%rsp), %xmm0
mulsd %xmm0, %xmm0
mulsd %xmm1, %xmm1
subsd %xmm0, %xmm1
xorpd %xmm0, %xmm0
ucomisd %xmm0, %xmm1
jb 0x2b215
xorps %xmm0, %xmm0
sqrtsd %xmm1, %xmm0
jmp 0x2b21e
movapd %xmm1, %xmm0
callq 0x9990
movsd %xmm0, 0x8(%rsp)
movq 0x28(%rbx), %rdx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x9050
movsd 0x8(%rsp), %xmm0
divsd 0x10(%rsp), %xmm0
movq %rax, %rdi
movq %r15, %rsi
movq %rax, %rdx
movq %r15, %rcx
movq %r12, %r8
movq %r15, %r9
movapd %xmm0, %xmm1
callq 0x9770
movq 0x10(%rbx), %rsi
movq %rbx, %rdi
callq 0x2ad5b
movq 0x10(%rbx), %r15
cmpq 0x18(%rbx), %r15
jge 0x2b4d7
leaq 0x1(%r15), %r14
movslq 0x20(%rbx), %r12
addq 0x28(%rbx), %r12
movq 0x30(%rbx), %rax
cmpq %rax, %r12
cmovgeq %rax, %r12
movq %rbx, %rdi
movq %r15, %rsi
movq %r12, %rdx
callq 0x9050
movq %rax, %r13
movq 0x28(%rbx), %rdx
movq %rbx, %rdi
movq %r14, 0x10(%rsp)
movq %r14, %rsi
callq 0x9050
movl %r15d, %edx
negb %dl
movq (%rbx), %r14
movq %r14, %rsi
movl %edx, %ecx
shlq %cl, %rsi
movl %r15d, %ecx
shrq %cl, %r14
movq 0x8(%rbx), %rbx
movq %rbx, %rdi
movl %edx, %ecx
shlq %cl, %rdi
movl %r15d, %ecx
shrq %cl, %rbx
movq %rax, %rbp
testq %r15, %r15
cmovleq %rsi, %r14
cmovleq %rdi, %rbx
xorps %xmm0, %xmm0
cvtsi2sd %r15, %xmm0
movsd %xmm0, 0x20(%rsp)
callq 0x9040
movslq %ebx, %rax
testq %rax, %rax
jle 0x2b346
leal -0x1(%r14), %ecx
movslq %ecx, %rdx
xorl %esi, %esi
testl %ecx, %ecx
jle 0x2b33d
movq %rsi, %rdi
imulq %r14, %rdi
leaq (,%rdi,4), %rdi
addq %r13, %rdi
xorl %r8d, %r8d
movss (%rdi), %xmm0
movss %xmm0, (%rbp)
addq $0x4, %rbp
addq $0x8, %rdi
addq $0x2, %r8
cmpq %rdx, %r8
jl 0x2b323
addq $0x2, %rsi
cmpq %rax, %rsi
jl 0x2b30a
movq 0x28(%rsp), %rbx
movsd 0x38(%rbx), %xmm0
movsd %xmm0, 0x8(%rsp)
movq 0x10(%rsp), %r14
cvtsi2sd %r14, %xmm3
xorps %xmm0, %xmm0
cvtsi2sdq 0x28(%rbx), %xmm0
movsd 0x20(%rbx), %xmm1
movsd 0x7e0a(%rip), %xmm2     # 0x33180
unpcklps %xmm2, %xmm1            # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0x7e0f(%rip), %xmm2     # 0x33190
subpd %xmm2, %xmm1
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
divsd %xmm2, %xmm0
movsd %xmm3, 0x30(%rsp)
addsd %xmm3, %xmm0
callq 0x9040
mulsd 0x8(%rsp), %xmm0
movsd %xmm0, 0x8(%rsp)
movsd 0x38(%rbx), %xmm0
movsd %xmm0, 0x18(%rsp)
xorps %xmm0, %xmm0
cvtsi2sd %r12, %xmm0
movsd 0x20(%rbx), %xmm1
unpcklps 0x7db1(%rip), %xmm1     # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x7db9(%rip), %xmm1     # 0x33190
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
divsd %xmm2, %xmm0
addsd 0x20(%rsp), %xmm0
callq 0x9040
movapd %xmm0, %xmm1
movsd 0x8(%rsp), %xmm0
mulsd 0x18(%rsp), %xmm1
ucomisd %xmm1, %xmm0
jbe 0x2b4bf
movl %r15d, %eax
notb %al
movq (%rbx), %r12
movq %r12, %rdx
movl %eax, %ecx
shlq %cl, %rdx
movl %r14d, %ecx
shrq %cl, %r12
movq 0x8(%rbx), %r13
movq %r13, %rsi
movl %eax, %ecx
shlq %cl, %rsi
movl %r14d, %ecx
shrq %cl, %r13
testq %r15, %r15
cmovsq %rdx, %r12
cmovsq %rsi, %r13
movsd 0x30(%rsp), %xmm0
movsd %xmm1, 0x18(%rsp)
callq 0x9040
movsd %xmm0, 0x20(%rsp)
movsd 0x8(%rsp), %xmm0
movsd 0x18(%rsp), %xmm1
mulsd %xmm1, %xmm1
mulsd %xmm0, %xmm0
subsd %xmm1, %xmm0
ucomisd 0x7bba(%rip), %xmm0     # 0x33030
jb 0x2b47e
sqrtsd %xmm0, %xmm0
jmp 0x2b483
callq 0x9990
movsd %xmm0, 0x8(%rsp)
movq 0x28(%rbx), %rdx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x9050
movsd 0x8(%rsp), %xmm0
divsd 0x20(%rsp), %xmm0
movq %rax, %rdi
movq %r12, %rsi
movq %rax, %rdx
movq %r12, %rcx
movq %r13, %r8
movq %r12, %r9
movapd %xmm0, %xmm1
callq 0x9770
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2ad5b
movq %r14, %r15
cmpq 0x18(%rbx), %r14
jl 0x2b274
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
nop