// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/match/firstcodes.c
// Function: gt_firstcodes_handle_tmp
static void gt_firstcodes_handle_tmp(GtFirstcodesinfo *fci,
                                     GtSuftabparts *suftabparts)
{
  gt_assert(fci->mappedleftborder != NULL);
  gt_Sfxmappedrange_usetmp(fci->mappedleftborder,
                           gt_firstcodes_outfilenameleftborder(&fci->tab),
                           (void **)
                             gt_firstcodes_leftborder_address(&fci->tab),
                           gt_firstcodes_leftborder_entries(&fci->tab),
                           true);
  if (gt_suftabparts_numofparts(suftabparts) > 1U)
  {
    gt_assert(fci->allfirstcodes != NULL);
    gt_assert(fci->mappedallfirstcodes != NULL);
    gt_Sfxmappedrange_storetmp_ulong(fci->mappedallfirstcodes,
                                     &fci->allfirstcodes,
                                     false);
    GT_FCI_SUBTRACTSPLITSPACE(fci->fcsl,"allfirstcodes");
    gt_assert(fci->allfirstcodes == NULL);
    gt_marksubstring_bits_null(fci->buf.markprefix,false);
    gt_assert(fci->mappedmarkprefix != NULL);
    gt_Sfxmappedrange_storetmp_bitsequence(fci->mappedmarkprefix,
                                           gt_marksubstring_bits_address(
                                                fci->buf.markprefix),
                                           false);
    GT_FCI_SUBTRACTSPLITSPACE(fci->fcsl,"markprefix");
    gt_marksubstring_bits_null(fci->buf.markprefix,true);
  } else
  {
    gt_Sfxmappedrange_delete(fci->mappedallfirstcodes);
    fci->mappedallfirstcodes = NULL;
    gt_Sfxmappedrange_delete(fci->mappedmarkprefix);
    fci->mappedmarkprefix = NULL;
  }
}

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x30(%rsp)
movq %rsi, 0x28(%rsp)
movq 0x30(%rsp), %rax
cmpq $0x0, 0x80(%rax)
jne 0x248525
movq 0x3f3aac(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x2cdb15(%rip), %rsi    # 0x516013
leaq 0x3302f4(%rip), %rdx    # 0x5787f9
leaq 0x33030b(%rip), %rcx    # 0x578817
leaq 0x32fce9(%rip), %r8     # 0x5781fc
movl $0x3f4, %r9d            # imm = 0x3F4
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x248527
movq 0x30(%rsp), %rax
movq 0x80(%rax), %rax
movq %rax, 0x10(%rsp)
movq 0x30(%rsp), %rdi
addq $0x110, %rdi            # imm = 0x110
callq 0x4c1260
movq %rax, 0x18(%rsp)
movq 0x30(%rsp), %rdi
addq $0x110, %rdi            # imm = 0x110
callq 0x4c1230
movq %rax, 0x20(%rsp)
movq 0x30(%rsp), %rdi
addq $0x110, %rdi            # imm = 0x110
callq 0x4c0cf0
movq 0x10(%rsp), %rdi
movq 0x18(%rsp), %rsi
movq 0x20(%rsp), %rdx
movq %rax, %rcx
movl $0x1, %r8d
callq 0x2cc190
movq 0x28(%rsp), %rdi
callq 0x2ce430
cmpl $0x1, %eax
jbe 0x2487b0
jmp 0x2485a7
movq 0x30(%rsp), %rax
cmpq $0x0, 0x98(%rax)
jne 0x2485ee
movq 0x3f39e3(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x2cda4c(%rip), %rsi    # 0x516013
leaq 0x32ff51(%rip), %rdx    # 0x57851f
leaq 0x330242(%rip), %rcx    # 0x578817
leaq 0x32fc20(%rip), %r8     # 0x5781fc
movl $0x3fd, %r9d            # imm = 0x3FD
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x2485f0
jmp 0x2485f2
movq 0x30(%rsp), %rax
cmpq $0x0, 0x88(%rax)
jne 0x248639
movq 0x3f3998(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x2cda01(%rip), %rsi    # 0x516013
leaq 0x330217(%rip), %rdx    # 0x578830
leaq 0x3301f7(%rip), %rcx    # 0x578817
leaq 0x32fbd5(%rip), %r8     # 0x5781fc
movl $0x3fe, %r9d            # imm = 0x3FE
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x24863b
movq 0x30(%rsp), %rax
movq 0x88(%rax), %rdi
movq 0x30(%rsp), %rsi
addq $0x98, %rsi
xorl %edx, %edx
callq 0x2cbd60
movq 0x30(%rsp), %rax
movq 0xa8(%rax), %rdi
movl $0x402, %esi            # imm = 0x402
leaq 0x32fb8a(%rip), %rdx    # 0x5781fc
xorl %r9d, %r9d
leaq 0x2d322a(%rip), %r8     # 0x51b8a6
xorl %eax, %eax
movl %r9d, %ecx
movq $0x0, (%rsp)
callq 0x4bea60
movq 0x30(%rsp), %rax
cmpq $0x0, 0x98(%rax)
je 0x2486d5
movq 0x3f38fc(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x2cd965(%rip), %rsi    # 0x516013
leaq 0x33019c(%rip), %rdx    # 0x578851
leaq 0x33015b(%rip), %rcx    # 0x578817
leaq 0x32fb39(%rip), %r8     # 0x5781fc
movl $0x403, %r9d            # imm = 0x403
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x2486d7
movq 0x30(%rsp), %rax
movq 0xd0(%rax), %rdi
xorl %esi, %esi
callq 0x261210
movq 0x30(%rsp), %rax
cmpq $0x0, 0x90(%rax)
jne 0x248731
movq 0x3f38a0(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x2cd909(%rip), %rsi    # 0x516013
leaq 0x33015b(%rip), %rdx    # 0x57886c
leaq 0x3300ff(%rip), %rcx    # 0x578817
leaq 0x32fadd(%rip), %r8     # 0x5781fc
movl $0x405, %r9d            # imm = 0x405
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x248733
movq 0x30(%rsp), %rax
movq 0x90(%rax), %rax
movq %rax, 0x8(%rsp)
movq 0x30(%rsp), %rax
movq 0xd0(%rax), %rdi
callq 0x2612d0
movq 0x8(%rsp), %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x2cc100
movq 0x30(%rsp), %rax
movq 0xa8(%rax), %rdi
movl $0x40a, %esi            # imm = 0x40A
leaq 0x32fa80(%rip), %rdx    # 0x5781fc
xorl %r9d, %r9d
leaq 0x32fd83(%rip), %r8     # 0x578509
xorl %eax, %eax
movl %r9d, %ecx
movq $0x0, (%rsp)
callq 0x4bea60
movq 0x30(%rsp), %rax
movq 0xd0(%rax), %rdi
movl $0x1, %esi
callq 0x261210
jmp 0x2487f2
movq 0x30(%rsp), %rax
movq 0x88(%rax), %rdi
callq 0x2cca80
movq 0x30(%rsp), %rax
movq $0x0, 0x88(%rax)
movq 0x30(%rsp), %rax
movq 0x90(%rax), %rdi
callq 0x2cca80
movq 0x30(%rsp), %rax
movq $0x0, 0x90(%rax)
addq $0x38, %rsp
retq
nopw (%rax,%rax)