// File: ncbi[P]amr/seq.cpp
// Function: Seq_sp::Dna::reverse()
void Dna::reverse ()
{
  unique_ptr<Dna> dnaRev (makeComplementary ());
  ASSERT (seq. size () == dnaRev->seq. size ());
  seq = dnaRev->seq;

#if 0
  if (Qual)
    ForString (i, seq)
      Qual [i] = dnaRev->Qual [i];
#endif
}

// Assembly:
subq $0x158, %rsp            # imm = 0x158
movq %rdi, 0x150(%rsp)
movq 0x150(%rsp), %rdi
movq %rdi, 0x18(%rsp)
callq 0xaf7f0
movq %rax, %rsi
leaq 0x148(%rsp), %rdi
callq 0xd80a0
callq 0xd0a0
movq 0x18(%rsp), %rdi
movl $0x0, (%rax)
addq $0x28, %rdi
callq 0xd520
movq %rax, 0x20(%rsp)
leaq 0x148(%rsp), %rdi
callq 0xd80d0
movq %rax, %rdi
addq $0x28, %rdi
callq 0xd520
movq %rax, %rcx
movq 0x20(%rsp), %rax
cmpq %rcx, %rax
je 0xafc8c
callq 0xd8c0
cmpl $0x0, %eax
jne 0xafc82
leaq 0xa7(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0xdd50
movq 0x10(%rsp), %rdx
leaq 0x389f1(%rip), %rsi     # 0xe8446
leaq 0xa8(%rsp), %rdi
callq 0xfae0
jmp 0xafa64
leaq 0x70(%rsp), %rdi
movl $0x7c1, %esi            # imm = 0x7C1
callq 0x11600
jmp 0xafa75
leaq 0xc8(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
leaq 0x70(%rsp), %rdx
callq 0x11510
jmp 0xafa91
leaq 0x33739(%rip), %rdx     # 0xe31d1
leaq 0xe8(%rsp), %rdi
leaq 0xc8(%rsp), %rsi
callq 0x114c0
jmp 0xafaaf
leaq 0x2f(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0xdd50
movq 0x8(%rsp), %rdx
leaq 0x38dd0(%rip), %rsi     # 0xe889a
leaq 0x30(%rsp), %rdi
callq 0xfae0
jmp 0xafad6
leaq 0x33ec7(%rip), %rdx     # 0xe39a4
leaq 0x50(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x114c0
jmp 0xafaee
leaq 0x108(%rsp), %rdi
leaq 0xe8(%rsp), %rsi
leaq 0x50(%rsp), %rdx
callq 0x11510
jmp 0xafb0a
leaq 0x38da5(%rip), %rdx     # 0xe88b6
leaq 0x128(%rsp), %rdi
leaq 0x108(%rsp), %rsi
callq 0x114c0
jmp 0xafb28
leaq 0x128(%rsp), %rdi
callq 0x173d0
jmp 0xafb37
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
jmp 0xafc73
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
jmp 0xafc66
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
jmp 0xafc5c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
jmp 0xafc4f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
jmp 0xafc38
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
jmp 0xafc2e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
jmp 0xafc24
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
jmp 0xafc17
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
leaq 0x128(%rsp), %rdi
callq 0xdf08
leaq 0x108(%rsp), %rdi
callq 0xdf08
leaq 0x50(%rsp), %rdi
callq 0xdf08
leaq 0x30(%rsp), %rdi
callq 0xdf08
leaq 0x2f(%rsp), %rdi
callq 0xd7a0
leaq 0xe8(%rsp), %rdi
callq 0xdf08
leaq 0xc8(%rsp), %rdi
callq 0xdf08
leaq 0x70(%rsp), %rdi
callq 0xdf08
leaq 0xa8(%rsp), %rdi
callq 0xdf08
leaq 0xa7(%rsp), %rdi
callq 0xd7a0
jmp 0xafcd9
movl $0x1, %edi
callq 0xd8e0
leaq 0x148(%rsp), %rdi
callq 0xd80d0
movq 0x18(%rsp), %rdi
movq %rax, %rsi
addq $0x28, %rsi
addq $0x28, %rdi
callq 0xd090
jmp 0xafcb0
leaq 0x148(%rsp), %rdi
callq 0xd80e0
addq $0x158, %rsp            # imm = 0x158
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
leaq 0x148(%rsp), %rdi
callq 0xd80e0
movq 0x98(%rsp), %rdi
callq 0xdd40
nopw %cs:(%rax,%rax)