Author: Dezhi Zhao
Date: 15:45:15 09/29/05
Go up one level in this thread
Here it is:
; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727.26
include listing.inc
INCLUDELIB OLDNAMES
PUBLIC ?rightUpAttacks@@YA_K_K0@Z ; rightUpAttacks
; Function compile flags: /Ogtpy
; File c:\documents and settings\administrator\my documents\visual studio
2005\projects\x64\x64\x64.cpp
; COMDAT ?rightUpAttacks@@YA_K_K0@Z
_TEXT SEGMENT
deo$ = 8
pro$ = 16
?rightUpAttacks@@YA_K_K0@Z PROC ; rightUpAttacks, COMDAT
; 11 : BitBoard notA = 0xfefefefefefefefe;
; 12 :
; 13 : pro = pro & notA;
mov rax, -72340172838076674 ; fefefefefefefefeH
and rdx, rax
; 14 : deo |= pro & (deo << 9);
mov rax, rcx
shl rax, 9
and rax, rdx
or rcx, rax
; 15 : pro = pro & (pro << 9);
mov rax, rdx
shl rax, 9
and rdx, rax
; 16 : deo |= pro & (deo << 18);
mov rax, rcx
shl rax, 18
and rax, rdx
or rcx, rax
; 17 : pro = pro & (pro << 18);
; 18 : deo |= pro & (deo << 36);
; 19 : return (deo << 9) & notA;
mov rax, rcx
shl rax, 18
and rax, rdx
shl rax, 18
and rax, rdx
or rax, rcx
mov rcx, -141289400074369 ; ffff7f7f7f7f7f7fH
and rax, rcx
shl rax, 9
; 20 : }
ret 0
?rightUpAttacks@@YA_K_K0@Z ENDP ; rightUpAttacks
_TEXT ENDS
On September 29, 2005 at 14:16:06, Gerd Isenberg wrote:
>Dezhi, can you please post some x86-64 assembly of this routine?
>
>Thanks,
>Gerd
>
>
>typedef unsigned __int64 BitBoard;
>
>BitBoard notA = 0xfefefefefefefefe;
>
>BitBoard rightUpAttacks(BitBoard deo, BitBoard pro) {
> pro = pro & notA;
> deo |= pro & (deo << 9);
> pro = pro & (pro << 9);
> deo |= pro & (deo << 18);
> pro = pro & (pro << 18);
> deo |= pro & (deo << 36);
> return (deo << 9) & notA;
>}
This page took 0.02 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.