Clear hash table before every move
authorH.G.Muller <hgm@hgm-xboard.(none)>
Mon, 15 May 2017 20:22:17 +0000 (22:22 +0200)
committerH.G.Muller <hgm@hgm-xboard.(none)>
Mon, 15 May 2017 20:22:17 +0000 (22:22 +0200)
To make bugs reproducible we temporarily put in code to clear all
hash entries before every move.

dropper.c

index ad36e37..8a29026 100644 (file)
--- a/dropper.c
+++ b/dropper.c
@@ -1815,7 +1815,7 @@ main ()
     fflush(stdout);                 // make sure everything is printed before we do something that might take time
 
     if(stm == engineSide) {         // if it is the engine's turn to move, set it thinking, and let it move
-
+{int i;for(i=0; i<=hashMask+3; i++) /*if(hashTable[i].score != hashTable[i].lim)*/ hashTable[i].lock = 0;}
       nodeCount = forceMove = undoInfo.move = abortFlag = 0; ReadClock(1);
       for(i=0;i<1<<16;i++) history[i] = 0; //>>= 1;
       for(i=0;i<1<<17;i++) mateKillers[i] = 0;