// File: /workspace/github_c_makefile_star2_O3/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, 0x1ea95(%rip)     # 0x260b8
jne 0x7631
cmpl %edx, 0x1ec49(%rip)     # 0x26274
jne 0x788a
movb 0x1eba8(%rip), %r8b     # 0x261e0
cmpb $0x1, %r8b
jne 0x7653
cmpl %edi, %esi
sete %al
testl %esi, %esi
sete %cl
orb %al, %cl
movzbl %cl, %eax
leaq 0x1(%rax), %rcx
jmp 0x765a
movl $0x1, %ecx
xorl %eax, %eax
cmpb $0x1, 0x1ebcf(%rip)     # 0x26230
jne 0x76b1
cmpl $0x1, %edi
setne %r9b
cmpl $0x1, %esi
setne %r10b
movl %r8d, %r11d
xorb $0x1, %r11b
orb %r10b, %r11b
testb %r11b, %r9b
jne 0x76b1
addq 0x1eb11(%rip), %rcx     # 0x26198
movq %rcx, 0x1eb0a(%rip)     # 0x26198
cmpq $0x3b9aca00, %rcx       # imm = 0x3B9ACA00
jl 0x788a
incq 0x1eaee(%rip)           # 0x26190
addq $-0x3b9aca00, %rcx      # imm = 0xC4653600
movq %rcx, 0x1eae8(%rip)     # 0x26198
retq
movslq %edx, %rdx
shlq $0x4, %rdx
leaq 0x1ea11(%rip), %r9      # 0x260d0
movq 0x8(%rdx,%r9), %r10
leaq 0x1(%r10), %r11
movq %r11, 0x8(%rdx,%r9)
cmpq $0x3b9ac9ff, %r10       # imm = 0x3B9AC9FF
jl 0x76e7
addq %rdx, %r9
incq (%r9)
addq $-0x3b9ac9ff, %r10      # imm = 0xC4653601
movq %r10, 0x8(%r9)
testb %r8b, %r8b
je 0x7779
leaq 0x1ea39(%rip), %r9      # 0x26130
movq 0x8(%rdx,%r9), %r10
addq %rcx, %r10
movq %r10, 0x8(%rdx,%r9)
cmpq $0x3b9aca00, %r10       # imm = 0x3B9ACA00
jl 0x771e
addq %rdx, %r9
incq (%r9)
addq $-0x3b9aca00, %r10      # imm = 0xC4653600
movq %r10, 0x8(%r9)
cmpb $0x0, 0x1ea83(%rip)     # 0x261a8
je 0x77ed
movl 0x23cee3(%rip), %edx    # 0x244614
movl %edx, %r9d
shrl $0x1f, %r9d
addl %edx, %r9d
sarl %r9d
movslq %r9d, %rdx
shlq $0x4, %rdx
leaq 0x1f6e4(%rip), %r10     # 0x26e30
movq 0x8(%rdx,%r10), %r9
addq %rcx, %r9
movq %r9, 0x8(%rdx,%r10)
cmpq $0x3b9aca00, %r9        # imm = 0x3B9ACA00
jl 0x7786
addq %r10, %rdx
addq $0x8, %rdx
incq -0x8(%rdx)
addq $-0x3b9aca00, %r9       # imm = 0xC4653600
movq %r9, (%rdx)
jmp 0x7786
cmpb $0x0, 0x1ea28(%rip)     # 0x261a8
je 0x7838
movl 0x23ce88(%rip), %edx    # 0x244614
movl %edx, %r9d
shrl $0x1f, %r9d
addl %edx, %r9d
sarl %r9d
movslq %r9d, %rdx
shlq $0x4, %rdx
leaq 0x1ead9(%rip), %r10     # 0x26280
movq 0x8(%rdx,%r10), %r9
leaq 0x1(%r9), %r11
movq %r11, 0x8(%rdx,%r10)
cmpq $0x3b9ac9ff, %r9        # imm = 0x3B9AC9FF
jl 0x77d3
addq %r10, %rdx
addq $0x8, %rdx
incq -0x8(%rdx)
addq $-0x3b9ac9ff, %r9       # imm = 0xC4653601
movq %r9, (%rdx)
cmpl $0x0, 0x1e9d6(%rip)     # 0x261b0
jne 0x7881
movl 0x28c66a(%rip), %edx    # 0x293e50
testb %r8b, %r8b
jne 0x7800
jmp 0x7847
cmpl $0x0, 0x1e9bc(%rip)     # 0x261b0
jne 0x7881
movl 0x28c650(%rip), %edx    # 0x293e50
movslq %edx, %r8
shlq $0x4, %r8
leaq 0x28c232(%rip), %r9     # 0x293a40
addq 0x8(%r8,%r9), %rcx
movq %rcx, 0x8(%r8,%r9)
cmpq $0x3b9aca00, %rcx       # imm = 0x3B9ACA00
jl 0x7847
addq %r9, %r8
addq $0x8, %r8
incq -0x8(%r8)
addq $-0x3b9aca00, %rcx      # imm = 0xC4653600
movq %rcx, (%r8)
jmp 0x7847
cmpl $0x0, 0x1e971(%rip)     # 0x261b0
jne 0x7881
movl 0x28c609(%rip), %edx    # 0x293e50
movslq %edx, %rcx
shlq $0x4, %rcx
leaq 0x28c60b(%rip), %r8     # 0x293e60
movq 0x8(%rcx,%r8), %rdx
leaq 0x1(%rdx), %r9
movq %r9, 0x8(%rcx,%r8)
cmpq $0x3b9ac9ff, %rdx       # imm = 0x3B9AC9FF
jl 0x7881
addq %r8, %rcx
addq $0x8, %rcx
incq -0x8(%rcx)
addq $-0x3b9ac9ff, %rdx      # imm = 0xC4653601
movq %rdx, (%rcx)
cmpb $0x0, 0x1e99c(%rip)     # 0x26224
je 0x788b
retq
movl %esi, 0x23cd77(%rip)    # 0x244608
movl %edi, 0x23cd75(%rip)    # 0x24460c
movq 0x23cd52(%rip), %rdi    # 0x2445f0
cmpb $0x1, 0x1e9a7(%rip)     # 0x2624c
jne 0x78b0
movq 0x23cd4a(%rip), %rcx    # 0x2445f8
jmp 0x78b7
movq 0x23cd49(%rip), %rcx    # 0x244600
movl %eax, %esi
jmpq *%rcx