// File: /workspace/github_cpp_makefile_star2_O2/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
pushq $0x1
popq %rdi
pushq $0x34
popq %rsi
pushq $0x24
popq %rdx
callq 0x7284
leaq 0x8(%rsp), %rdi
movq %rax, (%rdi)
callq 0x73b8
testl %eax, %eax
jne 0x18443
leaq 0x8(%rsp), %rbx
pushq $0x64
popq %rsi
movq %rbx, %rdi
callq 0x73d3
movq %rbx, %rdi
callq 0x73b8
cmpl $0x64, %eax
jne 0x1845c
leaq 0x8(%rsp), %rbx
pushq $-0x9
popq %rsi
movq %rbx, %rdi
callq 0x73d3
movq %rbx, %rdi
callq 0x73b8
cmpl $-0x9, %eax
jne 0x18479
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
movl $0xffff, %esi           # imm = 0xFFFF
callq 0x73d3
movq %rbx, %rdi
callq 0x73b8
cmpl $0xffff, %eax           # imm = 0xFFFF
jne 0x18498
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
movl $0xffff0001, %esi       # imm = 0xFFFF0001
callq 0x73d3
movq %rbx, %rdi
callq 0x73b8
cmpl $0xffff0001, %eax       # imm = 0xFFFF0001
jne 0x184b7
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
movl $0xffff000b, %esi       # imm = 0xFFFF000B
callq 0x73d3
movq %rbx, %rdi
callq 0x73b8
cmpl $0xffff000b, %eax       # imm = 0xFFFF000B
jne 0x184d6
movq 0x8(%rsp), %rdi
callq 0x737c
cmpl $0x1, %eax
jne 0x184f5
movq 0x8(%rsp), %rdi
callq 0x736b
cmpl $0x34, %eax
jne 0x18514
movq 0x8(%rsp), %rdi
callq 0x7372
cmpl $0x24, %eax
jne 0x18533
addq $0x10, %rsp
popq %rbx
retq
leaq 0x188f4(%rip), %rdi     # 0x30d3e
leaq 0x18672(%rip), %rsi     # 0x30ac3
leaq 0x188fd(%rip), %rcx     # 0x30d55
pushq $0x7a
jmp 0x18473
leaq 0x18909(%rip), %rdi     # 0x30d6c
leaq 0x18659(%rip), %rsi     # 0x30ac3
leaq 0x188e4(%rip), %rcx     # 0x30d55
pushq $0x7d
popq %rdx
callq 0x20c0
leaq 0x18905(%rip), %rdi     # 0x30d85
leaq 0x1863c(%rip), %rsi     # 0x30ac3
leaq 0x188c7(%rip), %rcx     # 0x30d55
movl $0x80, %edx
callq 0x20c0
leaq 0x188fe(%rip), %rdi     # 0x30d9d
leaq 0x1861d(%rip), %rsi     # 0x30ac3
leaq 0x188a8(%rip), %rcx     # 0x30d55
movl $0x83, %edx
callq 0x20c0
leaq 0x188fe(%rip), %rdi     # 0x30dbc
leaq 0x185fe(%rip), %rsi     # 0x30ac3
leaq 0x18889(%rip), %rcx     # 0x30d55
movl $0x86, %edx
callq 0x20c0
leaq 0x188ff(%rip), %rdi     # 0x30ddc
leaq 0x185df(%rip), %rsi     # 0x30ac3
leaq 0x1886a(%rip), %rcx     # 0x30d55
movl $0x89, %edx
callq 0x20c0
leaq 0x17969(%rip), %rdi     # 0x2fe65
leaq 0x185c0(%rip), %rsi     # 0x30ac3
leaq 0x1884b(%rip), %rcx     # 0x30d55
movl $0x8c, %edx
callq 0x20c0
leaq 0x185d0(%rip), %rdi     # 0x30aeb
leaq 0x185a1(%rip), %rsi     # 0x30ac3
leaq 0x1882c(%rip), %rcx     # 0x30d55
movl $0x8d, %edx
callq 0x20c0
leaq 0x185c5(%rip), %rdi     # 0x30aff
leaq 0x18582(%rip), %rsi     # 0x30ac3
leaq 0x1880d(%rip), %rcx     # 0x30d55
movl $0x8e, %edx
callq 0x20c0