Author: Zappa
Date: 10:08:59 12/06/05
Go up one level in this thread
On December 06, 2005 at 01:32:58, Lance Perkins wrote: >int PawnForwardRotate[] = {8,64-8}; >unsigned __int64 PawnForwardMask[] = {0xffffffffffffff00, 0x00ffffffffffffff}; > >_rotl64 (bbPawns, PawnForwardRotate[color]) & PawnForwardMask[color]; > >// pre-cond: >// Rax = pawn bb >// Rdx = color > >mov ecx, DWORD PTR PawnForwardRotate[Rdx*4] >rol rax, cl >and rax, QWORD PTR PawnForwardMask[Rdx*8] Hmm. That certainly helps a lot. You could do up to a 16 point shift with no problems, although there is another instruction. Just out of curiosity, is this in Thinker? anthony
This page took 0.01 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.