// File: /workspace/github_c_makefile_star2_O3/lucvoo[P]sparse-dev/flow.c
// Function: vrfy_flow
void vrfy_flow(struct entrypoint *ep)
{
	struct basic_block *bb;
	struct basic_block *entry = ep->entry->bb;

	FOR_EACH_PTR(ep->bbs, bb) {
		if (bb == entry)
			entry = NULL;
		vrfy_bb_flow(bb);
	} END_FOR_EACH_PTR(bb);
	assert(!entry);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq 0x18(%rdi), %rcx
movq 0x28(%rdi), %rax
movq 0x8(%rax), %rdx
testq %rcx, %rcx
je 0x3bd23
movq %rcx, %r12
movq %rcx, 0x10(%rsp)
movzwl (%r12), %eax
testb %al, %al
jle 0x3bd10
xorl %r13d, %r13d
movq 0x18(%r12,%r13,8), %rbx
movzwl %ax, %eax
cmpl $0x100, %eax            # imm = 0x100
jb 0x3bb90
testq %rbx, %rbx
je 0x3bcfc
cmpq %rdx, %rbx
movl $0x0, %eax
cmoveq %rax, %rdx
movq %rdx, 0x8(%rsp)
movq 0x28(%rbx), %rdi
callq 0x225ce
testq %rax, %rax
je 0x3bc29
movq %rax, %r14
movl (%rax), %eax
andl $0x7f, %eax
addl $-0x3, %eax
cmpl $0x4, %eax
ja 0x3bc4f
leaq 0xf3da(%rip), %rcx      # 0x4afa4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x38(%r14), %rbp
testq %rbp, %rbp
je 0x3bc4f
movq %rbp, %r14
movzwl (%r14), %eax
testb %al, %al
jle 0x3bc1e
xorl %r15d, %r15d
movq 0x18(%r14,%r15,8), %rcx
movzwl %ax, %edx
cmpl $0x100, %edx            # imm = 0x100
jb 0x3bbff
testq %rcx, %rcx
je 0x3bc0f
movq (%rcx), %rdi
movq 0x20(%rbx), %rsi
callq 0x3c915
movzwl (%r14), %eax
incq %r15
movzwl %ax, %ecx
movsbq %cl, %rcx
cmpq %rcx, %r15
jl 0x3bbea
movq 0x10(%r14), %r14
cmpq %rbp, %r14
jne 0x3bbdf
jmp 0x3bc4f
cmpq $0x0, 0x20(%rbx)
je 0x3bca3
jmp 0x3bd37
movq 0x40(%r14), %rdi
movq 0x20(%rbx), %rsi
callq 0x3c915
movq 0x38(%r14), %rdi
movq 0x20(%rbx), %rsi
callq 0x3c915
movq 0x20(%rbx), %r14
testq %r14, %r14
je 0x3bca3
movq %r14, %rbp
movzwl (%rbp), %eax
testb %al, %al
jle 0x3bc9a
xorl %r15d, %r15d
movq 0x18(%rbp,%r15,8), %rcx
movzwl %ax, %edx
cmpl $0x100, %edx            # imm = 0x100
jb 0x3bc7b
testq %rcx, %rcx
je 0x3bc8b
movq 0x18(%rcx), %rsi
movq %rbx, %rdi
callq 0x3c915
movzwl (%rbp), %eax
incq %r15
movzwl %ax, %ecx
movsbq %cl, %rcx
cmpq %rcx, %r15
jl 0x3bc66
movq 0x10(%rbp), %rbp
cmpq %r14, %rbp
jne 0x3bc5b
movq 0x18(%rbx), %r14
testq %r14, %r14
je 0x3bcf7
movq %r14, %rbp
movzwl (%rbp), %eax
testb %al, %al
jle 0x3bcee
xorl %r15d, %r15d
movq 0x18(%rbp,%r15,8), %rcx
movzwl %ax, %edx
cmpl $0x100, %edx            # imm = 0x100
jb 0x3bccf
testq %rcx, %rcx
je 0x3bcdf
movq 0x20(%rcx), %rsi
movq %rbx, %rdi
callq 0x3c915
movzwl (%rbp), %eax
incq %r15
movzwl %ax, %ecx
movsbq %cl, %rcx
cmpq %rcx, %r15
jl 0x3bcba
movq 0x10(%rbp), %rbp
cmpq %r14, %rbp
jne 0x3bcaf
movq 0x8(%rsp), %rdx
incq %r13
movl (%r12), %eax
movsbq %al, %rcx
cmpq %rcx, %r13
jl 0x3bb78
movq 0x10(%r12), %r12
movq 0x10(%rsp), %rcx
cmpq %rcx, %r12
jne 0x3bb68
testq %rdx, %rdx
jne 0x3bd56
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0xf391(%rip), %rdi      # 0x4b0cf
leaq 0xf28c(%rip), %rsi      # 0x4afd1
leaq 0xf391(%rip), %rcx      # 0x4b0dd
movl $0x2ec, %edx            # imm = 0x2EC
callq 0xe120
leaq 0xf347(%rip), %rdi      # 0x4b0a4
leaq 0xf26d(%rip), %rsi      # 0x4afd1
leaq 0xf340(%rip), %rcx      # 0x4b0ab
movl $0x316, %edx            # imm = 0x316
callq 0xe120