X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Ftypes.h;h=9c997418afa28d4cf4a38ed35989887d11599709;hb=44432f67d724573d0f6e3cfea6165c9b1d125d72;hp=2a3b41fab8f7ee234852deb6b9498f97fd72a031;hpb=b1f57e92cea7bd36126ef8c26928d8991b74baef;p=stockfish diff --git a/src/types.h b/src/types.h index 2a3b41fa..9c997418 100644 --- a/src/types.h +++ b/src/types.h @@ -64,12 +64,6 @@ # define FORCE_INLINE inline #endif -#if defined(__GNUC__) -# define THREAD_LOCAL __thread -#else -# define THREAD_LOCAL __declspec(thread) -#endif - #if defined(USE_POPCNT) const bool HasPopCnt = true; #else @@ -85,8 +79,8 @@ const bool Is64Bit = false; typedef uint64_t Key; typedef uint64_t Bitboard; -const int MAX_MOVES = 256; -const int MAX_PLY = 256; +const int MAX_MOVES = 192; +const int MAX_PLY = 100; const int MAX_PLY_PLUS_2 = MAX_PLY + 2; const Bitboard FileABB = 0x0101010101010101ULL; @@ -142,6 +136,11 @@ enum CastleRight { ALL_CASTLES = 15 }; +enum CastlingSide { + KING_SIDE, + QUEEN_SIDE +}; + enum ScaleFactor { SCALE_FACTOR_DRAW = 0, SCALE_FACTOR_NORMAL = 64, @@ -326,7 +325,6 @@ const Value QueenValueEndgame = Value(0x9FE); extern const Value PieceValueMidgame[17]; // Indexed by Piece or PieceType extern const Value PieceValueEndgame[17]; extern int SquareDistance[64][64]; -extern uint8_t BitCount8Bit[256]; inline Color operator~(Color c) { return Color(c ^ 1); @@ -348,6 +346,10 @@ inline Piece make_piece(Color c, PieceType pt) { return Piece((c << 3) | pt); } +inline CastleRight make_castle_right(Color c, CastlingSide s) { + return CastleRight((s == KING_SIDE ? WHITE_OO : WHITE_OOO) << c); +} + inline PieceType type_of(Piece p) { return PieceType(p & 7); }