// File: /workspace/github_cpp_makefile_star2_O3/jswaff[P]prophet3/test/move__test.cpp
// Function: test_move_score()
void test_move_score() {
    move mv = to_move(PAWN,E2,E4);
    assert(get_move_score(&mv)==0);

    set_move_score(&mv,100);
    assert(get_move_score(&mv)==100);

    set_move_score(&mv,-9);
    assert(get_move_score(&mv)==-9);

    set_move_score(&mv,CHECKMATE);
    assert(get_move_score(&mv)==CHECKMATE);

    set_move_score(&mv,-CHECKMATE);
    assert(get_move_score(&mv)==-CHECKMATE);

    set_move_score(&mv,-CHECKMATE+10);
    assert(get_move_score(&mv)==-CHECKMATE+10);

    // make sure we haven't corrupted the move itself
    assert(get_piece(mv)==PAWN);
    assert(get_from_sq(mv)==E2);
    assert(get_to_sq(mv)==E4);
}

// Assembly:
pushq %rbx
subq $0x10, %rsp
movl $0x1, %edi
movl $0x34, %esi
movl $0x24, %edx
callq 0x775c
leaq 0x8(%rsp), %rdi
movq %rax, (%rdi)
callq 0x78a1
testl %eax, %eax
jne 0x19ad8
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
movl $0x64, %esi
callq 0x78bc
movq %rbx, %rdi
callq 0x78a1
cmpl $0x64, %eax
jne 0x19af7
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
movl $0xfffffff7, %esi       # imm = 0xFFFFFFF7
callq 0x78bc
movq %rbx, %rdi
callq 0x78a1
cmpl $-0x9, %eax
jne 0x19b16
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
movl $0xffff, %esi           # imm = 0xFFFF
callq 0x78bc
movq %rbx, %rdi
callq 0x78a1
cmpl $0xffff, %eax           # imm = 0xFFFF
jne 0x19b35
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
movl $0xffff0001, %esi       # imm = 0xFFFF0001
callq 0x78bc
movq %rbx, %rdi
callq 0x78a1
cmpl $0xffff0001, %eax       # imm = 0xFFFF0001
jne 0x19b54
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
movl $0xffff000b, %esi       # imm = 0xFFFF000B
callq 0x78bc
movq %rbx, %rdi
callq 0x78a1
cmpl $0xffff000b, %eax       # imm = 0xFFFF000B
jne 0x19b73
movq 0x8(%rsp), %rdi
callq 0x7865
cmpl $0x1, %eax
jne 0x19b92
movq 0x8(%rsp), %rdi
callq 0x7854
cmpl $0x34, %eax
jne 0x19bb1
movq 0x8(%rsp), %rdi
callq 0x785b
cmpl $0x24, %eax
jne 0x19bd0
addq $0x10, %rsp
popq %rbx
retq
leaq 0x1919c(%rip), %rdi     # 0x32c7b
leaq 0x18f1a(%rip), %rsi     # 0x32a00
leaq 0x191a5(%rip), %rcx     # 0x32c92
movl $0x7a, %edx
callq 0x20d0
leaq 0x191ab(%rip), %rdi     # 0x32ca9
leaq 0x18efb(%rip), %rsi     # 0x32a00
leaq 0x19186(%rip), %rcx     # 0x32c92
movl $0x7d, %edx
callq 0x20d0
leaq 0x191a5(%rip), %rdi     # 0x32cc2
leaq 0x18edc(%rip), %rsi     # 0x32a00
leaq 0x19167(%rip), %rcx     # 0x32c92
movl $0x80, %edx
callq 0x20d0
leaq 0x1919e(%rip), %rdi     # 0x32cda
leaq 0x18ebd(%rip), %rsi     # 0x32a00
leaq 0x19148(%rip), %rcx     # 0x32c92
movl $0x83, %edx
callq 0x20d0
leaq 0x1919e(%rip), %rdi     # 0x32cf9
leaq 0x18e9e(%rip), %rsi     # 0x32a00
leaq 0x19129(%rip), %rcx     # 0x32c92
movl $0x86, %edx
callq 0x20d0
leaq 0x1919f(%rip), %rdi     # 0x32d19
leaq 0x18e7f(%rip), %rsi     # 0x32a00
leaq 0x1910a(%rip), %rcx     # 0x32c92
movl $0x89, %edx
callq 0x20d0
leaq 0x1831c(%rip), %rdi     # 0x31eb5
leaq 0x18e60(%rip), %rsi     # 0x32a00
leaq 0x190eb(%rip), %rcx     # 0x32c92
movl $0x8c, %edx
callq 0x20d0
leaq 0x18e70(%rip), %rdi     # 0x32a28
leaq 0x18e41(%rip), %rsi     # 0x32a00
leaq 0x190cc(%rip), %rcx     # 0x32c92
movl $0x8d, %edx
callq 0x20d0
leaq 0x18e65(%rip), %rdi     # 0x32a3c
leaq 0x18e22(%rip), %rsi     # 0x32a00
leaq 0x190ad(%rip), %rcx     # 0x32c92
movl $0x8e, %edx
callq 0x20d0