3274 lines
62 KiB
ArmAsm
3274 lines
62 KiB
ArmAsm
#ifdef __linux__
|
|
#ifdef __i386__
|
|
.file "board_validate.cc"
|
|
.section .text._ZNK12OthelloBoard4rowsEv,"axG",@progbits,_ZNK12OthelloBoard4rowsEv,comdat
|
|
.align 2
|
|
.weak _ZNK12OthelloBoard4rowsEv
|
|
.type _ZNK12OthelloBoard4rowsEv, @function
|
|
_ZNK12OthelloBoard4rowsEv:
|
|
.LFB7:
|
|
.cfi_startproc
|
|
pushl %ebp
|
|
.cfi_def_cfa_offset 8
|
|
.cfi_offset 5, -8
|
|
movl %esp, %ebp
|
|
.cfi_def_cfa_register 5
|
|
movl 8(%ebp), %eax
|
|
movl 4(%eax), %eax
|
|
popl %ebp
|
|
.cfi_restore 5
|
|
.cfi_def_cfa 4, 4
|
|
ret
|
|
.cfi_endproc
|
|
.LFE7:
|
|
.size _ZNK12OthelloBoard4rowsEv, .-_ZNK12OthelloBoard4rowsEv
|
|
.section .text._ZNK12OthelloBoard7columnsEv,"axG",@progbits,_ZNK12OthelloBoard7columnsEv,comdat
|
|
.align 2
|
|
.weak _ZNK12OthelloBoard7columnsEv
|
|
.type _ZNK12OthelloBoard7columnsEv, @function
|
|
_ZNK12OthelloBoard7columnsEv:
|
|
.LFB8:
|
|
.cfi_startproc
|
|
pushl %ebp
|
|
.cfi_def_cfa_offset 8
|
|
.cfi_offset 5, -8
|
|
movl %esp, %ebp
|
|
.cfi_def_cfa_register 5
|
|
movl 8(%ebp), %eax
|
|
movl 8(%eax), %eax
|
|
popl %ebp
|
|
.cfi_restore 5
|
|
.cfi_def_cfa 4, 4
|
|
ret
|
|
.cfi_endproc
|
|
.LFE8:
|
|
.size _ZNK12OthelloBoard7columnsEv, .-_ZNK12OthelloBoard7columnsEv
|
|
.section .text._ZNK12OthelloBoard3getEjj,"axG",@progbits,_ZNK12OthelloBoard3getEjj,comdat
|
|
.align 2
|
|
.weak _ZNK12OthelloBoard3getEjj
|
|
.type _ZNK12OthelloBoard3getEjj, @function
|
|
_ZNK12OthelloBoard3getEjj:
|
|
.LFB20:
|
|
.cfi_startproc
|
|
pushl %ebp
|
|
.cfi_def_cfa_offset 8
|
|
.cfi_offset 5, -8
|
|
movl %esp, %ebp
|
|
.cfi_def_cfa_register 5
|
|
pushl %esi
|
|
pushl %ebx
|
|
.cfi_offset 6, -12
|
|
.cfi_offset 3, -16
|
|
cmpl $0, 12(%ebp)
|
|
je .L6
|
|
cmpl $0, 16(%ebp)
|
|
je .L6
|
|
subl $12, %esp
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard4rowsEv
|
|
addl $16, %esp
|
|
cmpl 12(%ebp), %eax
|
|
jb .L6
|
|
subl $12, %esp
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard7columnsEv
|
|
addl $16, %esp
|
|
cmpl 16(%ebp), %eax
|
|
jae .L7
|
|
.L6:
|
|
movl $1, %eax
|
|
jmp .L8
|
|
.L7:
|
|
movl $0, %eax
|
|
.L8:
|
|
testb %al, %al
|
|
je .L9
|
|
movl $3, %eax
|
|
jmp .L10
|
|
.L9:
|
|
movl 8(%ebp), %eax
|
|
movl 16(%eax), %ebx
|
|
movl 12(%ebp), %eax
|
|
leal -1(%eax), %esi
|
|
subl $12, %esp
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard7columnsEv
|
|
addl $16, %esp
|
|
movl %esi, %edx
|
|
imull %eax, %edx
|
|
movl 16(%ebp), %eax
|
|
addl %edx, %eax
|
|
addl $1073741823, %eax
|
|
sall $2, %eax
|
|
addl %ebx, %eax
|
|
movl (%eax), %eax
|
|
.L10:
|
|
leal -8(%ebp), %esp
|
|
popl %ebx
|
|
.cfi_restore 3
|
|
popl %esi
|
|
.cfi_restore 6
|
|
popl %ebp
|
|
.cfi_restore 5
|
|
.cfi_def_cfa 4, 4
|
|
ret
|
|
.cfi_endproc
|
|
.LFE20:
|
|
.size _ZNK12OthelloBoard3getEjj, .-_ZNK12OthelloBoard3getEjj
|
|
.section .text._ZNK12OthelloBoard11type_to_strE9FieldType,"axG",@progbits,_ZNK12OthelloBoard11type_to_strE9FieldType,comdat
|
|
.align 2
|
|
.weak _ZNK12OthelloBoard11type_to_strE9FieldType
|
|
.type _ZNK12OthelloBoard11type_to_strE9FieldType, @function
|
|
_ZNK12OthelloBoard11type_to_strE9FieldType:
|
|
.LFB26:
|
|
.cfi_startproc
|
|
pushl %ebp
|
|
.cfi_def_cfa_offset 8
|
|
.cfi_offset 5, -8
|
|
movl %esp, %ebp
|
|
.cfi_def_cfa_register 5
|
|
movl 12(%ebp), %eax
|
|
cmpl $1, %eax
|
|
je .L13
|
|
cmpl $1, %eax
|
|
jg .L14
|
|
testl %eax, %eax
|
|
je .L15
|
|
jmp .L12
|
|
.L14:
|
|
cmpl $2, %eax
|
|
je .L16
|
|
cmpl $3, %eax
|
|
je .L17
|
|
jmp .L12
|
|
.L15:
|
|
movl $46, %eax
|
|
jmp .L18
|
|
.L13:
|
|
movl $79, %eax
|
|
jmp .L18
|
|
.L16:
|
|
movl $88, %eax
|
|
jmp .L18
|
|
.L17:
|
|
movl $47, %eax
|
|
jmp .L18
|
|
.L12:
|
|
.L18:
|
|
popl %ebp
|
|
.cfi_restore 5
|
|
.cfi_def_cfa 4, 4
|
|
ret
|
|
.cfi_endproc
|
|
.LFE26:
|
|
.size _ZNK12OthelloBoard11type_to_strE9FieldType, .-_ZNK12OthelloBoard11type_to_strE9FieldType
|
|
.section .rodata
|
|
.LC0:
|
|
.string "board_validate.cc"
|
|
.LC1:
|
|
.string "row_idx > 0"
|
|
.LC2:
|
|
.string "row_idx <= rows()"
|
|
.LC3:
|
|
.string "col_idx > 0"
|
|
.LC4:
|
|
.string "col_idx <= columns()"
|
|
.LC5:
|
|
.string "inc_row == 0"
|
|
.LC6:
|
|
.string "inc_col == 0"
|
|
.text
|
|
.align 2
|
|
.globl _ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction
|
|
.type _ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction, @function
|
|
_ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction:
|
|
.LFB32:
|
|
.cfi_startproc
|
|
pushl %ebp
|
|
.cfi_def_cfa_offset 8
|
|
.cfi_offset 5, -8
|
|
movl %esp, %ebp
|
|
.cfi_def_cfa_register 5
|
|
pushl %ebx
|
|
subl $4, %esp
|
|
.cfi_offset 3, -12
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
testl %eax, %eax
|
|
jne .L20
|
|
pushl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__
|
|
pushl $7
|
|
pushl $.LC0
|
|
pushl $.LC1
|
|
call __assert_fail
|
|
.L20:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %ebx
|
|
subl $12, %esp
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard4rowsEv
|
|
addl $16, %esp
|
|
cmpl %eax, %ebx
|
|
jbe .L21
|
|
pushl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__
|
|
pushl $8
|
|
pushl $.LC0
|
|
pushl $.LC2
|
|
call __assert_fail
|
|
.L21:
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
testl %eax, %eax
|
|
jne .L22
|
|
pushl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__
|
|
pushl $9
|
|
pushl $.LC0
|
|
pushl $.LC3
|
|
call __assert_fail
|
|
.L22:
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %ebx
|
|
subl $12, %esp
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard7columnsEv
|
|
addl $16, %esp
|
|
cmpl %eax, %ebx
|
|
jbe .L23
|
|
pushl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__
|
|
pushl $10
|
|
pushl $.LC0
|
|
pushl $.LC4
|
|
call __assert_fail
|
|
.L23:
|
|
movl 20(%ebp), %eax
|
|
movl (%eax), %eax
|
|
testl %eax, %eax
|
|
je .L24
|
|
pushl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__
|
|
pushl $11
|
|
pushl $.LC0
|
|
pushl $.LC5
|
|
call __assert_fail
|
|
.L24:
|
|
movl 24(%ebp), %eax
|
|
movl (%eax), %eax
|
|
testl %eax, %eax
|
|
je .L25
|
|
pushl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__
|
|
pushl $12
|
|
pushl $.LC0
|
|
pushl $.LC6
|
|
call __assert_fail
|
|
.L25:
|
|
movl 28(%ebp), %eax
|
|
cmpl $7, %eax
|
|
ja .L19
|
|
movl .L28(,%eax,4), %eax
|
|
jmp *%eax
|
|
.section .rodata
|
|
.align 4
|
|
.align 4
|
|
.L28:
|
|
.long .L27
|
|
.long .L29
|
|
.long .L30
|
|
.long .L31
|
|
.long .L32
|
|
.long .L33
|
|
.long .L34
|
|
.long .L35
|
|
.text
|
|
.L30:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
jmp .L19
|
|
.L31:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $1, (%eax)
|
|
jmp .L19
|
|
.L27:
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
jmp .L19
|
|
.L29:
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $1, (%eax)
|
|
jmp .L19
|
|
.L32:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
jmp .L19
|
|
.L33:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $1, (%eax)
|
|
jmp .L19
|
|
.L34:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $1, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
jmp .L19
|
|
.L35:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $1, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $1, (%eax)
|
|
nop
|
|
.L19:
|
|
movl -4(%ebp), %ebx
|
|
leave
|
|
.cfi_restore 5
|
|
.cfi_restore 3
|
|
.cfi_def_cfa 4, 4
|
|
ret
|
|
.cfi_endproc
|
|
.LFE32:
|
|
.size _ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction, .-_ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction
|
|
.align 2
|
|
.globl _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
.type _ZNK12OthelloBoard18position_reachableEjj9direction, @function
|
|
_ZNK12OthelloBoard18position_reachableEjj9direction:
|
|
.LFB33:
|
|
.cfi_startproc
|
|
pushl %ebp
|
|
.cfi_def_cfa_offset 8
|
|
.cfi_offset 5, -8
|
|
movl %esp, %ebp
|
|
.cfi_def_cfa_register 5
|
|
subl $40, %esp
|
|
movl 12(%ebp), %eax
|
|
movl %eax, -20(%ebp)
|
|
movl 16(%ebp), %eax
|
|
movl %eax, -24(%ebp)
|
|
movl $0, -28(%ebp)
|
|
movl $0, -32(%ebp)
|
|
movl $1, -12(%ebp)
|
|
subl $8, %esp
|
|
pushl 20(%ebp)
|
|
leal -32(%ebp), %eax
|
|
pushl %eax
|
|
leal -28(%ebp), %eax
|
|
pushl %eax
|
|
leal -24(%ebp), %eax
|
|
pushl %eax
|
|
leal -20(%ebp), %eax
|
|
pushl %eax
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction
|
|
addl $32, %esp
|
|
movl -24(%ebp), %edx
|
|
movl -20(%ebp), %eax
|
|
subl $4, %esp
|
|
pushl %edx
|
|
pushl %eax
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard3getEjj
|
|
addl $16, %esp
|
|
movl %eax, -16(%ebp)
|
|
jmp .L37
|
|
.L39:
|
|
movl -24(%ebp), %eax
|
|
movl -32(%ebp), %edx
|
|
addl %edx, %eax
|
|
movl %eax, -24(%ebp)
|
|
movl -20(%ebp), %eax
|
|
movl -28(%ebp), %edx
|
|
addl %edx, %eax
|
|
movl %eax, -20(%ebp)
|
|
movl -24(%ebp), %edx
|
|
movl -20(%ebp), %eax
|
|
subl $4, %esp
|
|
pushl %edx
|
|
pushl %eax
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard3getEjj
|
|
addl $16, %esp
|
|
movl %eax, -16(%ebp)
|
|
addl $1, -12(%ebp)
|
|
.L37:
|
|
cmpl $0, -16(%ebp)
|
|
je .L38
|
|
movl -16(%ebp), %edx
|
|
movl 8(%ebp), %eax
|
|
movl 20(%eax), %eax
|
|
cmpl %eax, %edx
|
|
je .L38
|
|
cmpl $3, -16(%ebp)
|
|
jne .L39
|
|
.L38:
|
|
cmpl $1, -12(%ebp)
|
|
jbe .L40
|
|
movl -16(%ebp), %edx
|
|
movl 8(%ebp), %eax
|
|
movl 20(%eax), %eax
|
|
cmpl %eax, %edx
|
|
jne .L40
|
|
movl $1, %eax
|
|
jmp .L42
|
|
.L40:
|
|
movl $0, %eax
|
|
.L42:
|
|
leave
|
|
.cfi_restore 5
|
|
.cfi_def_cfa 4, 4
|
|
ret
|
|
.cfi_endproc
|
|
.LFE33:
|
|
.size _ZNK12OthelloBoard18position_reachableEjj9direction, .-_ZNK12OthelloBoard18position_reachableEjj9direction
|
|
.section .rodata
|
|
.align 4
|
|
.LC7:
|
|
.string "Coordinates (r=%d, c=%d) out of bounds.\n"
|
|
.align 4
|
|
.LC8:
|
|
.string "Field @ (r=%d, c=%d) is occupied by %c\n"
|
|
.align 4
|
|
.LC9:
|
|
.string "Position (r=%d, c=%d) not reachable by a stone "
|
|
.LC10:
|
|
.string "of type %c.\n"
|
|
.text
|
|
.align 2
|
|
.globl _ZNK12OthelloBoard8validateEjjb
|
|
.type _ZNK12OthelloBoard8validateEjjb, @function
|
|
_ZNK12OthelloBoard8validateEjjb:
|
|
.LFB34:
|
|
.cfi_startproc
|
|
pushl %ebp
|
|
.cfi_def_cfa_offset 8
|
|
.cfi_offset 5, -8
|
|
movl %esp, %ebp
|
|
.cfi_def_cfa_register 5
|
|
subl $24, %esp
|
|
movl 20(%ebp), %eax
|
|
movb %al, -12(%ebp)
|
|
cmpl $0, 12(%ebp)
|
|
je .L44
|
|
subl $12, %esp
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard4rowsEv
|
|
addl $16, %esp
|
|
cmpl 12(%ebp), %eax
|
|
jb .L44
|
|
cmpl $0, 16(%ebp)
|
|
je .L44
|
|
subl $12, %esp
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard7columnsEv
|
|
addl $16, %esp
|
|
cmpl 16(%ebp), %eax
|
|
jae .L45
|
|
.L44:
|
|
movl $1, %eax
|
|
jmp .L46
|
|
.L45:
|
|
movl $0, %eax
|
|
.L46:
|
|
testb %al, %al
|
|
je .L47
|
|
movzbl -12(%ebp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je .L48
|
|
subl $4, %esp
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl $.LC7
|
|
call printf
|
|
addl $16, %esp
|
|
.L48:
|
|
movl $0, %eax
|
|
jmp .L49
|
|
.L47:
|
|
subl $4, %esp
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard3getEjj
|
|
addl $16, %esp
|
|
testl %eax, %eax
|
|
setne %al
|
|
testb %al, %al
|
|
je .L50
|
|
movzbl -12(%ebp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je .L51
|
|
subl $4, %esp
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard3getEjj
|
|
addl $16, %esp
|
|
subl $8, %esp
|
|
pushl %eax
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard11type_to_strE9FieldType
|
|
addl $16, %esp
|
|
movsbl %al, %eax
|
|
pushl %eax
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl $.LC8
|
|
call printf
|
|
addl $16, %esp
|
|
.L51:
|
|
movl $0, %eax
|
|
jmp .L49
|
|
.L50:
|
|
pushl $0
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
addl $16, %esp
|
|
testb %al, %al
|
|
jne .L52
|
|
pushl $1
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
addl $16, %esp
|
|
testb %al, %al
|
|
jne .L52
|
|
pushl $2
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
addl $16, %esp
|
|
testb %al, %al
|
|
jne .L52
|
|
pushl $3
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
addl $16, %esp
|
|
testb %al, %al
|
|
jne .L52
|
|
pushl $4
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
addl $16, %esp
|
|
testb %al, %al
|
|
jne .L52
|
|
pushl $5
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
addl $16, %esp
|
|
testb %al, %al
|
|
jne .L52
|
|
pushl $6
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
addl $16, %esp
|
|
testb %al, %al
|
|
jne .L52
|
|
pushl $7
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
addl $16, %esp
|
|
testb %al, %al
|
|
je .L53
|
|
.L52:
|
|
movl $1, %eax
|
|
jmp .L54
|
|
.L53:
|
|
movl $0, %eax
|
|
.L54:
|
|
testb %al, %al
|
|
je .L55
|
|
movl $1, %eax
|
|
jmp .L49
|
|
.L55:
|
|
movzbl -12(%ebp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je .L56
|
|
subl $4, %esp
|
|
pushl 16(%ebp)
|
|
pushl 12(%ebp)
|
|
pushl $.LC9
|
|
call printf
|
|
addl $16, %esp
|
|
movl 8(%ebp), %eax
|
|
movl 20(%eax), %eax
|
|
subl $8, %esp
|
|
pushl %eax
|
|
pushl 8(%ebp)
|
|
call _ZNK12OthelloBoard11type_to_strE9FieldType
|
|
addl $16, %esp
|
|
movsbl %al, %eax
|
|
subl $8, %esp
|
|
pushl %eax
|
|
pushl $.LC10
|
|
call printf
|
|
addl $16, %esp
|
|
.L56:
|
|
movl $0, %eax
|
|
.L49:
|
|
leave
|
|
.cfi_restore 5
|
|
.cfi_def_cfa 4, 4
|
|
ret
|
|
.cfi_endproc
|
|
.LFE34:
|
|
.size _ZNK12OthelloBoard8validateEjjb, .-_ZNK12OthelloBoard8validateEjjb
|
|
.section .rodata
|
|
.align 64
|
|
.type _ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__, @object
|
|
.size _ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__, 95
|
|
_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__:
|
|
.string "void OthelloBoard::setup_directions(unsigned int&, unsigned int&, int&, int&, direction) const"
|
|
.ident "GCC: (Debian 4.9.1-11) 4.9.1"
|
|
.section .note.GNU-stack,"",@progbits
|
|
#endif // x86/32
|
|
#ifdef __x86_64__
|
|
.file "board_validate.cc"
|
|
.section .text._ZNK12OthelloBoard4rowsEv,"axG",@progbits,_ZNK12OthelloBoard4rowsEv,comdat
|
|
.align 2
|
|
.weak _ZNK12OthelloBoard4rowsEv
|
|
.type _ZNK12OthelloBoard4rowsEv, @function
|
|
_ZNK12OthelloBoard4rowsEv:
|
|
.LFB8:
|
|
.cfi_startproc
|
|
pushq %rbp
|
|
.cfi_def_cfa_offset 16
|
|
.cfi_offset 6, -16
|
|
movq %rsp, %rbp
|
|
.cfi_def_cfa_register 6
|
|
movq %rdi, -8(%rbp)
|
|
movq -8(%rbp), %rax
|
|
movl 8(%rax), %eax
|
|
popq %rbp
|
|
.cfi_def_cfa 7, 8
|
|
ret
|
|
.cfi_endproc
|
|
.LFE8:
|
|
.size _ZNK12OthelloBoard4rowsEv, .-_ZNK12OthelloBoard4rowsEv
|
|
.section .text._ZNK12OthelloBoard7columnsEv,"axG",@progbits,_ZNK12OthelloBoard7columnsEv,comdat
|
|
.align 2
|
|
.weak _ZNK12OthelloBoard7columnsEv
|
|
.type _ZNK12OthelloBoard7columnsEv, @function
|
|
_ZNK12OthelloBoard7columnsEv:
|
|
.LFB9:
|
|
.cfi_startproc
|
|
pushq %rbp
|
|
.cfi_def_cfa_offset 16
|
|
.cfi_offset 6, -16
|
|
movq %rsp, %rbp
|
|
.cfi_def_cfa_register 6
|
|
movq %rdi, -8(%rbp)
|
|
movq -8(%rbp), %rax
|
|
movl 12(%rax), %eax
|
|
popq %rbp
|
|
.cfi_def_cfa 7, 8
|
|
ret
|
|
.cfi_endproc
|
|
.LFE9:
|
|
.size _ZNK12OthelloBoard7columnsEv, .-_ZNK12OthelloBoard7columnsEv
|
|
.section .text._ZNK12OthelloBoard3getEjj,"axG",@progbits,_ZNK12OthelloBoard3getEjj,comdat
|
|
.align 2
|
|
.weak _ZNK12OthelloBoard3getEjj
|
|
.type _ZNK12OthelloBoard3getEjj, @function
|
|
_ZNK12OthelloBoard3getEjj:
|
|
.LFB21:
|
|
.cfi_startproc
|
|
pushq %rbp
|
|
.cfi_def_cfa_offset 16
|
|
.cfi_offset 6, -16
|
|
movq %rsp, %rbp
|
|
.cfi_def_cfa_register 6
|
|
pushq %r12
|
|
pushq %rbx
|
|
subq $16, %rsp
|
|
.cfi_offset 12, -24
|
|
.cfi_offset 3, -32
|
|
movq %rdi, -24(%rbp)
|
|
movl %esi, -28(%rbp)
|
|
movl %edx, -32(%rbp)
|
|
cmpl $0, -28(%rbp)
|
|
je .L6
|
|
cmpl $0, -32(%rbp)
|
|
je .L6
|
|
movq -24(%rbp), %rax
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard4rowsEv
|
|
cmpl -28(%rbp), %eax
|
|
jb .L6
|
|
movq -24(%rbp), %rax
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard7columnsEv
|
|
cmpl -32(%rbp), %eax
|
|
jae .L7
|
|
.L6:
|
|
movl $1, %eax
|
|
jmp .L8
|
|
.L7:
|
|
movl $0, %eax
|
|
.L8:
|
|
testb %al, %al
|
|
je .L9
|
|
movl $3, %eax
|
|
jmp .L10
|
|
.L9:
|
|
movq -24(%rbp), %rax
|
|
movq 24(%rax), %rbx
|
|
movl -28(%rbp), %eax
|
|
leal -1(%rax), %r12d
|
|
movq -24(%rbp), %rax
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard7columnsEv
|
|
movl %r12d, %edx
|
|
imull %eax, %edx
|
|
movl -32(%rbp), %eax
|
|
addl %edx, %eax
|
|
subl $1, %eax
|
|
movl %eax, %eax
|
|
salq $2, %rax
|
|
addq %rbx, %rax
|
|
movl (%rax), %eax
|
|
.L10:
|
|
addq $16, %rsp
|
|
popq %rbx
|
|
popq %r12
|
|
popq %rbp
|
|
.cfi_def_cfa 7, 8
|
|
ret
|
|
.cfi_endproc
|
|
.LFE21:
|
|
.size _ZNK12OthelloBoard3getEjj, .-_ZNK12OthelloBoard3getEjj
|
|
.section .text._ZNK12OthelloBoard11type_to_strE9FieldType,"axG",@progbits,_ZNK12OthelloBoard11type_to_strE9FieldType,comdat
|
|
.align 2
|
|
.weak _ZNK12OthelloBoard11type_to_strE9FieldType
|
|
.type _ZNK12OthelloBoard11type_to_strE9FieldType, @function
|
|
_ZNK12OthelloBoard11type_to_strE9FieldType:
|
|
.LFB27:
|
|
.cfi_startproc
|
|
pushq %rbp
|
|
.cfi_def_cfa_offset 16
|
|
.cfi_offset 6, -16
|
|
movq %rsp, %rbp
|
|
.cfi_def_cfa_register 6
|
|
movq %rdi, -8(%rbp)
|
|
movl %esi, -12(%rbp)
|
|
movl -12(%rbp), %eax
|
|
cmpl $1, %eax
|
|
je .L13
|
|
cmpl $1, %eax
|
|
jg .L14
|
|
testl %eax, %eax
|
|
je .L15
|
|
jmp .L12
|
|
.L14:
|
|
cmpl $2, %eax
|
|
je .L16
|
|
cmpl $3, %eax
|
|
je .L17
|
|
jmp .L12
|
|
.L15:
|
|
movl $46, %eax
|
|
jmp .L18
|
|
.L13:
|
|
movl $79, %eax
|
|
jmp .L18
|
|
.L16:
|
|
movl $88, %eax
|
|
jmp .L18
|
|
.L17:
|
|
movl $47, %eax
|
|
jmp .L18
|
|
.L12:
|
|
.L18:
|
|
popq %rbp
|
|
.cfi_def_cfa 7, 8
|
|
ret
|
|
.cfi_endproc
|
|
.LFE27:
|
|
.size _ZNK12OthelloBoard11type_to_strE9FieldType, .-_ZNK12OthelloBoard11type_to_strE9FieldType
|
|
.section .rodata
|
|
.LC0:
|
|
.string "board_validate.cc"
|
|
.LC1:
|
|
.string "row_idx > 0"
|
|
.LC2:
|
|
.string "row_idx <= rows()"
|
|
.LC3:
|
|
.string "col_idx > 0"
|
|
.LC4:
|
|
.string "col_idx <= columns()"
|
|
.LC5:
|
|
.string "inc_row == 0"
|
|
.LC6:
|
|
.string "inc_col == 0"
|
|
.text
|
|
.align 2
|
|
.globl _ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction
|
|
.type _ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction, @function
|
|
_ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction:
|
|
.LFB33:
|
|
.cfi_startproc
|
|
pushq %rbp
|
|
.cfi_def_cfa_offset 16
|
|
.cfi_offset 6, -16
|
|
movq %rsp, %rbp
|
|
.cfi_def_cfa_register 6
|
|
pushq %rbx
|
|
subq $56, %rsp
|
|
.cfi_offset 3, -24
|
|
movq %rdi, -24(%rbp)
|
|
movq %rsi, -32(%rbp)
|
|
movq %rdx, -40(%rbp)
|
|
movq %rcx, -48(%rbp)
|
|
movq %r8, -56(%rbp)
|
|
movl %r9d, -60(%rbp)
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
testl %eax, %eax
|
|
jne .L20
|
|
movl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__, %ecx
|
|
movl $7, %edx
|
|
movl $.LC0, %esi
|
|
movl $.LC1, %edi
|
|
call __assert_fail
|
|
.L20:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %ebx
|
|
movq -24(%rbp), %rax
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard4rowsEv
|
|
cmpl %eax, %ebx
|
|
jbe .L21
|
|
movl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__, %ecx
|
|
movl $8, %edx
|
|
movl $.LC0, %esi
|
|
movl $.LC2, %edi
|
|
call __assert_fail
|
|
.L21:
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
testl %eax, %eax
|
|
jne .L22
|
|
movl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__, %ecx
|
|
movl $9, %edx
|
|
movl $.LC0, %esi
|
|
movl $.LC3, %edi
|
|
call __assert_fail
|
|
.L22:
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %ebx
|
|
movq -24(%rbp), %rax
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard7columnsEv
|
|
cmpl %eax, %ebx
|
|
jbe .L23
|
|
movl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__, %ecx
|
|
movl $10, %edx
|
|
movl $.LC0, %esi
|
|
movl $.LC4, %edi
|
|
call __assert_fail
|
|
.L23:
|
|
movq -48(%rbp), %rax
|
|
movl (%rax), %eax
|
|
testl %eax, %eax
|
|
je .L24
|
|
movl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__, %ecx
|
|
movl $11, %edx
|
|
movl $.LC0, %esi
|
|
movl $.LC5, %edi
|
|
call __assert_fail
|
|
.L24:
|
|
movq -56(%rbp), %rax
|
|
movl (%rax), %eax
|
|
testl %eax, %eax
|
|
je .L25
|
|
movl $_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__, %ecx
|
|
movl $12, %edx
|
|
movl $.LC0, %esi
|
|
movl $.LC6, %edi
|
|
call __assert_fail
|
|
.L25:
|
|
movl -60(%rbp), %eax
|
|
cmpl $7, %eax
|
|
ja .L19
|
|
movl %eax, %eax
|
|
movq .L28(,%rax,8), %rax
|
|
jmp *%rax
|
|
.section .rodata
|
|
.align 8
|
|
.align 4
|
|
.L28:
|
|
.quad .L27
|
|
.quad .L29
|
|
.quad .L30
|
|
.quad .L31
|
|
.quad .L32
|
|
.quad .L33
|
|
.quad .L34
|
|
.quad .L35
|
|
.text
|
|
.L30:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
jmp .L19
|
|
.L31:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $1, (%rax)
|
|
jmp .L19
|
|
.L27:
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
jmp .L19
|
|
.L29:
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $1, (%rax)
|
|
jmp .L19
|
|
.L32:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
jmp .L19
|
|
.L33:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $1, (%rax)
|
|
jmp .L19
|
|
.L34:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $1, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
jmp .L19
|
|
.L35:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $1, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $1, (%rax)
|
|
nop
|
|
.L19:
|
|
addq $56, %rsp
|
|
popq %rbx
|
|
popq %rbp
|
|
.cfi_def_cfa 7, 8
|
|
ret
|
|
.cfi_endproc
|
|
.LFE33:
|
|
.size _ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction, .-_ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction
|
|
.align 2
|
|
.globl _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
.type _ZNK12OthelloBoard18position_reachableEjj9direction, @function
|
|
_ZNK12OthelloBoard18position_reachableEjj9direction:
|
|
.LFB34:
|
|
.cfi_startproc
|
|
pushq %rbp
|
|
.cfi_def_cfa_offset 16
|
|
.cfi_offset 6, -16
|
|
movq %rsp, %rbp
|
|
.cfi_def_cfa_register 6
|
|
subq $64, %rsp
|
|
movq %rdi, -40(%rbp)
|
|
movl %esi, -44(%rbp)
|
|
movl %edx, -48(%rbp)
|
|
movl %ecx, -52(%rbp)
|
|
movl -44(%rbp), %eax
|
|
movl %eax, -12(%rbp)
|
|
movl -48(%rbp), %eax
|
|
movl %eax, -16(%rbp)
|
|
movl $0, -20(%rbp)
|
|
movl $0, -24(%rbp)
|
|
movl $1, -4(%rbp)
|
|
movl -52(%rbp), %r8d
|
|
leaq -24(%rbp), %rdi
|
|
leaq -20(%rbp), %rcx
|
|
leaq -16(%rbp), %rdx
|
|
leaq -12(%rbp), %rsi
|
|
movq -40(%rbp), %rax
|
|
movl %r8d, %r9d
|
|
movq %rdi, %r8
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %ecx
|
|
movq -40(%rbp), %rax
|
|
movl %ecx, %esi
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard3getEjj
|
|
movl %eax, -8(%rbp)
|
|
jmp .L37
|
|
.L39:
|
|
movl -16(%rbp), %eax
|
|
movl -24(%rbp), %edx
|
|
addl %edx, %eax
|
|
movl %eax, -16(%rbp)
|
|
movl -12(%rbp), %eax
|
|
movl -20(%rbp), %edx
|
|
addl %edx, %eax
|
|
movl %eax, -12(%rbp)
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %ecx
|
|
movq -40(%rbp), %rax
|
|
movl %ecx, %esi
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard3getEjj
|
|
movl %eax, -8(%rbp)
|
|
addl $1, -4(%rbp)
|
|
.L37:
|
|
cmpl $0, -8(%rbp)
|
|
je .L38
|
|
movl -8(%rbp), %edx
|
|
movq -40(%rbp), %rax
|
|
movl 32(%rax), %eax
|
|
cmpl %eax, %edx
|
|
je .L38
|
|
cmpl $3, -8(%rbp)
|
|
jne .L39
|
|
.L38:
|
|
cmpl $1, -4(%rbp)
|
|
jbe .L40
|
|
movl -8(%rbp), %edx
|
|
movq -40(%rbp), %rax
|
|
movl 32(%rax), %eax
|
|
cmpl %eax, %edx
|
|
jne .L40
|
|
movl $1, %eax
|
|
jmp .L42
|
|
.L40:
|
|
movl $0, %eax
|
|
.L42:
|
|
leave
|
|
.cfi_def_cfa 7, 8
|
|
ret
|
|
.cfi_endproc
|
|
.LFE34:
|
|
.size _ZNK12OthelloBoard18position_reachableEjj9direction, .-_ZNK12OthelloBoard18position_reachableEjj9direction
|
|
.section .rodata
|
|
.align 8
|
|
.LC7:
|
|
.string "Coordinates (r=%d, c=%d) out of bounds.\n"
|
|
.align 8
|
|
.LC8:
|
|
.string "Field @ (r=%d, c=%d) is occupied by %c\n"
|
|
.align 8
|
|
.LC9:
|
|
.string "Position (r=%d, c=%d) not reachable by a stone "
|
|
.LC10:
|
|
.string "of type %c.\n"
|
|
.text
|
|
.align 2
|
|
.globl _ZNK12OthelloBoard8validateEjjb
|
|
.type _ZNK12OthelloBoard8validateEjjb, @function
|
|
_ZNK12OthelloBoard8validateEjjb:
|
|
.LFB35:
|
|
.cfi_startproc
|
|
pushq %rbp
|
|
.cfi_def_cfa_offset 16
|
|
.cfi_offset 6, -16
|
|
movq %rsp, %rbp
|
|
.cfi_def_cfa_register 6
|
|
subq $32, %rsp
|
|
movq %rdi, -8(%rbp)
|
|
movl %esi, -12(%rbp)
|
|
movl %edx, -16(%rbp)
|
|
movl %ecx, %eax
|
|
movb %al, -20(%rbp)
|
|
cmpl $0, -12(%rbp)
|
|
je .L44
|
|
movq -8(%rbp), %rax
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard4rowsEv
|
|
cmpl -12(%rbp), %eax
|
|
jb .L44
|
|
cmpl $0, -16(%rbp)
|
|
je .L44
|
|
movq -8(%rbp), %rax
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard7columnsEv
|
|
cmpl -16(%rbp), %eax
|
|
jae .L45
|
|
.L44:
|
|
movl $1, %eax
|
|
jmp .L46
|
|
.L45:
|
|
movl $0, %eax
|
|
.L46:
|
|
testb %al, %al
|
|
je .L47
|
|
movzbl -20(%rbp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je .L48
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %eax
|
|
movl %eax, %esi
|
|
movl $.LC7, %edi
|
|
movl $0, %eax
|
|
call printf
|
|
.L48:
|
|
movl $0, %eax
|
|
jmp .L49
|
|
.L47:
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %ecx
|
|
movq -8(%rbp), %rax
|
|
movl %ecx, %esi
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard3getEjj
|
|
testl %eax, %eax
|
|
setne %al
|
|
testb %al, %al
|
|
je .L50
|
|
movzbl -20(%rbp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je .L51
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %ecx
|
|
movq -8(%rbp), %rax
|
|
movl %ecx, %esi
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard3getEjj
|
|
movl %eax, %edx
|
|
movq -8(%rbp), %rax
|
|
movl %edx, %esi
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard11type_to_strE9FieldType
|
|
movsbl %al, %ecx
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %eax
|
|
movl %eax, %esi
|
|
movl $.LC8, %edi
|
|
movl $0, %eax
|
|
call printf
|
|
.L51:
|
|
movl $0, %eax
|
|
jmp .L49
|
|
.L50:
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rax
|
|
movl $0, %ecx
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne .L52
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rax
|
|
movl $1, %ecx
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne .L52
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rax
|
|
movl $2, %ecx
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne .L52
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rax
|
|
movl $3, %ecx
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne .L52
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rax
|
|
movl $4, %ecx
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne .L52
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rax
|
|
movl $5, %ecx
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne .L52
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rax
|
|
movl $6, %ecx
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne .L52
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rax
|
|
movl $7, %ecx
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
je .L53
|
|
.L52:
|
|
movl $1, %eax
|
|
jmp .L54
|
|
.L53:
|
|
movl $0, %eax
|
|
.L54:
|
|
testb %al, %al
|
|
je .L55
|
|
movl $1, %eax
|
|
jmp .L49
|
|
.L55:
|
|
movzbl -20(%rbp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je .L56
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %eax
|
|
movl %eax, %esi
|
|
movl $.LC9, %edi
|
|
movl $0, %eax
|
|
call printf
|
|
movq -8(%rbp), %rax
|
|
movl 32(%rax), %edx
|
|
movq -8(%rbp), %rax
|
|
movl %edx, %esi
|
|
movq %rax, %rdi
|
|
call _ZNK12OthelloBoard11type_to_strE9FieldType
|
|
movsbl %al, %eax
|
|
movl %eax, %esi
|
|
movl $.LC10, %edi
|
|
movl $0, %eax
|
|
call printf
|
|
.L56:
|
|
movl $0, %eax
|
|
.L49:
|
|
leave
|
|
.cfi_def_cfa 7, 8
|
|
ret
|
|
.cfi_endproc
|
|
.LFE35:
|
|
.size _ZNK12OthelloBoard8validateEjjb, .-_ZNK12OthelloBoard8validateEjjb
|
|
.section .rodata
|
|
.align 64
|
|
.type _ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__, @object
|
|
.size _ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__, 95
|
|
_ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE19__PRETTY_FUNCTION__:
|
|
.string "void OthelloBoard::setup_directions(unsigned int&, unsigned int&, int&, int&, direction) const"
|
|
.ident "GCC: (Debian 4.9.1-11) 4.9.1"
|
|
.section .note.GNU-stack,"",@progbits
|
|
#endif // x86/64
|
|
#endif // linux
|
|
#ifdef __APPLE__
|
|
#ifdef __i386__
|
|
.section __TEXT,__textcoal_nt,coalesced,pure_instructions
|
|
.align 1
|
|
.globl __ZNK12OthelloBoard4rowsEv
|
|
.weak_definition __ZNK12OthelloBoard4rowsEv
|
|
__ZNK12OthelloBoard4rowsEv:
|
|
LFB15:
|
|
pushl %ebp
|
|
LCFI0:
|
|
movl %esp, %ebp
|
|
LCFI1:
|
|
subl $8, %esp
|
|
LCFI2:
|
|
movl 8(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leave
|
|
ret
|
|
LFE15:
|
|
.align 1
|
|
.globl __ZNK12OthelloBoard7columnsEv
|
|
.weak_definition __ZNK12OthelloBoard7columnsEv
|
|
__ZNK12OthelloBoard7columnsEv:
|
|
LFB16:
|
|
pushl %ebp
|
|
LCFI3:
|
|
movl %esp, %ebp
|
|
LCFI4:
|
|
subl $8, %esp
|
|
LCFI5:
|
|
movl 8(%ebp), %eax
|
|
movl 4(%eax), %eax
|
|
leave
|
|
ret
|
|
LFE16:
|
|
.align 1
|
|
.globl __ZNK12OthelloBoard3getEjj
|
|
.weak_definition __ZNK12OthelloBoard3getEjj
|
|
__ZNK12OthelloBoard3getEjj:
|
|
LFB26:
|
|
pushl %ebp
|
|
LCFI6:
|
|
movl %esp, %ebp
|
|
LCFI7:
|
|
pushl %edi
|
|
LCFI8:
|
|
pushl %esi
|
|
LCFI9:
|
|
subl $32, %esp
|
|
LCFI10:
|
|
cmpl $0, 12(%ebp)
|
|
je L6
|
|
cmpl $0, 16(%ebp)
|
|
je L6
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard4rowsEv
|
|
cmpl 12(%ebp), %eax
|
|
jb L6
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard7columnsEv
|
|
cmpl 16(%ebp), %eax
|
|
jae L10
|
|
L6:
|
|
movb $1, -13(%ebp)
|
|
jmp L11
|
|
L10:
|
|
movb $0, -13(%ebp)
|
|
L11:
|
|
movzbl -13(%ebp), %eax
|
|
testb %al, %al
|
|
je L12
|
|
movl $3, -12(%ebp)
|
|
jmp L14
|
|
L12:
|
|
movl 8(%ebp), %eax
|
|
movl 12(%eax), %eax
|
|
leal -4(%eax), %edi
|
|
movl 12(%ebp), %esi
|
|
decl %esi
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard7columnsEv
|
|
imull %esi, %eax
|
|
addl 16(%ebp), %eax
|
|
sall $2, %eax
|
|
leal (%edi,%eax), %eax
|
|
movl (%eax), %eax
|
|
movl %eax, -12(%ebp)
|
|
L14:
|
|
movl -12(%ebp), %eax
|
|
addl $32, %esp
|
|
popl %esi
|
|
popl %edi
|
|
leave
|
|
ret
|
|
LFE26:
|
|
.cstring
|
|
LC0:
|
|
.ascii "type %d\12\0"
|
|
LC1:
|
|
.ascii "false\0"
|
|
LC2:
|
|
.ascii "./board.h\0"
|
|
.section __TEXT,__textcoal_nt,coalesced,pure_instructions
|
|
.align 1
|
|
.globl __ZNK12OthelloBoard11type_to_strE9FieldType
|
|
.weak_definition __ZNK12OthelloBoard11type_to_strE9FieldType
|
|
__ZNK12OthelloBoard11type_to_strE9FieldType:
|
|
LFB32:
|
|
pushl %ebp
|
|
LCFI11:
|
|
movl %esp, %ebp
|
|
LCFI12:
|
|
pushl %ebx
|
|
LCFI13:
|
|
subl $36, %esp
|
|
LCFI14:
|
|
call L25
|
|
"L00000000001$pb":
|
|
L25:
|
|
popl %ebx
|
|
movl 12(%ebp), %eax
|
|
movl %eax, -16(%ebp)
|
|
cmpl $1, -16(%ebp)
|
|
je L19
|
|
cmpl $1, -16(%ebp)
|
|
jg L22
|
|
cmpl $0, -16(%ebp)
|
|
je L18
|
|
jmp L17
|
|
L22:
|
|
cmpl $2, -16(%ebp)
|
|
je L20
|
|
cmpl $3, -16(%ebp)
|
|
je L21
|
|
jmp L17
|
|
L18:
|
|
movl $46, -12(%ebp)
|
|
jmp L23
|
|
L19:
|
|
movl $79, -12(%ebp)
|
|
jmp L23
|
|
L20:
|
|
movl $88, -12(%ebp)
|
|
jmp L23
|
|
L21:
|
|
movl $47, -12(%ebp)
|
|
jmp L23
|
|
L17:
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
leal LC0-"L00000000001$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call _printf
|
|
leal LC1-"L00000000001$pb"(%ebx), %eax
|
|
movl %eax, 12(%esp)
|
|
movl $282, 8(%esp)
|
|
leal LC2-"L00000000001$pb"(%ebx), %eax
|
|
movl %eax, 4(%esp)
|
|
leal __ZZNK12OthelloBoard11type_to_strE9FieldTypeE8__func__-"L00000000001$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call ___assert_rtn
|
|
L23:
|
|
movl -12(%ebp), %eax
|
|
addl $36, %esp
|
|
popl %ebx
|
|
leave
|
|
ret
|
|
LFE32:
|
|
.cstring
|
|
LC3:
|
|
.ascii "row_idx > 0\0"
|
|
LC4:
|
|
.ascii "board_validate.cc\0"
|
|
LC5:
|
|
.ascii "row_idx <= rows()\0"
|
|
LC6:
|
|
.ascii "col_idx > 0\0"
|
|
LC7:
|
|
.ascii "col_idx <= columns()\0"
|
|
LC8:
|
|
.ascii "inc_row == 0\0"
|
|
LC9:
|
|
.ascii "inc_col == 0\0"
|
|
.text
|
|
.align 1,0x90
|
|
.globl __ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction
|
|
__ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction:
|
|
LFB35:
|
|
pushl %ebp
|
|
LCFI15:
|
|
movl %esp, %ebp
|
|
LCFI16:
|
|
pushl %esi
|
|
LCFI17:
|
|
pushl %ebx
|
|
LCFI18:
|
|
subl $32, %esp
|
|
LCFI19:
|
|
call L50
|
|
"L00000000002$pb":
|
|
L50:
|
|
popl %ebx
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
testl %eax, %eax
|
|
sete %al
|
|
movzbl %al, %eax
|
|
testl %eax, %eax
|
|
je L27
|
|
leal LC3-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 12(%esp)
|
|
movl $7, 8(%esp)
|
|
leal LC4-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 4(%esp)
|
|
leal __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call ___assert_rtn
|
|
L27:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %esi
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard4rowsEv
|
|
cmpl %eax, %esi
|
|
seta %al
|
|
movzbl %al, %eax
|
|
testl %eax, %eax
|
|
je L29
|
|
leal LC5-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 12(%esp)
|
|
movl $8, 8(%esp)
|
|
leal LC4-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 4(%esp)
|
|
leal __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call ___assert_rtn
|
|
L29:
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
testl %eax, %eax
|
|
sete %al
|
|
movzbl %al, %eax
|
|
testl %eax, %eax
|
|
je L31
|
|
leal LC6-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 12(%esp)
|
|
movl $9, 8(%esp)
|
|
leal LC4-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 4(%esp)
|
|
leal __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call ___assert_rtn
|
|
L31:
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %esi
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard7columnsEv
|
|
cmpl %eax, %esi
|
|
seta %al
|
|
movzbl %al, %eax
|
|
testl %eax, %eax
|
|
je L33
|
|
leal LC7-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 12(%esp)
|
|
movl $10, 8(%esp)
|
|
leal LC4-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 4(%esp)
|
|
leal __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call ___assert_rtn
|
|
L33:
|
|
movl 20(%ebp), %eax
|
|
movl (%eax), %eax
|
|
testl %eax, %eax
|
|
setne %al
|
|
movzbl %al, %eax
|
|
testl %eax, %eax
|
|
je L35
|
|
leal LC8-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 12(%esp)
|
|
movl $11, 8(%esp)
|
|
leal LC4-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 4(%esp)
|
|
leal __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call ___assert_rtn
|
|
L35:
|
|
movl 24(%ebp), %eax
|
|
movl (%eax), %eax
|
|
testl %eax, %eax
|
|
setne %al
|
|
movzbl %al, %eax
|
|
testl %eax, %eax
|
|
je L37
|
|
leal LC9-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 12(%esp)
|
|
movl $12, 8(%esp)
|
|
leal LC4-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, 4(%esp)
|
|
leal __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__-"L00000000002$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call ___assert_rtn
|
|
L37:
|
|
movl 28(%ebp), %eax
|
|
movl %eax, -12(%ebp)
|
|
cmpl $7, -12(%ebp)
|
|
ja L49
|
|
movl -12(%ebp), %edx
|
|
sall $2, %edx
|
|
leal L48-"L00000000002$pb"(%ebx), %eax
|
|
movl (%edx,%eax), %eax
|
|
addl %ebx, %eax
|
|
jmp *%eax
|
|
.align 2,0x90
|
|
L48:
|
|
.long L40-"L00000000002$pb"
|
|
.long L41-"L00000000002$pb"
|
|
.long L42-"L00000000002$pb"
|
|
.long L43-"L00000000002$pb"
|
|
.long L44-"L00000000002$pb"
|
|
.long L45-"L00000000002$pb"
|
|
.long L46-"L00000000002$pb"
|
|
.long L47-"L00000000002$pb"
|
|
L42:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
jmp L49
|
|
L43:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $1, (%eax)
|
|
jmp L49
|
|
L40:
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
jmp L49
|
|
L41:
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $1, (%eax)
|
|
jmp L49
|
|
L44:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
jmp L49
|
|
L45:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $1, (%eax)
|
|
jmp L49
|
|
L46:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal -1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $1, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $-1, (%eax)
|
|
jmp L49
|
|
L47:
|
|
movl 12(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 12(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 16(%ebp), %eax
|
|
movl (%eax), %eax
|
|
leal 1(%eax), %edx
|
|
movl 16(%ebp), %eax
|
|
movl %edx, (%eax)
|
|
movl 20(%ebp), %eax
|
|
movl $1, (%eax)
|
|
movl 24(%ebp), %eax
|
|
movl $1, (%eax)
|
|
L49:
|
|
addl $32, %esp
|
|
popl %ebx
|
|
popl %esi
|
|
leave
|
|
ret
|
|
LFE35:
|
|
.align 1,0x90
|
|
.globl __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
__ZNK12OthelloBoard18position_reachableEjj9direction:
|
|
LFB36:
|
|
pushl %ebp
|
|
LCFI20:
|
|
movl %esp, %ebp
|
|
LCFI21:
|
|
subl $88, %esp
|
|
LCFI22:
|
|
movl 12(%ebp), %eax
|
|
movl %eax, -12(%ebp)
|
|
movl 16(%ebp), %eax
|
|
movl %eax, -16(%ebp)
|
|
movl $0, -20(%ebp)
|
|
movl $0, -24(%ebp)
|
|
movl $1, -28(%ebp)
|
|
movl 20(%ebp), %eax
|
|
movl %eax, 20(%esp)
|
|
leal -24(%ebp), %eax
|
|
movl %eax, 16(%esp)
|
|
leal -20(%ebp), %eax
|
|
movl %eax, 12(%esp)
|
|
leal -16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
leal -12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction
|
|
movl -16(%ebp), %eax
|
|
movl -12(%ebp), %edx
|
|
movl %eax, 8(%esp)
|
|
movl %edx, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard3getEjj
|
|
movl %eax, -32(%ebp)
|
|
jmp L52
|
|
L53:
|
|
movl -16(%ebp), %edx
|
|
movl -24(%ebp), %eax
|
|
leal (%edx,%eax), %eax
|
|
movl %eax, -16(%ebp)
|
|
movl -12(%ebp), %edx
|
|
movl -20(%ebp), %eax
|
|
leal (%edx,%eax), %eax
|
|
movl %eax, -12(%ebp)
|
|
movl -16(%ebp), %eax
|
|
movl -12(%ebp), %edx
|
|
movl %eax, 8(%esp)
|
|
movl %edx, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard3getEjj
|
|
movl %eax, -32(%ebp)
|
|
incl -28(%ebp)
|
|
L52:
|
|
cmpl $0, -32(%ebp)
|
|
je L54
|
|
movl -32(%ebp), %edx
|
|
movl 8(%ebp), %eax
|
|
movl 16(%eax), %eax
|
|
cmpl %eax, %edx
|
|
je L54
|
|
cmpl $3, -32(%ebp)
|
|
jne L53
|
|
L54:
|
|
cmpl $1, -28(%ebp)
|
|
jbe L57
|
|
movl -32(%ebp), %edx
|
|
movl 8(%ebp), %eax
|
|
movl 16(%eax), %eax
|
|
cmpl %eax, %edx
|
|
jne L57
|
|
movb $1, -41(%ebp)
|
|
jmp L60
|
|
L57:
|
|
movb $0, -41(%ebp)
|
|
L60:
|
|
movzbl -41(%ebp), %eax
|
|
leave
|
|
ret
|
|
LFE36:
|
|
.cstring
|
|
.align 2
|
|
LC10:
|
|
.ascii "Coordinates (r=%d, c=%d) out of bounds.\12\0"
|
|
.align 2
|
|
LC11:
|
|
.ascii "Field @ (r=%d, c=%d) is occupied by %c\12\0"
|
|
.align 2
|
|
LC12:
|
|
.ascii "Position (r=%d, c=%d) not reachable by a stone \0"
|
|
LC13:
|
|
.ascii "of type %c.\12\0"
|
|
.text
|
|
.align 1,0x90
|
|
.globl __ZNK12OthelloBoard8validateEjjb
|
|
__ZNK12OthelloBoard8validateEjjb:
|
|
LFB37:
|
|
pushl %ebp
|
|
LCFI23:
|
|
movl %esp, %ebp
|
|
LCFI24:
|
|
pushl %ebx
|
|
LCFI25:
|
|
subl $36, %esp
|
|
LCFI26:
|
|
call L93
|
|
"L00000000003$pb":
|
|
L93:
|
|
popl %ebx
|
|
movl 20(%ebp), %eax
|
|
movb %al, -12(%ebp)
|
|
cmpl $0, 12(%ebp)
|
|
je L63
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard4rowsEv
|
|
cmpl 12(%ebp), %eax
|
|
jb L63
|
|
cmpl $0, 16(%ebp)
|
|
je L63
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard7columnsEv
|
|
cmpl 16(%ebp), %eax
|
|
jae L67
|
|
L63:
|
|
movb $1, -21(%ebp)
|
|
jmp L68
|
|
L67:
|
|
movb $0, -21(%ebp)
|
|
L68:
|
|
movzbl -21(%ebp), %eax
|
|
testb %al, %al
|
|
je L69
|
|
movzbl -12(%ebp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je L71
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
leal LC10-"L00000000003$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call _printf
|
|
L71:
|
|
movl $0, -20(%ebp)
|
|
jmp L73
|
|
L69:
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard3getEjj
|
|
testl %eax, %eax
|
|
setne %al
|
|
testb %al, %al
|
|
je L74
|
|
movzbl -12(%ebp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je L76
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard3getEjj
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard11type_to_strE9FieldType
|
|
movsbl %al,%eax
|
|
movl %eax, 12(%esp)
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
leal LC11-"L00000000003$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call _printf
|
|
L76:
|
|
movl $0, -20(%ebp)
|
|
jmp L73
|
|
L74:
|
|
movl $0, 12(%esp)
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L78
|
|
movl $1, 12(%esp)
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L78
|
|
movl $2, 12(%esp)
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L78
|
|
movl $3, 12(%esp)
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L78
|
|
movl $4, 12(%esp)
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L78
|
|
movl $5, 12(%esp)
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L78
|
|
movl $6, 12(%esp)
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L78
|
|
movl $7, 12(%esp)
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
je L86
|
|
L78:
|
|
movb $1, -13(%ebp)
|
|
jmp L87
|
|
L86:
|
|
movb $0, -13(%ebp)
|
|
L87:
|
|
movzbl -13(%ebp), %eax
|
|
testb %al, %al
|
|
je L88
|
|
movl $1, -20(%ebp)
|
|
jmp L73
|
|
L88:
|
|
movzbl -12(%ebp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je L90
|
|
movl 16(%ebp), %eax
|
|
movl %eax, 8(%esp)
|
|
movl 12(%ebp), %eax
|
|
movl %eax, 4(%esp)
|
|
leal LC12-"L00000000003$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call _printf
|
|
movl 8(%ebp), %eax
|
|
movl 16(%eax), %eax
|
|
movl %eax, 4(%esp)
|
|
movl 8(%ebp), %eax
|
|
movl %eax, (%esp)
|
|
call __ZNK12OthelloBoard11type_to_strE9FieldType
|
|
movsbl %al,%eax
|
|
movl %eax, 4(%esp)
|
|
leal LC13-"L00000000003$pb"(%ebx), %eax
|
|
movl %eax, (%esp)
|
|
call _printf
|
|
L90:
|
|
movl $0, -20(%ebp)
|
|
L73:
|
|
movl -20(%ebp), %eax
|
|
addl $36, %esp
|
|
popl %ebx
|
|
leave
|
|
ret
|
|
LFE37:
|
|
.cstring
|
|
__ZZNK12OthelloBoard11type_to_strE9FieldTypeE8__func__:
|
|
.ascii "type_to_str\0"
|
|
__ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__:
|
|
.ascii "setup_directions\0"
|
|
.section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support
|
|
EH_frame1:
|
|
.set L$set$0,LECIE1-LSCIE1
|
|
.long L$set$0
|
|
LSCIE1:
|
|
.long 0x0
|
|
.byte 0x1
|
|
.ascii "zPR\0"
|
|
.byte 0x1
|
|
.byte 0x7c
|
|
.byte 0x8
|
|
.byte 0x6
|
|
.byte 0x9b
|
|
.long L___gxx_personality_v0$non_lazy_ptr-.
|
|
.byte 0x10
|
|
.byte 0xc
|
|
.byte 0x5
|
|
.byte 0x4
|
|
.byte 0x88
|
|
.byte 0x1
|
|
.align 2
|
|
LECIE1:
|
|
.globl __ZNK12OthelloBoard4rowsEv.eh
|
|
.weak_definition __ZNK12OthelloBoard4rowsEv.eh
|
|
__ZNK12OthelloBoard4rowsEv.eh:
|
|
LSFDE1:
|
|
.set L$set$1,LEFDE1-LASFDE1
|
|
.long L$set$1
|
|
LASFDE1:
|
|
.long LASFDE1-EH_frame1
|
|
.long LFB15-.
|
|
.set L$set$2,LFE15-LFB15
|
|
.long L$set$2
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$3,LCFI0-LFB15
|
|
.long L$set$3
|
|
.byte 0xe
|
|
.byte 0x8
|
|
.byte 0x84
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$4,LCFI1-LCFI0
|
|
.long L$set$4
|
|
.byte 0xd
|
|
.byte 0x4
|
|
.align 2
|
|
LEFDE1:
|
|
.globl __ZNK12OthelloBoard7columnsEv.eh
|
|
.weak_definition __ZNK12OthelloBoard7columnsEv.eh
|
|
__ZNK12OthelloBoard7columnsEv.eh:
|
|
LSFDE3:
|
|
.set L$set$5,LEFDE3-LASFDE3
|
|
.long L$set$5
|
|
LASFDE3:
|
|
.long LASFDE3-EH_frame1
|
|
.long LFB16-.
|
|
.set L$set$6,LFE16-LFB16
|
|
.long L$set$6
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$7,LCFI3-LFB16
|
|
.long L$set$7
|
|
.byte 0xe
|
|
.byte 0x8
|
|
.byte 0x84
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$8,LCFI4-LCFI3
|
|
.long L$set$8
|
|
.byte 0xd
|
|
.byte 0x4
|
|
.align 2
|
|
LEFDE3:
|
|
.globl __ZNK12OthelloBoard3getEjj.eh
|
|
.weak_definition __ZNK12OthelloBoard3getEjj.eh
|
|
__ZNK12OthelloBoard3getEjj.eh:
|
|
LSFDE5:
|
|
.set L$set$9,LEFDE5-LASFDE5
|
|
.long L$set$9
|
|
LASFDE5:
|
|
.long LASFDE5-EH_frame1
|
|
.long LFB26-.
|
|
.set L$set$10,LFE26-LFB26
|
|
.long L$set$10
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$11,LCFI6-LFB26
|
|
.long L$set$11
|
|
.byte 0xe
|
|
.byte 0x8
|
|
.byte 0x84
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$12,LCFI7-LCFI6
|
|
.long L$set$12
|
|
.byte 0xd
|
|
.byte 0x4
|
|
.byte 0x4
|
|
.set L$set$13,LCFI10-LCFI7
|
|
.long L$set$13
|
|
.byte 0x86
|
|
.byte 0x4
|
|
.byte 0x87
|
|
.byte 0x3
|
|
.align 2
|
|
LEFDE5:
|
|
.globl __ZNK12OthelloBoard11type_to_strE9FieldType.eh
|
|
.weak_definition __ZNK12OthelloBoard11type_to_strE9FieldType.eh
|
|
__ZNK12OthelloBoard11type_to_strE9FieldType.eh:
|
|
LSFDE7:
|
|
.set L$set$14,LEFDE7-LASFDE7
|
|
.long L$set$14
|
|
LASFDE7:
|
|
.long LASFDE7-EH_frame1
|
|
.long LFB32-.
|
|
.set L$set$15,LFE32-LFB32
|
|
.long L$set$15
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$16,LCFI11-LFB32
|
|
.long L$set$16
|
|
.byte 0xe
|
|
.byte 0x8
|
|
.byte 0x84
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$17,LCFI12-LCFI11
|
|
.long L$set$17
|
|
.byte 0xd
|
|
.byte 0x4
|
|
.byte 0x4
|
|
.set L$set$18,LCFI14-LCFI12
|
|
.long L$set$18
|
|
.byte 0x83
|
|
.byte 0x3
|
|
.align 2
|
|
LEFDE7:
|
|
.globl __ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction.eh
|
|
__ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction.eh:
|
|
LSFDE9:
|
|
.set L$set$19,LEFDE9-LASFDE9
|
|
.long L$set$19
|
|
LASFDE9:
|
|
.long LASFDE9-EH_frame1
|
|
.long LFB35-.
|
|
.set L$set$20,LFE35-LFB35
|
|
.long L$set$20
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$21,LCFI15-LFB35
|
|
.long L$set$21
|
|
.byte 0xe
|
|
.byte 0x8
|
|
.byte 0x84
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$22,LCFI16-LCFI15
|
|
.long L$set$22
|
|
.byte 0xd
|
|
.byte 0x4
|
|
.byte 0x4
|
|
.set L$set$23,LCFI19-LCFI16
|
|
.long L$set$23
|
|
.byte 0x83
|
|
.byte 0x4
|
|
.byte 0x86
|
|
.byte 0x3
|
|
.align 2
|
|
LEFDE9:
|
|
.globl __ZNK12OthelloBoard18position_reachableEjj9direction.eh
|
|
__ZNK12OthelloBoard18position_reachableEjj9direction.eh:
|
|
LSFDE11:
|
|
.set L$set$24,LEFDE11-LASFDE11
|
|
.long L$set$24
|
|
LASFDE11:
|
|
.long LASFDE11-EH_frame1
|
|
.long LFB36-.
|
|
.set L$set$25,LFE36-LFB36
|
|
.long L$set$25
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$26,LCFI20-LFB36
|
|
.long L$set$26
|
|
.byte 0xe
|
|
.byte 0x8
|
|
.byte 0x84
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$27,LCFI21-LCFI20
|
|
.long L$set$27
|
|
.byte 0xd
|
|
.byte 0x4
|
|
.align 2
|
|
LEFDE11:
|
|
.globl __ZNK12OthelloBoard8validateEjjb.eh
|
|
__ZNK12OthelloBoard8validateEjjb.eh:
|
|
LSFDE13:
|
|
.set L$set$28,LEFDE13-LASFDE13
|
|
.long L$set$28
|
|
LASFDE13:
|
|
.long LASFDE13-EH_frame1
|
|
.long LFB37-.
|
|
.set L$set$29,LFE37-LFB37
|
|
.long L$set$29
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$30,LCFI23-LFB37
|
|
.long L$set$30
|
|
.byte 0xe
|
|
.byte 0x8
|
|
.byte 0x84
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$31,LCFI24-LCFI23
|
|
.long L$set$31
|
|
.byte 0xd
|
|
.byte 0x4
|
|
.byte 0x4
|
|
.set L$set$32,LCFI26-LCFI24
|
|
.long L$set$32
|
|
.byte 0x83
|
|
.byte 0x3
|
|
.align 2
|
|
LEFDE13:
|
|
.section __IMPORT,__pointers,non_lazy_symbol_pointers
|
|
L___gxx_personality_v0$non_lazy_ptr:
|
|
.indirect_symbol ___gxx_personality_v0
|
|
.long 0
|
|
.constructor
|
|
.destructor
|
|
.align 1
|
|
.subsections_via_symbols
|
|
#endif // x86/32
|
|
#ifdef __x86_64__
|
|
.section __TEXT,__textcoal_nt,coalesced,pure_instructions
|
|
.align 1
|
|
.globl __ZNK12OthelloBoard4rowsEv
|
|
.weak_definition __ZNK12OthelloBoard4rowsEv
|
|
__ZNK12OthelloBoard4rowsEv:
|
|
LFB15:
|
|
pushq %rbp
|
|
LCFI0:
|
|
movq %rsp, %rbp
|
|
LCFI1:
|
|
movq %rdi, -8(%rbp)
|
|
movq -8(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leave
|
|
ret
|
|
LFE15:
|
|
.align 1
|
|
.globl __ZNK12OthelloBoard7columnsEv
|
|
.weak_definition __ZNK12OthelloBoard7columnsEv
|
|
__ZNK12OthelloBoard7columnsEv:
|
|
LFB16:
|
|
pushq %rbp
|
|
LCFI2:
|
|
movq %rsp, %rbp
|
|
LCFI3:
|
|
movq %rdi, -8(%rbp)
|
|
movq -8(%rbp), %rax
|
|
movl 4(%rax), %eax
|
|
leave
|
|
ret
|
|
LFE16:
|
|
.align 1
|
|
.globl __ZNK12OthelloBoard3getEjj
|
|
.weak_definition __ZNK12OthelloBoard3getEjj
|
|
__ZNK12OthelloBoard3getEjj:
|
|
LFB26:
|
|
pushq %rbp
|
|
LCFI4:
|
|
movq %rsp, %rbp
|
|
LCFI5:
|
|
pushq %r12
|
|
LCFI6:
|
|
pushq %rbx
|
|
LCFI7:
|
|
subq $32, %rsp
|
|
LCFI8:
|
|
movq %rdi, -24(%rbp)
|
|
movl %esi, -28(%rbp)
|
|
movl %edx, -32(%rbp)
|
|
cmpl $0, -28(%rbp)
|
|
je L6
|
|
cmpl $0, -32(%rbp)
|
|
je L6
|
|
movq -24(%rbp), %rdi
|
|
call __ZNK12OthelloBoard4rowsEv
|
|
cmpl -28(%rbp), %eax
|
|
jb L6
|
|
movq -24(%rbp), %rdi
|
|
call __ZNK12OthelloBoard7columnsEv
|
|
cmpl -32(%rbp), %eax
|
|
jae L10
|
|
L6:
|
|
movb $1, -37(%rbp)
|
|
jmp L11
|
|
L10:
|
|
movb $0, -37(%rbp)
|
|
L11:
|
|
movzbl -37(%rbp), %eax
|
|
testb %al, %al
|
|
je L12
|
|
movl $3, -36(%rbp)
|
|
jmp L14
|
|
L12:
|
|
movq -24(%rbp), %rax
|
|
movq 16(%rax), %r12
|
|
movl -28(%rbp), %ebx
|
|
decl %ebx
|
|
movq -24(%rbp), %rdi
|
|
call __ZNK12OthelloBoard7columnsEv
|
|
imull %ebx, %eax
|
|
addl -32(%rbp), %eax
|
|
decl %eax
|
|
mov %eax, %eax
|
|
salq $2, %rax
|
|
leaq (%r12,%rax), %rax
|
|
movl (%rax), %eax
|
|
movl %eax, -36(%rbp)
|
|
L14:
|
|
movl -36(%rbp), %eax
|
|
addq $32, %rsp
|
|
popq %rbx
|
|
popq %r12
|
|
leave
|
|
ret
|
|
LFE26:
|
|
.cstring
|
|
LC0:
|
|
.ascii "type %d\12\0"
|
|
LC1:
|
|
.ascii "false\0"
|
|
LC2:
|
|
.ascii "./board.h\0"
|
|
.section __TEXT,__textcoal_nt,coalesced,pure_instructions
|
|
.align 1
|
|
.globl __ZNK12OthelloBoard11type_to_strE9FieldType
|
|
.weak_definition __ZNK12OthelloBoard11type_to_strE9FieldType
|
|
__ZNK12OthelloBoard11type_to_strE9FieldType:
|
|
LFB32:
|
|
pushq %rbp
|
|
LCFI9:
|
|
movq %rsp, %rbp
|
|
LCFI10:
|
|
subq $32, %rsp
|
|
LCFI11:
|
|
movq %rdi, -8(%rbp)
|
|
movl %esi, -12(%rbp)
|
|
movl -12(%rbp), %eax
|
|
movl %eax, -20(%rbp)
|
|
cmpl $1, -20(%rbp)
|
|
je L19
|
|
cmpl $1, -20(%rbp)
|
|
jg L22
|
|
cmpl $0, -20(%rbp)
|
|
je L18
|
|
jmp L17
|
|
L22:
|
|
cmpl $2, -20(%rbp)
|
|
je L20
|
|
cmpl $3, -20(%rbp)
|
|
je L21
|
|
jmp L17
|
|
L18:
|
|
movl $46, -16(%rbp)
|
|
jmp L23
|
|
L19:
|
|
movl $79, -16(%rbp)
|
|
jmp L23
|
|
L20:
|
|
movl $88, -16(%rbp)
|
|
jmp L23
|
|
L21:
|
|
movl $47, -16(%rbp)
|
|
jmp L23
|
|
L17:
|
|
movl -12(%rbp), %esi
|
|
leaq LC0(%rip), %rdi
|
|
movl $0, %eax
|
|
call _printf
|
|
leaq LC1(%rip), %rcx
|
|
movl $282, %edx
|
|
leaq LC2(%rip), %rsi
|
|
leaq __ZZNK12OthelloBoard11type_to_strE9FieldTypeE8__func__(%rip), %rdi
|
|
call ___assert_rtn
|
|
L23:
|
|
movl -16(%rbp), %eax
|
|
leave
|
|
ret
|
|
LFE32:
|
|
.cstring
|
|
LC3:
|
|
.ascii "row_idx > 0\0"
|
|
LC4:
|
|
.ascii "board_validate.cc\0"
|
|
LC5:
|
|
.ascii "row_idx <= rows()\0"
|
|
LC6:
|
|
.ascii "col_idx > 0\0"
|
|
LC7:
|
|
.ascii "col_idx <= columns()\0"
|
|
LC8:
|
|
.ascii "inc_row == 0\0"
|
|
LC9:
|
|
.ascii "inc_col == 0\0"
|
|
.text
|
|
.align 1,0x90
|
|
.globl __ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction
|
|
__ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction:
|
|
LFB35:
|
|
pushq %rbp
|
|
LCFI12:
|
|
movq %rsp, %rbp
|
|
LCFI13:
|
|
pushq %rbx
|
|
LCFI14:
|
|
subq $56, %rsp
|
|
LCFI15:
|
|
movq %rdi, -24(%rbp)
|
|
movq %rsi, -32(%rbp)
|
|
movq %rdx, -40(%rbp)
|
|
movq %rcx, -48(%rbp)
|
|
movq %r8, -56(%rbp)
|
|
movl %r9d, -60(%rbp)
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
testl %eax, %eax
|
|
sete %al
|
|
movzbl %al, %eax
|
|
testq %rax, %rax
|
|
je L26
|
|
leaq LC3(%rip), %rcx
|
|
movl $7, %edx
|
|
leaq LC4(%rip), %rsi
|
|
leaq __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__(%rip), %rdi
|
|
call ___assert_rtn
|
|
L26:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %ebx
|
|
movq -24(%rbp), %rdi
|
|
call __ZNK12OthelloBoard4rowsEv
|
|
cmpl %eax, %ebx
|
|
seta %al
|
|
movzbl %al, %eax
|
|
testq %rax, %rax
|
|
je L28
|
|
leaq LC5(%rip), %rcx
|
|
movl $8, %edx
|
|
leaq LC4(%rip), %rsi
|
|
leaq __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__(%rip), %rdi
|
|
call ___assert_rtn
|
|
L28:
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
testl %eax, %eax
|
|
sete %al
|
|
movzbl %al, %eax
|
|
testq %rax, %rax
|
|
je L30
|
|
leaq LC6(%rip), %rcx
|
|
movl $9, %edx
|
|
leaq LC4(%rip), %rsi
|
|
leaq __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__(%rip), %rdi
|
|
call ___assert_rtn
|
|
L30:
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %ebx
|
|
movq -24(%rbp), %rdi
|
|
call __ZNK12OthelloBoard7columnsEv
|
|
cmpl %eax, %ebx
|
|
seta %al
|
|
movzbl %al, %eax
|
|
testq %rax, %rax
|
|
je L32
|
|
leaq LC7(%rip), %rcx
|
|
movl $10, %edx
|
|
leaq LC4(%rip), %rsi
|
|
leaq __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__(%rip), %rdi
|
|
call ___assert_rtn
|
|
L32:
|
|
movq -48(%rbp), %rax
|
|
movl (%rax), %eax
|
|
testl %eax, %eax
|
|
setne %al
|
|
movzbl %al, %eax
|
|
testq %rax, %rax
|
|
je L34
|
|
leaq LC8(%rip), %rcx
|
|
movl $11, %edx
|
|
leaq LC4(%rip), %rsi
|
|
leaq __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__(%rip), %rdi
|
|
call ___assert_rtn
|
|
L34:
|
|
movq -56(%rbp), %rax
|
|
movl (%rax), %eax
|
|
testl %eax, %eax
|
|
setne %al
|
|
movzbl %al, %eax
|
|
testq %rax, %rax
|
|
je L36
|
|
leaq LC9(%rip), %rcx
|
|
movl $12, %edx
|
|
leaq LC4(%rip), %rsi
|
|
leaq __ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__(%rip), %rdi
|
|
call ___assert_rtn
|
|
L36:
|
|
movl -60(%rbp), %eax
|
|
movl %eax, -64(%rbp)
|
|
cmpl $7, -64(%rbp)
|
|
ja L48
|
|
mov -64(%rbp), %eax
|
|
leaq 0(,%rax,4), %rdx
|
|
leaq L47(%rip), %rax
|
|
leaq (%rdx,%rax), %rax
|
|
movl (%rax), %eax
|
|
movslq %eax,%rdx
|
|
leaq L47(%rip), %rax
|
|
leaq (%rdx,%rax), %rax
|
|
jmp *%rax
|
|
.align 2,0x90
|
|
L47:
|
|
.long L39-L47
|
|
.long L40-L47
|
|
.long L41-L47
|
|
.long L42-L47
|
|
.long L43-L47
|
|
.long L44-L47
|
|
.long L45-L47
|
|
.long L46-L47
|
|
L41:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
jmp L48
|
|
L42:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $1, (%rax)
|
|
jmp L48
|
|
L39:
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
jmp L48
|
|
L40:
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $1, (%rax)
|
|
jmp L48
|
|
L43:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
jmp L48
|
|
L44:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $1, (%rax)
|
|
jmp L48
|
|
L45:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal -1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $1, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $-1, (%rax)
|
|
jmp L48
|
|
L46:
|
|
movq -32(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -32(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -40(%rbp), %rax
|
|
movl (%rax), %eax
|
|
leal 1(%rax), %edx
|
|
movq -40(%rbp), %rax
|
|
movl %edx, (%rax)
|
|
movq -48(%rbp), %rax
|
|
movl $1, (%rax)
|
|
movq -56(%rbp), %rax
|
|
movl $1, (%rax)
|
|
L48:
|
|
addq $56, %rsp
|
|
popq %rbx
|
|
leave
|
|
ret
|
|
LFE35:
|
|
.align 1,0x90
|
|
.globl __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
__ZNK12OthelloBoard18position_reachableEjj9direction:
|
|
LFB36:
|
|
pushq %rbp
|
|
LCFI16:
|
|
movq %rsp, %rbp
|
|
LCFI17:
|
|
subq $64, %rsp
|
|
LCFI18:
|
|
movq %rdi, -40(%rbp)
|
|
movl %esi, -44(%rbp)
|
|
movl %edx, -48(%rbp)
|
|
movl %ecx, -52(%rbp)
|
|
movl -44(%rbp), %eax
|
|
movl %eax, -4(%rbp)
|
|
movl -48(%rbp), %eax
|
|
movl %eax, -8(%rbp)
|
|
movl $0, -12(%rbp)
|
|
movl $0, -16(%rbp)
|
|
movl $1, -20(%rbp)
|
|
movl -52(%rbp), %eax
|
|
leaq -16(%rbp), %rdx
|
|
leaq -12(%rbp), %rcx
|
|
leaq -8(%rbp), %rsi
|
|
leaq -4(%rbp), %rdi
|
|
movq -40(%rbp), %r10
|
|
movl %eax, %r9d
|
|
movq %rdx, %r8
|
|
movq %rsi, %rdx
|
|
movq %rdi, %rsi
|
|
movq %r10, %rdi
|
|
call __ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction
|
|
movl -8(%rbp), %edx
|
|
movl -4(%rbp), %esi
|
|
movq -40(%rbp), %rdi
|
|
call __ZNK12OthelloBoard3getEjj
|
|
movl %eax, -24(%rbp)
|
|
jmp L50
|
|
L51:
|
|
movl -8(%rbp), %edx
|
|
movl -16(%rbp), %eax
|
|
leal (%rdx,%rax), %eax
|
|
movl %eax, -8(%rbp)
|
|
movl -4(%rbp), %edx
|
|
movl -12(%rbp), %eax
|
|
leal (%rdx,%rax), %eax
|
|
movl %eax, -4(%rbp)
|
|
movl -8(%rbp), %edx
|
|
movl -4(%rbp), %esi
|
|
movq -40(%rbp), %rdi
|
|
call __ZNK12OthelloBoard3getEjj
|
|
movl %eax, -24(%rbp)
|
|
incl -20(%rbp)
|
|
L50:
|
|
cmpl $0, -24(%rbp)
|
|
je L52
|
|
movl -24(%rbp), %edx
|
|
movq -40(%rbp), %rax
|
|
movl 24(%rax), %eax
|
|
cmpl %eax, %edx
|
|
je L52
|
|
cmpl $3, -24(%rbp)
|
|
jne L51
|
|
L52:
|
|
cmpl $1, -20(%rbp)
|
|
jbe L55
|
|
movl -24(%rbp), %edx
|
|
movq -40(%rbp), %rax
|
|
movl 24(%rax), %eax
|
|
cmpl %eax, %edx
|
|
jne L55
|
|
movb $1, -53(%rbp)
|
|
jmp L58
|
|
L55:
|
|
movb $0, -53(%rbp)
|
|
L58:
|
|
movzbl -53(%rbp), %eax
|
|
leave
|
|
ret
|
|
LFE36:
|
|
.cstring
|
|
.align 3
|
|
LC10:
|
|
.ascii "Coordinates (r=%d, c=%d) out of bounds.\12\0"
|
|
.align 3
|
|
LC11:
|
|
.ascii "Field @ (r=%d, c=%d) is occupied by %c\12\0"
|
|
.align 3
|
|
LC12:
|
|
.ascii "Position (r=%d, c=%d) not reachable by a stone \0"
|
|
LC13:
|
|
.ascii "of type %c.\12\0"
|
|
.text
|
|
.align 1,0x90
|
|
.globl __ZNK12OthelloBoard8validateEjjb
|
|
__ZNK12OthelloBoard8validateEjjb:
|
|
LFB37:
|
|
pushq %rbp
|
|
LCFI19:
|
|
movq %rsp, %rbp
|
|
LCFI20:
|
|
subq $32, %rsp
|
|
LCFI21:
|
|
movq %rdi, -8(%rbp)
|
|
movl %esi, -12(%rbp)
|
|
movl %edx, -16(%rbp)
|
|
movb %cl, -20(%rbp)
|
|
cmpl $0, -12(%rbp)
|
|
je L61
|
|
movq -8(%rbp), %rdi
|
|
call __ZNK12OthelloBoard4rowsEv
|
|
cmpl -12(%rbp), %eax
|
|
jb L61
|
|
cmpl $0, -16(%rbp)
|
|
je L61
|
|
movq -8(%rbp), %rdi
|
|
call __ZNK12OthelloBoard7columnsEv
|
|
cmpl -16(%rbp), %eax
|
|
jae L65
|
|
L61:
|
|
movb $1, -29(%rbp)
|
|
jmp L66
|
|
L65:
|
|
movb $0, -29(%rbp)
|
|
L66:
|
|
movzbl -29(%rbp), %eax
|
|
testb %al, %al
|
|
je L67
|
|
movzbl -20(%rbp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je L69
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
leaq LC10(%rip), %rdi
|
|
movl $0, %eax
|
|
call _printf
|
|
L69:
|
|
movl $0, -28(%rbp)
|
|
jmp L71
|
|
L67:
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rdi
|
|
call __ZNK12OthelloBoard3getEjj
|
|
testl %eax, %eax
|
|
setne %al
|
|
testb %al, %al
|
|
je L72
|
|
movzbl -20(%rbp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je L74
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rdi
|
|
call __ZNK12OthelloBoard3getEjj
|
|
movl %eax, %esi
|
|
movq -8(%rbp), %rdi
|
|
call __ZNK12OthelloBoard11type_to_strE9FieldType
|
|
movsbl %al,%ecx
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
leaq LC11(%rip), %rdi
|
|
movl $0, %eax
|
|
call _printf
|
|
L74:
|
|
movl $0, -28(%rbp)
|
|
jmp L71
|
|
L72:
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rdi
|
|
movl $0, %ecx
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L76
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rdi
|
|
movl $1, %ecx
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L76
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rdi
|
|
movl $2, %ecx
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L76
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rdi
|
|
movl $3, %ecx
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L76
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rdi
|
|
movl $4, %ecx
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L76
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rdi
|
|
movl $5, %ecx
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L76
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rdi
|
|
movl $6, %ecx
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
jne L76
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
movq -8(%rbp), %rdi
|
|
movl $7, %ecx
|
|
call __ZNK12OthelloBoard18position_reachableEjj9direction
|
|
testb %al, %al
|
|
je L84
|
|
L76:
|
|
movb $1, -21(%rbp)
|
|
jmp L85
|
|
L84:
|
|
movb $0, -21(%rbp)
|
|
L85:
|
|
movzbl -21(%rbp), %eax
|
|
testb %al, %al
|
|
je L86
|
|
movl $1, -28(%rbp)
|
|
jmp L71
|
|
L86:
|
|
movzbl -20(%rbp), %eax
|
|
xorl $1, %eax
|
|
testb %al, %al
|
|
je L88
|
|
movl -16(%rbp), %edx
|
|
movl -12(%rbp), %esi
|
|
leaq LC12(%rip), %rdi
|
|
movl $0, %eax
|
|
call _printf
|
|
movq -8(%rbp), %rax
|
|
movl 24(%rax), %esi
|
|
movq -8(%rbp), %rdi
|
|
call __ZNK12OthelloBoard11type_to_strE9FieldType
|
|
movsbl %al,%esi
|
|
leaq LC13(%rip), %rdi
|
|
movl $0, %eax
|
|
call _printf
|
|
L88:
|
|
movl $0, -28(%rbp)
|
|
L71:
|
|
movl -28(%rbp), %eax
|
|
leave
|
|
ret
|
|
LFE37:
|
|
.cstring
|
|
__ZZNK12OthelloBoard11type_to_strE9FieldTypeE8__func__:
|
|
.ascii "type_to_str\0"
|
|
__ZZNK12OthelloBoard16setup_directionsERjS0_RiS1_9directionE8__func__:
|
|
.ascii "setup_directions\0"
|
|
.section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support
|
|
EH_frame1:
|
|
.set L$set$0,LECIE1-LSCIE1
|
|
.long L$set$0
|
|
LSCIE1:
|
|
.long 0x0
|
|
.byte 0x1
|
|
.ascii "zPR\0"
|
|
.byte 0x1
|
|
.byte 0x78
|
|
.byte 0x10
|
|
.byte 0x6
|
|
.byte 0x9b
|
|
.long ___gxx_personality_v0+4@GOTPCREL
|
|
.byte 0x10
|
|
.byte 0xc
|
|
.byte 0x7
|
|
.byte 0x8
|
|
.byte 0x90
|
|
.byte 0x1
|
|
.align 3
|
|
LECIE1:
|
|
.globl __ZNK12OthelloBoard4rowsEv.eh
|
|
.weak_definition __ZNK12OthelloBoard4rowsEv.eh
|
|
__ZNK12OthelloBoard4rowsEv.eh:
|
|
LSFDE1:
|
|
.set L$set$1,LEFDE1-LASFDE1
|
|
.long L$set$1
|
|
LASFDE1:
|
|
.long LASFDE1-EH_frame1
|
|
.quad LFB15-.
|
|
.set L$set$2,LFE15-LFB15
|
|
.quad L$set$2
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$3,LCFI0-LFB15
|
|
.long L$set$3
|
|
.byte 0xe
|
|
.byte 0x10
|
|
.byte 0x86
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$4,LCFI1-LCFI0
|
|
.long L$set$4
|
|
.byte 0xd
|
|
.byte 0x6
|
|
.align 3
|
|
LEFDE1:
|
|
.globl __ZNK12OthelloBoard7columnsEv.eh
|
|
.weak_definition __ZNK12OthelloBoard7columnsEv.eh
|
|
__ZNK12OthelloBoard7columnsEv.eh:
|
|
LSFDE3:
|
|
.set L$set$5,LEFDE3-LASFDE3
|
|
.long L$set$5
|
|
LASFDE3:
|
|
.long LASFDE3-EH_frame1
|
|
.quad LFB16-.
|
|
.set L$set$6,LFE16-LFB16
|
|
.quad L$set$6
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$7,LCFI2-LFB16
|
|
.long L$set$7
|
|
.byte 0xe
|
|
.byte 0x10
|
|
.byte 0x86
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$8,LCFI3-LCFI2
|
|
.long L$set$8
|
|
.byte 0xd
|
|
.byte 0x6
|
|
.align 3
|
|
LEFDE3:
|
|
.globl __ZNK12OthelloBoard3getEjj.eh
|
|
.weak_definition __ZNK12OthelloBoard3getEjj.eh
|
|
__ZNK12OthelloBoard3getEjj.eh:
|
|
LSFDE5:
|
|
.set L$set$9,LEFDE5-LASFDE5
|
|
.long L$set$9
|
|
LASFDE5:
|
|
.long LASFDE5-EH_frame1
|
|
.quad LFB26-.
|
|
.set L$set$10,LFE26-LFB26
|
|
.quad L$set$10
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$11,LCFI4-LFB26
|
|
.long L$set$11
|
|
.byte 0xe
|
|
.byte 0x10
|
|
.byte 0x86
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$12,LCFI5-LCFI4
|
|
.long L$set$12
|
|
.byte 0xd
|
|
.byte 0x6
|
|
.byte 0x4
|
|
.set L$set$13,LCFI8-LCFI5
|
|
.long L$set$13
|
|
.byte 0x83
|
|
.byte 0x4
|
|
.byte 0x8c
|
|
.byte 0x3
|
|
.align 3
|
|
LEFDE5:
|
|
.globl __ZNK12OthelloBoard11type_to_strE9FieldType.eh
|
|
.weak_definition __ZNK12OthelloBoard11type_to_strE9FieldType.eh
|
|
__ZNK12OthelloBoard11type_to_strE9FieldType.eh:
|
|
LSFDE7:
|
|
.set L$set$14,LEFDE7-LASFDE7
|
|
.long L$set$14
|
|
LASFDE7:
|
|
.long LASFDE7-EH_frame1
|
|
.quad LFB32-.
|
|
.set L$set$15,LFE32-LFB32
|
|
.quad L$set$15
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$16,LCFI9-LFB32
|
|
.long L$set$16
|
|
.byte 0xe
|
|
.byte 0x10
|
|
.byte 0x86
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$17,LCFI10-LCFI9
|
|
.long L$set$17
|
|
.byte 0xd
|
|
.byte 0x6
|
|
.align 3
|
|
LEFDE7:
|
|
.globl __ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction.eh
|
|
__ZNK12OthelloBoard16setup_directionsERjS0_RiS1_9direction.eh:
|
|
LSFDE9:
|
|
.set L$set$18,LEFDE9-LASFDE9
|
|
.long L$set$18
|
|
LASFDE9:
|
|
.long LASFDE9-EH_frame1
|
|
.quad LFB35-.
|
|
.set L$set$19,LFE35-LFB35
|
|
.quad L$set$19
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$20,LCFI12-LFB35
|
|
.long L$set$20
|
|
.byte 0xe
|
|
.byte 0x10
|
|
.byte 0x86
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$21,LCFI13-LCFI12
|
|
.long L$set$21
|
|
.byte 0xd
|
|
.byte 0x6
|
|
.byte 0x4
|
|
.set L$set$22,LCFI15-LCFI13
|
|
.long L$set$22
|
|
.byte 0x83
|
|
.byte 0x3
|
|
.align 3
|
|
LEFDE9:
|
|
.globl __ZNK12OthelloBoard18position_reachableEjj9direction.eh
|
|
__ZNK12OthelloBoard18position_reachableEjj9direction.eh:
|
|
LSFDE11:
|
|
.set L$set$23,LEFDE11-LASFDE11
|
|
.long L$set$23
|
|
LASFDE11:
|
|
.long LASFDE11-EH_frame1
|
|
.quad LFB36-.
|
|
.set L$set$24,LFE36-LFB36
|
|
.quad L$set$24
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$25,LCFI16-LFB36
|
|
.long L$set$25
|
|
.byte 0xe
|
|
.byte 0x10
|
|
.byte 0x86
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$26,LCFI17-LCFI16
|
|
.long L$set$26
|
|
.byte 0xd
|
|
.byte 0x6
|
|
.align 3
|
|
LEFDE11:
|
|
.globl __ZNK12OthelloBoard8validateEjjb.eh
|
|
__ZNK12OthelloBoard8validateEjjb.eh:
|
|
LSFDE13:
|
|
.set L$set$27,LEFDE13-LASFDE13
|
|
.long L$set$27
|
|
LASFDE13:
|
|
.long LASFDE13-EH_frame1
|
|
.quad LFB37-.
|
|
.set L$set$28,LFE37-LFB37
|
|
.quad L$set$28
|
|
.byte 0x0
|
|
.byte 0x4
|
|
.set L$set$29,LCFI19-LFB37
|
|
.long L$set$29
|
|
.byte 0xe
|
|
.byte 0x10
|
|
.byte 0x86
|
|
.byte 0x2
|
|
.byte 0x4
|
|
.set L$set$30,LCFI20-LCFI19
|
|
.long L$set$30
|
|
.byte 0xd
|
|
.byte 0x6
|
|
.align 3
|
|
LEFDE13:
|
|
.constructor
|
|
.destructor
|
|
.align 1
|
|
.subsections_via_symbols
|
|
#endif // x86/64
|
|
#endif // Darwin
|