Retire psq_delta()
authorMarco Costalba <mcostalba@gmail.com>
Sun, 9 Jun 2013 10:24:43 +0000 (12:24 +0200)
committerMarco Costalba <mcostalba@gmail.com>
Sun, 9 Jun 2013 10:32:16 +0000 (12:32 +0200)
No functional change.

src/position.cpp
src/position.h
src/types.h

index 1a8c7e00d6a0bc24af2e44c395a70fb9eb6c1d4b..d145ddfa0def3ae65959b0593667a6ad2e34e466 100644 (file)
@@ -105,9 +105,9 @@ void init() {
 
 namespace {
 
-/// next_attacker() is an helper function used by see() to locate the least
-/// valuable attacker for the side to move, remove the attacker we just found
-/// from the 'occupied' bitboard and scan for new X-ray attacks behind it.
+// next_attacker() is an helper function used by see() to locate the least
+// valuable attacker for the side to move, remove the attacker we just found
+// from the 'occupied' bitboard and scan for new X-ray attacks behind it.
 
 template<int Pt> FORCE_INLINE
 PieceType next_attacker(const Bitboard* bb, const Square& to, const Bitboard& stmAttackers,
@@ -767,8 +767,9 @@ void Position::do_move(Move m, StateInfo& newSt, const CheckInfo& ci, bool moveI
 
       do_castle(from, to, rfrom, rto);
 
-      st->psqScore += psq_delta(make_piece(us, ROOK), rfrom, rto);
       k ^= Zobrist::psq[us][ROOK][rfrom] ^ Zobrist::psq[us][ROOK][rto];
+      st->psqScore += pieceSquareTable[make_piece(us, ROOK)][rto]
+                    - pieceSquareTable[make_piece(us, ROOK)][rfrom];
   }
 
   if (capture)
@@ -919,7 +920,7 @@ void Position::do_move(Move m, StateInfo& newSt, const CheckInfo& ci, bool moveI
   }
 
   // Update incremental scores
-  st->psqScore += psq_delta(piece, from, to);
+  st->psqScore += pieceSquareTable[piece][to] - pieceSquareTable[piece][from];
 
   // Set capture piece
   st->capturedType = capture;
index 7616eadc966414ac63e6189a8d4d58051ef4dfa6..8b81358769854354b0fc07ad828711ebf0518378 100644 (file)
@@ -169,7 +169,6 @@ public:
 
   // Incremental piece-square evaluation
   Score psq_score() const;
-  Score psq_delta(Piece p, Square from, Square to) const;
   Value non_pawn_material(Color c) const;
 
   // Other properties of the position
@@ -358,10 +357,6 @@ inline Key Position::material_key() const {
   return st->materialKey;
 }
 
-inline Score Position::psq_delta(Piece p, Square from, Square to) const {
-  return pieceSquareTable[p][to] - pieceSquareTable[p][from];
-}
-
 inline Score Position::psq_score() const {
   return st->psqScore;
 }
index c21b55be4f4c992d9b23c5eff77c051b884f1318..653ebade2f805b55a942269cbb76cceb154eac38 100644 (file)
@@ -339,9 +339,6 @@ namespace Zobrist {
   void init();
 }
 
-CACHE_LINE_ALIGNMENT
-
-extern Score pieceSquareTable[PIECE_NB][SQUARE_NB];
 extern Value PieceValue[PHASE_NB][PIECE_NB];
 extern int SquareDistance[SQUARE_NB][SQUARE_NB];