// File: jswaff[P]prophet3/test/init__test.cpp
// Function: test_bb_ranks()
void test_bb_ranks() {
    assert(bb_ranks[RANK_8]==
            (bb_squares[A8] | bb_squares[B8] | bb_squares[C8] | bb_squares[D8]
           | bb_squares[E8] | bb_squares[F8] | bb_squares[G8] | bb_squares[H8]));
    assert(bb_ranks[RANK_8]==255);
    assert(bb_ranks[RANK_4]==
            (bb_squares[A4] | bb_squares[B4] | bb_squares[C4] | bb_squares[D4]
           | bb_squares[E4] | bb_squares[F4] | bb_squares[G4] | bb_squares[H4]));
    assert(bb_ranks[RANK_1]==
            (bb_squares[A1] | bb_squares[B1] | bb_squares[C1] | bb_squares[D1]
           | bb_squares[E1] | bb_squares[F1] | bb_squares[G1] | bb_squares[H1]));
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0xe34e5(%rip), %rax     # 0x105630
movq (%rax), %rax
leaq 0xe351b(%rip), %rcx     # 0x105670
movq (%rcx), %rcx
leaq 0xe3511(%rip), %rdx     # 0x105670
orq 0x8(%rdx), %rcx
leaq 0xe3506(%rip), %rdx     # 0x105670
orq 0x10(%rdx), %rcx
leaq 0xe34fb(%rip), %rdx     # 0x105670
orq 0x18(%rdx), %rcx
leaq 0xe34f0(%rip), %rdx     # 0x105670
orq 0x20(%rdx), %rcx
leaq 0xe34e5(%rip), %rdx     # 0x105670
orq 0x28(%rdx), %rcx
leaq 0xe34da(%rip), %rdx     # 0x105670
orq 0x30(%rdx), %rcx
leaq 0xe34cf(%rip), %rdx     # 0x105670
orq 0x38(%rdx), %rcx
cmpq %rcx, %rax
jne 0x221ac
jmp 0x221cb
leaq 0x1ce08(%rip), %rdi     # 0x3efbb
leaq 0x1c9d6(%rip), %rsi     # 0x3eb90
movl $0xa0, %edx
leaq 0x1ce90(%rip), %rcx     # 0x3f056
callq 0x20c0
leaq 0xe345e(%rip), %rax     # 0x105630
cmpq $0xff, (%rax)
jne 0x221dd
jmp 0x221fc
leaq 0x1ce87(%rip), %rdi     # 0x3f06b
leaq 0x1c9a5(%rip), %rsi     # 0x3eb90
movl $0xa1, %edx
leaq 0x1ce5f(%rip), %rcx     # 0x3f056
callq 0x20c0
leaq 0xe342d(%rip), %rax     # 0x105630
movq 0x20(%rax), %rax
leaq 0xe3462(%rip), %rcx     # 0x105670
movq 0x100(%rcx), %rcx
leaq 0xe3454(%rip), %rdx     # 0x105670
orq 0x108(%rdx), %rcx
leaq 0xe3446(%rip), %rdx     # 0x105670
orq 0x110(%rdx), %rcx
leaq 0xe3438(%rip), %rdx     # 0x105670
orq 0x118(%rdx), %rcx
leaq 0xe342a(%rip), %rdx     # 0x105670
orq 0x120(%rdx), %rcx
leaq 0xe341c(%rip), %rdx     # 0x105670
orq 0x128(%rdx), %rcx
leaq 0xe340e(%rip), %rdx     # 0x105670
orq 0x130(%rdx), %rcx
leaq 0xe3400(%rip), %rdx     # 0x105670
orq 0x138(%rdx), %rcx
cmpq %rcx, %rax
jne 0x2227e
jmp 0x2229d
leaq 0x1cdfc(%rip), %rdi     # 0x3f081
leaq 0x1c904(%rip), %rsi     # 0x3eb90
movl $0xa4, %edx
leaq 0x1cdbe(%rip), %rcx     # 0x3f056
callq 0x20c0
leaq 0xe338c(%rip), %rax     # 0x105630
movq 0x38(%rax), %rax
leaq 0xe33c1(%rip), %rcx     # 0x105670
movq 0x1c0(%rcx), %rcx
leaq 0xe33b3(%rip), %rdx     # 0x105670
orq 0x1c8(%rdx), %rcx
leaq 0xe33a5(%rip), %rdx     # 0x105670
orq 0x1d0(%rdx), %rcx
leaq 0xe3397(%rip), %rdx     # 0x105670
orq 0x1d8(%rdx), %rcx
leaq 0xe3389(%rip), %rdx     # 0x105670
orq 0x1e0(%rdx), %rcx
leaq 0xe337b(%rip), %rdx     # 0x105670
orq 0x1e8(%rdx), %rcx
leaq 0xe336d(%rip), %rdx     # 0x105670
orq 0x1f0(%rdx), %rcx
leaq 0xe335f(%rip), %rdx     # 0x105670
orq 0x1f8(%rdx), %rcx
cmpq %rcx, %rax
jne 0x2231f
jmp 0x2233e
leaq 0x1cdf6(%rip), %rdi     # 0x3f11c
leaq 0x1c863(%rip), %rsi     # 0x3eb90
movl $0xa7, %edx
leaq 0x1cd1d(%rip), %rcx     # 0x3f056
callq 0x20c0
popq %rbp
retq