]> git.sesse.net Git - stockfish/blobdiff - src/pawns.cpp
Only on Windows do wait for input at the end of benchmark
[stockfish] / src / pawns.cpp
index b9d112f08c5e95772f0bf70437801df48a4daa5e..587caf0d316c2275acb35db1208b0a29cd1bebd9 100644 (file)
@@ -1,7 +1,7 @@
 /*
   Stockfish, a UCI chess playing engine derived from Glaurung 2.1
   Copyright (C) 2004-2008 Tord Romstad (Glaurung author)
-  Copyright (C) 2008 Marco Costalba
+  Copyright (C) 2008-2009 Marco Costalba
 
   Stockfish is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
@@ -23,8 +23,8 @@
 ////
 
 #include <cassert>
-#include <cstring>
 
+#include "bitcount.h"
 #include "pawns.h"
 #include "position.h"
 
@@ -121,8 +121,8 @@ namespace {
   };
 
   // Pawn storm open file bonuses by file
-  const int KStormOpenFileBonus[8] = { 45, 45, 30, 0, 0, 0, 0, 0 };
-  const int QStormOpenFileBonus[8] = { 0, 0, 0, 0, 0, 30, 45, 30 };
+  const int16_t KStormOpenFileBonus[8] = { 45, 45, 30, 0, 0, 0, 0, 0 };
+  const int16_t QStormOpenFileBonus[8] = { 0, 0, 0, 0, 0, 30, 45, 30 };
 
   // Pawn storm lever bonuses by file
   const int StormLeverBonus[8] = { 20, 20, 10, 0, 0, 10, 20, 20 };
@@ -144,9 +144,8 @@ PawnInfoTable::PawnInfoTable(unsigned numOfEntries) {
   {
       std::cerr << "Failed to allocate " << (numOfEntries * sizeof(PawnInfo))
                 << " bytes for pawn hash table." << std::endl;
-      exit(EXIT_FAILURE);
+      Application::exit_with_failure();
   }
-  clear();
 }
 
 
@@ -157,14 +156,6 @@ PawnInfoTable::~PawnInfoTable() {
 }
 
 
-/// PawnInfoTable::clear() clears the pawn hash table by setting all
-/// entries to 0.
-
-void PawnInfoTable::clear() {
-  memset(entries, 0, size * sizeof(PawnInfo));
-}
-
-
 /// PawnInfoTable::get_pawn_info() takes a position object as input, computes
 /// a PawnInfo object, and returns a pointer to it.  The result is also
 /// stored in a hash table, so we don't have to recompute everything when