// File: /workspace/github_cpp_makefile_star2_O2/jswaff[P]prophet3/test/evalp__test.cpp
// Function: test_botvinnik_capablanca38()
void test_botvinnik_capablanca38() {
    position pos;
    set_pos(&pos,"8/p3q1kp/1p2Pnp1/3pQ3/2pP4/1nP3N1/1B4PP/6K1 w - -");

    assert(is_passed(&pos,A7,false));
    assert(!is_passed(&pos,H7,false));
    assert(!is_passed(&pos,B6,false));
    assert(!is_passed(&pos,G6,false));
    assert(!is_passed(&pos,D5,false));
    assert(!is_passed(&pos,C4,false));
    assert(!is_passed(&pos,D4,true));
    assert(!is_passed(&pos,C3,true));
    assert(!is_passed(&pos,G2,true));
    assert(!is_passed(&pos,H2,true));
}

// Assembly:
pushq %rbx
subq $0x1d0, %rsp            # imm = 0x1D0
leaq 0x1c385(%rip), %rsi     # 0x2f210
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
callq 0xa1b8
pushq $0x8
popq %rsi
movq %rbx, %rdi
xorl %edx, %edx
callq 0x580e
testb %al, %al
je 0x12f89
leaq 0x8(%rsp), %rdi
pushq $0xf
popq %rsi
xorl %edx, %edx
callq 0x580e
testb %al, %al
jne 0x12fa5
leaq 0x8(%rsp), %rdi
pushq $0x11
popq %rsi
xorl %edx, %edx
callq 0x580e
testb %al, %al
jne 0x12fc1
leaq 0x8(%rsp), %rdi
pushq $0x16
popq %rsi
xorl %edx, %edx
callq 0x580e
testb %al, %al
jne 0x12fdd
leaq 0x8(%rsp), %rdi
pushq $0x1b
popq %rsi
xorl %edx, %edx
callq 0x580e
testb %al, %al
jne 0x12ff9
leaq 0x8(%rsp), %rdi
pushq $0x22
popq %rsi
xorl %edx, %edx
callq 0x580e
testb %al, %al
jne 0x13012
leaq 0x8(%rsp), %rdi
pushq $0x23
popq %rsi
pushq $0x1
popq %rdx
callq 0x580e
testb %al, %al
jne 0x1302b
leaq 0x8(%rsp), %rdi
pushq $0x2a
popq %rsi
pushq $0x1
popq %rdx
callq 0x580e
testb %al, %al
jne 0x13044
leaq 0x8(%rsp), %rdi
pushq $0x36
popq %rsi
pushq $0x1
popq %rdx
callq 0x580e
testb %al, %al
jne 0x1305d
leaq 0x8(%rsp), %rdi
pushq $0x37
popq %rsi
pushq $0x1
popq %rdx
callq 0x580e
testb %al, %al
jne 0x13076
addq $0x1d0, %rsp            # imm = 0x1D0
popq %rbx
retq
leaq 0x1c403(%rip), %rdi     # 0x2f393
leaq 0x1bda3(%rip), %rsi     # 0x2ed3a
leaq 0x1c2a4(%rip), %rcx     # 0x2f242
pushq $0x67
jmp 0x1308d
leaq 0x1bfae(%rip), %rdi     # 0x2ef5a
leaq 0x1bd87(%rip), %rsi     # 0x2ed3a
leaq 0x1c288(%rip), %rcx     # 0x2f242
pushq $0x68
jmp 0x1308d
leaq 0x1c29d(%rip), %rdi     # 0x2f265
leaq 0x1bd6b(%rip), %rsi     # 0x2ed3a
leaq 0x1c26c(%rip), %rcx     # 0x2f242
pushq $0x69
jmp 0x1308d
leaq 0x1c156(%rip), %rdi     # 0x2f13a
leaq 0x1bd4f(%rip), %rsi     # 0x2ed3a
leaq 0x1c250(%rip), %rcx     # 0x2f242
pushq $0x6a
jmp 0x1308d
leaq 0x1c27f(%rip), %rdi     # 0x2f27f
leaq 0x1bd33(%rip), %rsi     # 0x2ed3a
leaq 0x1c234(%rip), %rcx     # 0x2f242
pushq $0x6b
jmp 0x1308d
leaq 0x1c280(%rip), %rdi     # 0x2f299
leaq 0x1bd1a(%rip), %rsi     # 0x2ed3a
leaq 0x1c21b(%rip), %rcx     # 0x2f242
pushq $0x6c
jmp 0x1308d
leaq 0x1c281(%rip), %rdi     # 0x2f2b3
leaq 0x1bd01(%rip), %rsi     # 0x2ed3a
leaq 0x1c202(%rip), %rcx     # 0x2f242
pushq $0x6d
jmp 0x1308d
leaq 0x1c281(%rip), %rdi     # 0x2f2cc
leaq 0x1bce8(%rip), %rsi     # 0x2ed3a
leaq 0x1c1e9(%rip), %rcx     # 0x2f242
pushq $0x6e
jmp 0x1308d
leaq 0x1c281(%rip), %rdi     # 0x2f2e5
leaq 0x1bccf(%rip), %rsi     # 0x2ed3a
leaq 0x1c1d0(%rip), %rcx     # 0x2f242
pushq $0x6f
jmp 0x1308d
leaq 0x1c17a(%rip), %rdi     # 0x2f1f7
leaq 0x1bcb6(%rip), %rsi     # 0x2ed3a
leaq 0x1c1b7(%rip), %rcx     # 0x2f242
pushq $0x70
popq %rdx
callq 0x20c0