// File: /workspace/github_c_makefile_star2_O1/mishun[P]plantri/plantri.c
// Function: got_one
static void
got_one(int nbtot, int nbop, int connec)

/* This is called when a complete output graph is formed.  The main 
   purpose is to write the graph and to collect some stats. */
{
    int doflip,wt;
#ifdef STATS
    int numroot;
#ifdef STATS2
    int num2,i;
#endif
#endif

    if (xswitch && connec != xconnec) return;

    doflip = oswitch && (nbop == nbtot || nbop == 0);
    wt = doflip ? 2 : 1;

    if (Vswitch)
    {
	if (nbtot == 1 || (oswitch && nbop == 1))
	{
	    ADDBIG(nout_V,wt);
	    return;
	}
    }

#ifdef FILTER
    if (!FILTER(nbtot,nbop,doflip)) return;
#endif

    ADDBIG(nout[connec],1);
    if (oswitch) ADDBIG(nout_op[connec],wt);

    if (pswitch)
    {
	if (oswitch) ADDBIG(nout_e_op[ne/2],wt);
	ADDBIG(nout_e[ne/2],1);
    }

    if (polygonsize == 0)
    {
	if (oswitch) ADDBIG(nout_p_op[outside_face_size],wt);
	ADDBIG(nout_p[outside_face_size],1);
    }

#ifdef STATS
    if (polygonsize < 0)
    {
	numroot = wt * numedgeorbits(nbtot,nbop);
	ADDBIG(numrooted,numroot);
	if (pswitch) ADDBIG(numrooted_e[ne/2],numroot);
        if (degree[nv-1] < 6) ADDBIG(nummindeg[degree[nv-1]],wt);
    }
    else
    {
        numroot = wt * numorbitsonface(nbtot,nbop,code_edge);
        ADDBIG(numrooted,numroot);
        ADDBIG(numbigface[degree[missing_vertex]],numroot);
    }
    if (needgroup && nbtot == 1) ADDBIG(ntriv,wt);
#ifdef STATS2
    num2 = 0;
    for (i = 0; i < nv; ++i) if (degree[i] == 2) ++num2;
    ADDBIG(numtwos[num2],wt);
#endif
#endif

    if (!uswitch)
    {
	gotone_nbop = nbop;
	gotone_nbtot = nbtot;
        if (dswitch) (*write_dual_graph)(outfile,doflip);
        else         (*write_graph)(outfile,doflip);
    }
}

// Assembly:
cmpb $0x1, 0x1e9c1(%rip)     # 0x260b8
jne 0x7705
cmpl %edx, 0x1eb75(%rip)     # 0x26274
jne 0x7925
movb 0x1ead5(%rip), %cl      # 0x261e0
cmpb $0x1, %cl
jne 0x7720
cmpl %edi, %esi
sete %r8b
testl %esi, %esi
sete %al
orb %r8b, %al
jmp 0x7722
xorl %eax, %eax
movzbl %al, %eax
leal 0x1(%rax), %r8d
cmpb $0x1, 0x1eb00(%rip)     # 0x26230
jne 0x7781
cmpl $0x1, %edi
setne %r9b
cmpl $0x1, %esi
setne %r10b
movl %ecx, %r11d
xorb $0x1, %r11b
orb %r10b, %r11b
testb %r11b, %r9b
jne 0x7781
movl %r8d, %eax
addq 0x1ea3f(%rip), %rax     # 0x26198
movq %rax, 0x1ea38(%rip)     # 0x26198
cmpq $0x3b9aca00, %rax       # imm = 0x3B9ACA00
jl 0x7925
incq 0x1ea1d(%rip)           # 0x26190
addq $-0x3b9aca00, %rax      # imm = 0xC4653600
movq %rax, 0x1ea18(%rip)     # 0x26198
retq
movslq %edx, %rdx
shlq $0x4, %rdx
leaq 0x1e941(%rip), %r9      # 0x260d0
movq 0x8(%rdx,%r9), %r10
leaq 0x1(%r10), %r11
movq %r11, 0x8(%rdx,%r9)
cmpq $0x3b9ac9ff, %r10       # imm = 0x3B9AC9FF
jl 0x77b7
addq %rdx, %r9
incq (%r9)
addq $-0x3b9ac9ff, %r10      # imm = 0xC4653601
movq %r10, 0x8(%r9)
testb %cl, %cl
je 0x77e9
movl %r8d, %r9d
leaq 0x1e96b(%rip), %r10     # 0x26130
addq 0x8(%rdx,%r10), %r9
movq %r9, 0x8(%rdx,%r10)
cmpq $0x3b9aca00, %r9        # imm = 0x3B9ACA00
jl 0x77e9
addq %rdx, %r10
incq (%r10)
addq $-0x3b9aca00, %r9       # imm = 0xC4653600
movq %r9, 0x8(%r10)
cmpb $0x1, 0x1e9b8(%rip)     # 0x261a8
jne 0x7894
testb %cl, %cl
je 0x7847
movl %r8d, %edx
movl 0x23ce10(%rip), %r9d    # 0x244614
movl %r9d, %r10d
shrl $0x1f, %r10d
addl %r9d, %r10d
sarl %r10d
movslq %r10d, %r9
shlq $0x4, %r9
leaq 0x1f611(%rip), %r10     # 0x26e30
addq 0x8(%r9,%r10), %rdx
movq %rdx, 0x8(%r9,%r10)
cmpq $0x3b9aca00, %rdx       # imm = 0x3B9ACA00
jl 0x7847
addq %r10, %r9
addq $0x8, %r9
incq -0x8(%r9)
addq $-0x3b9aca00, %rdx      # imm = 0xC4653600
movq %rdx, (%r9)
movl 0x23cdc7(%rip), %edx    # 0x244614
movl %edx, %r9d
shrl $0x1f, %r9d
addl %edx, %r9d
sarl %r9d
movslq %r9d, %rdx
shlq $0x4, %rdx
leaq 0x1ea18(%rip), %r10     # 0x26280
movq 0x8(%rdx,%r10), %r9
leaq 0x1(%r9), %r11
movq %r11, 0x8(%rdx,%r10)
cmpq $0x3b9ac9ff, %r9        # imm = 0x3B9AC9FF
jl 0x7894
addq %r10, %rdx
addq $0x8, %rdx
incq -0x8(%rdx)
addq $-0x3b9ac9ff, %r9       # imm = 0xC4653601
movq %r9, (%rdx)
cmpl $0x0, 0x1e915(%rip)     # 0x261b0
jne 0x791c
testb %cl, %cl
je 0x78de
movl %r8d, %ecx
movslq 0x28c5a5(%rip), %rdx    # 0x293e50
shlq $0x4, %rdx
leaq 0x28c18a(%rip), %r8     # 0x293a40
addq 0x8(%rdx,%r8), %rcx
movq %rcx, 0x8(%rdx,%r8)
cmpq $0x3b9aca00, %rcx       # imm = 0x3B9ACA00
jl 0x78de
addq %r8, %rdx
addq $0x8, %rdx
incq -0x8(%rdx)
addq $-0x3b9aca00, %rcx      # imm = 0xC4653600
movq %rcx, (%rdx)
movslq 0x28c56b(%rip), %rcx    # 0x293e50
shlq $0x4, %rcx
leaq 0x28c570(%rip), %r8     # 0x293e60
movq 0x8(%rcx,%r8), %rdx
leaq 0x1(%rdx), %r9
movq %r9, 0x8(%rcx,%r8)
cmpq $0x3b9ac9ff, %rdx       # imm = 0x3B9AC9FF
jl 0x791c
addq %r8, %rcx
addq $0x8, %rcx
incq -0x8(%rcx)
addq $-0x3b9ac9ff, %rdx      # imm = 0xC4653601
movq %rdx, (%rcx)
cmpb $0x0, 0x1e901(%rip)     # 0x26224
je 0x7926
retq
movl %esi, 0x23ccdc(%rip)    # 0x244608
movl %edi, 0x23ccda(%rip)    # 0x24460c
movq 0x23ccb7(%rip), %rdi    # 0x2445f0
cmpb $0x1, 0x1e90c(%rip)     # 0x2624c
jne 0x794b
movq 0x23ccaf(%rip), %rcx    # 0x2445f8
jmp 0x7952
movq 0x23ccae(%rip), %rcx    # 0x244600
movl %eax, %esi
jmpq *%rcx