X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=src%2Ftypes.h;h=5b5bc1f227785d6a80b1d7a57e936bfd44df6cae;hb=d66b765eb6b3725b468a3c5f8f2cdb9693fd6bdf;hp=2a3b41fab8f7ee234852deb6b9498f97fd72a031;hpb=b1f57e92cea7bd36126ef8c26928d8991b74baef;p=stockfish diff --git a/src/types.h b/src/types.h index 2a3b41fa..5b5bc1f2 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, @@ -348,6 +347,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); }