1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-07-11 19:49:14 +00:00

Convert History table H in a local variable

This is a first step for future patches and in
any case seems a nice thing to do.

No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
Marco Costalba 2009-06-02 09:57:15 +01:00
parent e1ed67aacb
commit c1b60269a2
5 changed files with 14 additions and 12 deletions

View file

@ -63,7 +63,8 @@ namespace {
/// search captures, promotions and some checks) and about how important good
/// move ordering is at the current node.
MovePicker::MovePicker(const Position& p, bool pv, Move ttm, Depth d, SearchStack* ss) : pos(p) {
MovePicker::MovePicker(const Position& p, bool pv, Move ttm, Depth d,
const History& h, SearchStack* ss) : pos(p), H(h) {
pvNode = pv;
ttMove = ttm;

View file

@ -26,6 +26,7 @@
////
#include "depth.h"
#include "history.h"
#include "lock.h"
#include "position.h"
@ -64,7 +65,7 @@ public:
PH_STOP
};
MovePicker(const Position& p, bool pvnode, Move ttm, Depth d, SearchStack* ss = NULL);
MovePicker(const Position& p, bool pvnode, Move ttm, Depth d, const History& h, SearchStack* ss = NULL);
Move get_next_move();
Move get_next_move(Lock& lock);
int number_of_moves() const;
@ -80,6 +81,7 @@ private:
Move pick_move_from_list();
const Position& pos;
const History& H;
Move ttMove, mateKiller, killer1, killer2;
Bitboard pinned, dc;
MoveStack moves[256], badCaptures[64];

View file

@ -28,6 +28,7 @@
#include <string>
#include <sstream>
#include "history.h"
#include "movepick.h"
#include "san.h"
@ -143,7 +144,7 @@ Move move_from_san(const Position& pos, const string& movestr) {
assert(pos.is_ok());
MovePicker mp = MovePicker(pos, false, MOVE_NONE, OnePly);
MovePicker mp = MovePicker(pos, false, MOVE_NONE, OnePly, History());
// Castling moves
if (movestr == "O-O-O" || movestr == "O-O-O+")
@ -367,7 +368,7 @@ namespace {
if (type_of_piece(pc) == KING)
return AMBIGUITY_NONE;
MovePicker mp = MovePicker(pos, false, MOVE_NONE, OnePly);
MovePicker mp = MovePicker(pos, false, MOVE_NONE, OnePly, History());
Move mv, moveList[8];
int n = 0;

View file

@ -207,6 +207,9 @@ namespace {
// Search depth at iteration 1
const Depth InitialDepth = OnePly /*+ OnePly/2*/;
// History tables
History H;
// Node counters
int NodesSincePoll;
int NodesBetweenPolls = 30000;
@ -330,8 +333,6 @@ int ActiveThreads = 1;
// but it could turn out to be useful for debugging.
Lock IOLock;
History H; // Should be made local?
// SearchStack::init() initializes a search stack. Used at the beginning of a
// new search from the root.
@ -1056,7 +1057,7 @@ namespace {
// Initialize a MovePicker object for the current position, and prepare
// to search all moves
MovePicker mp = MovePicker(pos, true, ttMove, depth, &ss[ply]);
MovePicker mp = MovePicker(pos, true, ttMove, depth, H, &ss[ply]);
Move move, movesSearched[256];
int moveCount = 0;
@ -1317,7 +1318,7 @@ namespace {
// Initialize a MovePicker object for the current position, and prepare
// to search all moves:
MovePicker mp = MovePicker(pos, false, ttMove, depth, &ss[ply]);
MovePicker mp = MovePicker(pos, false, ttMove, depth, H, &ss[ply]);
Move move, movesSearched[256];
int moveCount = 0;
@ -1538,7 +1539,7 @@ namespace {
// Initialize a MovePicker object for the current position, and prepare
// to search the moves. Because the depth is <= 0 here, only captures,
// queen promotions and checks (only if depth == 0) will be generated.
MovePicker mp = MovePicker(pos, pvNode, ttMove, depth);
MovePicker mp = MovePicker(pos, pvNode, ttMove, depth, H);
Move move;
int moveCount = 0;
Bitboard dcCandidates = mp.discovered_check_candidates();

View file

@ -73,9 +73,6 @@ extern TranspositionTable TT;
extern int ActiveThreads;
extern Lock SMPLock;
// Perhaps better to make H local, and pass as parameter to MovePicker?
extern History H;
////
//// Prototypes