X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Ftypes.h;h=a0a61600766d4e9873d7a55858d0652c5b787593;hp=5c9b9366500fca756c797636ad067c6c4ab0eb08;hb=4502a1934f2d624288b635b5901ecda8cefa342c;hpb=f53aea45e3230239d358d4d35357c9ee6bf6fb54 diff --git a/src/types.h b/src/types.h index 5c9b9366..a0a61600 100644 --- a/src/types.h +++ b/src/types.h @@ -33,6 +33,9 @@ /// /// -DUSE_POPCNT | Add runtime support for use of popcnt asm-instruction. Works /// | only in 64-bit mode and requires hardware with popcnt support. +/// +/// -DUSE_PEXT | Add runtime support for use of pext asm-instruction. Works +/// | only in 64-bit mode and requires hardware with pext support. #include #include @@ -71,16 +74,9 @@ #if defined(USE_PEXT) # include // Header for _pext_u64() intrinsic +# define pext(b, m) _pext_u64(b, m) #else -# define _pext_u64(b, m) (0) -#endif - -#ifdef _MSC_VER -# define FORCE_INLINE __forceinline -#elif defined(__GNUC__) -# define FORCE_INLINE inline __attribute__((always_inline)) -#else -# define FORCE_INLINE inline +# define pext(b, m) (0) #endif #ifdef USE_POPCNT @@ -190,7 +186,7 @@ enum Value : int { PawnValueMg = 198, PawnValueEg = 258, KnightValueMg = 817, KnightValueEg = 846, BishopValueMg = 836, BishopValueEg = 857, - RookValueMg = 1270, RookValueEg = 1278, + RookValueMg = 1270, RookValueEg = 1281, QueenValueMg = 2521, QueenValueEg = 2558, MidgameLimit = 15581, EndgameLimit = 3998 @@ -413,7 +409,7 @@ inline MoveType type_of(Move m) { } inline PieceType promotion_type(Move m) { - return PieceType(((m >> 12) & 3) + 2); + return PieceType(((m >> 12) & 3) + KNIGHT); } inline Move make_move(Square from, Square to) {