// File: /workspace/github_c_makefile_star2_O0/mishun[P]plantri/plantri.c
// Function: startbipscan
static void
startbipscan(int nbtot, int nbop, int conn)

/* This routine begins the scan for general connected bipartite planar graphs
 * formed by removing edges from quadrangulations.  The current graph is
 * a quadrangulation, and the group is known (parameters nbtot,nbop).
 * conn is the connectivity (2 or 3, must be correct).
 */

{
    EDGE *feasible[MAXE/2];
    EDGE *e,*ex;
    int i,j,nfeas;

    for (i = 0; i < nv; ++i)
    {
	for (j = 0; j < nv; ++j) am2[i][j] = 0;
	am2[i][i] = 1;
    }

    nfeas = 0;
    for (i = 0; i < nv; ++i)
    {
        e = ex = firstedge[i];
        do
        {
            if (e == e->min && degree[e->start] > minpolydeg
                            && degree[e->end] > minpolydeg)
                feasible[nfeas++] = e;
            e->left_facesize = 4;
            am2[e->start][e->end] = 1;
            e = e->next;
        } while (e != ex);
    }

    prune_bip_edgelist(feasible,nfeas,feasible,&nfeas);

    scanbip(nbtot,nbop,feasible,nfeas,4,0,0,conn);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x610, %rsp            # imm = 0x610
movl %edi, -0x4(%rbp)
movl %esi, -0x8(%rbp)
movl %edx, -0xc(%rbp)
movl $0x0, -0x5f4(%rbp)
movl -0x5f4(%rbp), %eax
cmpl 0x24c1e6(%rip), %eax    # 0x25a620
jge 0xe4b9
movl $0x0, -0x5f8(%rbp)
movl -0x5f8(%rbp), %eax
cmpl 0x24c1ce(%rip), %eax    # 0x25a620
jge 0xe485
movslq -0x5f4(%rbp), %rcx
leaq 0x2928ee(%rip), %rax    # 0x2a0d50
shlq $0x6, %rcx
addq %rcx, %rax
movslq -0x5f8(%rbp), %rcx
movb $0x0, (%rax,%rcx)
movl -0x5f8(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x5f8(%rbp)
jmp 0xe446
movslq -0x5f4(%rbp), %rcx
leaq 0x2928bd(%rip), %rax    # 0x2a0d50
shlq $0x6, %rcx
addq %rcx, %rax
movslq -0x5f4(%rbp), %rcx
movb $0x1, (%rax,%rcx)
movl -0x5f4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x5f4(%rbp)
jmp 0xe42e
movl $0x0, -0x5fc(%rbp)
movl $0x0, -0x5f4(%rbp)
movl -0x5f4(%rbp), %eax
cmpl 0x24c147(%rip), %eax    # 0x25a620
jge 0xe5df
movslq -0x5f4(%rbp), %rcx
leaq 0x2f513(%rip), %rax     # 0x3da00
movq (%rax,%rcx,8), %rax
movq %rax, -0x5f0(%rbp)
movq %rax, -0x5e8(%rbp)
movq -0x5e8(%rbp), %rax
movq -0x5e8(%rbp), %rcx
cmpq 0x28(%rcx), %rax
jne 0xe56e
movq -0x5e8(%rbp), %rax
movslq (%rax), %rcx
leaq 0x2f6dc(%rip), %rax     # 0x3dc00
movl (%rax,%rcx,4), %eax
cmpl 0x2dc73(%rip), %eax     # 0x3c1a0
jle 0xe56e
movq -0x5e8(%rbp), %rax
movslq 0x4(%rax), %rcx
leaq 0x2f6bf(%rip), %rax     # 0x3dc00
movl (%rax,%rcx,4), %eax
cmpl 0x2dc56(%rip), %eax     # 0x3c1a0
jle 0xe56e
movq -0x5e8(%rbp), %rcx
movl -0x5fc(%rbp), %eax
movl %eax, %edx
addl $0x1, %edx
movl %edx, -0x5fc(%rbp)
cltq
movq %rcx, -0x5e0(%rbp,%rax,8)
movq -0x5e8(%rbp), %rax
movl $0x4, 0x38(%rax)
movq -0x5e8(%rbp), %rax
movslq (%rax), %rcx
leaq 0x2927c3(%rip), %rax    # 0x2a0d50
shlq $0x6, %rcx
addq %rcx, %rax
movq -0x5e8(%rbp), %rcx
movslq 0x4(%rcx), %rcx
movb $0x1, (%rax,%rcx)
movq -0x5e8(%rbp), %rax
movq 0x18(%rax), %rax
movq %rax, -0x5e8(%rbp)
movq -0x5e8(%rbp), %rax
cmpq -0x5f0(%rbp), %rax
jne 0xe4ff
jmp 0xe5cb
movl -0x5f4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x5f4(%rbp)
jmp 0xe4cd
leaq -0x5e0(%rbp), %rdi
movl -0x5fc(%rbp), %esi
leaq -0x5e0(%rbp), %rdx
leaq -0x5fc(%rbp), %rcx
callq 0x102e0
movl -0x4(%rbp), %edi
movl -0x8(%rbp), %esi
leaq -0x5e0(%rbp), %rdx
movl -0x5fc(%rbp), %ecx
movl -0xc(%rbp), %eax
movl $0x4, %r8d
xorl %r9d, %r9d
movl $0x0, (%rsp)
movl %eax, 0x8(%rsp)
callq 0x103b0
addq $0x610, %rsp            # imm = 0x610
popq %rbp
retq
nopw (%rax,%rax)