// File: /workspace/github_cpp_makefile_star2_O2/ncbi[P]amr/seq.cpp
// Function: Seq_sp::Align::getMinEditDistance() const
AlignScore Align::getMinEditDistance () const
{	
  ASSERT (self_score1 >= 0.0);
  ASSERT (self_score2 >= 0.0);
  
  const AlignScore dist = self_score1 + self_score2 - 2 * score;
  ASSERT (dist >= 0.0);
	return dist;
}

// Assembly:
pushq %rbx
subq $0x110, %rsp            # imm = 0x110
movq %rdi, %rbx
callq 0xc070
andl $0x0, (%rax)
movsd 0x70(%rbx), %xmm0
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jb 0x54519
movsd 0x78(%rbx), %xmm1
ucomisd %xmm2, %xmm1
jb 0x545ed
addsd %xmm1, %xmm0
movsd 0x8(%rbx), %xmm1
addsd %xmm1, %xmm1
subsd %xmm1, %xmm0
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x546c1
addq $0x110, %rsp            # imm = 0x110
popq %rbx
retq
callq 0xc6d0
testl %eax, %eax
jne 0x54795
leaq 0xeae5(%rip), %rsi      # 0x63012
leaq 0x70(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0xdbbe
leaq 0x50(%rsp), %rdi
movl $0x1148, %esi           # imm = 0x1148
callq 0xe2d5
leaq 0x90(%rsp), %rdi
leaq 0x70(%rsp), %rsi
leaq 0x50(%rsp), %rdx
callq 0xe26e
leaq 0x9c68(%rip), %rdx      # 0x5e1d1
leaq 0xb0(%rsp), %rdi
leaq 0x90(%rsp), %rsi
callq 0xe24f
leaq 0xfc16(%rip), %rsi      # 0x6419b
leaq 0x10(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0xdbbe
leaq 0xa331(%rip), %rdx      # 0x5e8cc
leaq 0x30(%rsp), %rdi
leaq 0x10(%rsp), %rsi
callq 0xe24f
leaq 0xd0(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
leaq 0x30(%rsp), %rdx
callq 0xe26e
leaq 0xfb80(%rip), %rdx      # 0x6414b
leaq 0xf0(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
callq 0xe24f
leaq 0xf0(%rsp), %rdi
callq 0x101d0
callq 0xc6d0
testl %eax, %eax
jne 0x54795
leaq 0xea11(%rip), %rsi      # 0x63012
leaq 0x70(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0xdbbe
leaq 0x50(%rsp), %rdi
movl $0x1149, %esi           # imm = 0x1149
callq 0xe2d5
leaq 0x90(%rsp), %rdi
leaq 0x70(%rsp), %rsi
leaq 0x50(%rsp), %rdx
callq 0xe26e
leaq 0x9b94(%rip), %rdx      # 0x5e1d1
leaq 0xb0(%rsp), %rdi
leaq 0x90(%rsp), %rsi
callq 0xe24f
leaq 0xfb42(%rip), %rsi      # 0x6419b
leaq 0x10(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0xdbbe
leaq 0xa25d(%rip), %rdx      # 0x5e8cc
leaq 0x30(%rsp), %rdi
leaq 0x10(%rsp), %rsi
callq 0xe24f
leaq 0xd0(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
leaq 0x30(%rsp), %rdx
callq 0xe26e
leaq 0xfabf(%rip), %rdx      # 0x6415e
leaq 0xf0(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
callq 0xe24f
leaq 0xf0(%rsp), %rdi
callq 0x101d0
callq 0xc6d0
testl %eax, %eax
jne 0x54795
leaq 0xe93d(%rip), %rsi      # 0x63012
leaq 0x70(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0xdbbe
leaq 0x50(%rsp), %rdi
movl $0x114c, %esi           # imm = 0x114C
callq 0xe2d5
leaq 0x90(%rsp), %rdi
leaq 0x70(%rsp), %rsi
leaq 0x50(%rsp), %rdx
callq 0xe26e
leaq 0x9ac0(%rip), %rdx      # 0x5e1d1
leaq 0xb0(%rsp), %rdi
leaq 0x90(%rsp), %rsi
callq 0xe24f
leaq 0xfa6e(%rip), %rsi      # 0x6419b
leaq 0x10(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0xdbbe
leaq 0xa189(%rip), %rdx      # 0x5e8cc
leaq 0x30(%rsp), %rdi
leaq 0x10(%rsp), %rsi
callq 0xe24f
leaq 0xd0(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
leaq 0x30(%rsp), %rdx
callq 0xe26e
leaq 0xfa5d(%rip), %rdx      # 0x641d0
leaq 0xf0(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
callq 0xe24f
leaq 0xf0(%rsp), %rdi
callq 0x101d0
pushq $0x1
popq %rdi
callq 0xc6f0
jmp 0x547a5
jmp 0x547b7
jmp 0x547a5
jmp 0x547b7
movq %rax, %rbx
leaq 0xf0(%rsp), %rdi
callq 0xcbe8
jmp 0x547ba
movq %rax, %rbx
leaq 0xd0(%rsp), %rdi
callq 0xcbe8
jmp 0x547d0
jmp 0x547cd
jmp 0x547cd
movq %rax, %rbx
leaq 0x30(%rsp), %rdi
callq 0xcbe8
jmp 0x547e3
jmp 0x547e0
jmp 0x547e0
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0xcbe8
jmp 0x547f6
jmp 0x547f3
jmp 0x547f3
movq %rax, %rbx
leaq 0xb0(%rsp), %rdi
callq 0xcbe8
jmp 0x5480c
jmp 0x54809
jmp 0x54809
movq %rax, %rbx
leaq 0x90(%rsp), %rdi
callq 0xcbe8
jmp 0x54822
jmp 0x5481f
jmp 0x5481f
movq %rax, %rbx
leaq 0x50(%rsp), %rdi
callq 0xcbe8
jmp 0x54835
jmp 0x54832
jmp 0x54832
movq %rax, %rbx
leaq 0x70(%rsp), %rdi
callq 0xcbe8
jmp 0x54848
jmp 0x54845
jmp 0x54845
movq %rax, %rbx
movq %rbx, %rdi
callq 0xcaa0