mirror of
https://github.com/sockspls/badfish
synced 2025-07-11 11:39:15 +00:00
Rearrange structs to avoid internal padding
Found with gcc -Wpadded gcc option. No functional change. Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
parent
bc54a44010
commit
d15217b953
4 changed files with 13 additions and 14 deletions
|
@ -53,10 +53,10 @@ private:
|
|||
BookEntry read_entry(int idx);
|
||||
int first_entry(uint64_t key);
|
||||
|
||||
RKISS RKiss;
|
||||
std::ifstream bookFile;
|
||||
std::string bookName;
|
||||
int bookSize;
|
||||
RKISS RKiss;
|
||||
};
|
||||
|
||||
#endif // !defined(BOOK_H_INCLUDED)
|
||||
|
|
|
@ -58,9 +58,9 @@ struct StateInfo {
|
|||
Score value;
|
||||
Value npMaterial[2];
|
||||
|
||||
PieceType capturedType;
|
||||
Key key;
|
||||
Bitboard checkersBB;
|
||||
PieceType capturedType;
|
||||
StateInfo* previous;
|
||||
};
|
||||
|
||||
|
@ -256,16 +256,16 @@ private:
|
|||
int index[64]; // [square]
|
||||
|
||||
// Other info
|
||||
Color sideToMove;
|
||||
Key history[MaxGameLength];
|
||||
int castleRightsMask[64]; // [square]
|
||||
Square castleRookSquare[16]; // [castleRight]
|
||||
StateInfo startState;
|
||||
bool chess960;
|
||||
int64_t nodes;
|
||||
Color sideToMove;
|
||||
int fullMoves;
|
||||
int threadID;
|
||||
int64_t nodes;
|
||||
StateInfo* st;
|
||||
int chess960;
|
||||
|
||||
// Static variables
|
||||
static Score pieceSquareTable[16][64]; // [piece][square]
|
||||
|
|
|
@ -34,6 +34,7 @@ struct SplitPoint;
|
|||
/// current ply.
|
||||
|
||||
struct SearchStack {
|
||||
SplitPoint* sp;
|
||||
int ply;
|
||||
Move currentMove;
|
||||
Move excludedMove;
|
||||
|
@ -42,8 +43,7 @@ struct SearchStack {
|
|||
Depth reduction;
|
||||
Value eval;
|
||||
Value evalMargin;
|
||||
bool skipNullMove;
|
||||
SplitPoint* sp;
|
||||
int skipNullMove;
|
||||
};
|
||||
|
||||
|
||||
|
@ -59,10 +59,9 @@ struct SearchLimits {
|
|||
: time(t), increment(i), movesToGo(mtg), maxTime(mt), maxDepth(md),
|
||||
maxNodes(mn), infinite(inf), ponder(pon) {}
|
||||
|
||||
bool useTimeManagement() const { return !(maxTime | maxDepth | maxNodes | int(infinite)); }
|
||||
bool useTimeManagement() const { return !(maxTime | maxDepth | maxNodes | infinite); }
|
||||
|
||||
int time, increment, movesToGo, maxTime, maxDepth, maxNodes;
|
||||
bool infinite, ponder;
|
||||
int time, increment, movesToGo, maxTime, maxDepth, maxNodes, infinite, ponder;
|
||||
};
|
||||
|
||||
extern void init_search();
|
||||
|
|
|
@ -37,8 +37,8 @@ struct SplitPoint {
|
|||
SplitPoint* parent;
|
||||
const Position* pos;
|
||||
Depth depth;
|
||||
bool pvNode;
|
||||
Value beta;
|
||||
int pvNode;
|
||||
int ply;
|
||||
int master;
|
||||
Move threatMove;
|
||||
|
@ -79,6 +79,7 @@ struct Thread {
|
|||
bool cutoff_occurred() const;
|
||||
bool is_available_to(int master) const;
|
||||
|
||||
SplitPoint splitPoints[MAX_ACTIVE_SPLIT_POINTS];
|
||||
MaterialInfoTable materialTable;
|
||||
PawnInfoTable pawnTable;
|
||||
int maxPly;
|
||||
|
@ -87,7 +88,6 @@ struct Thread {
|
|||
volatile ThreadState state;
|
||||
SplitPoint* volatile splitPoint;
|
||||
volatile int activeSplitPoints;
|
||||
SplitPoint splitPoints[MAX_ACTIVE_SPLIT_POINTS];
|
||||
};
|
||||
|
||||
|
||||
|
@ -118,13 +118,13 @@ public:
|
|||
void split(Position& pos, SearchStack* ss, Value* alpha, const Value beta, Value* bestValue,
|
||||
Depth depth, Move threatMove, int moveCount, MovePicker* mp, bool pvNode);
|
||||
private:
|
||||
Thread threads[MAX_THREADS];
|
||||
Lock mpLock;
|
||||
Depth minimumSplitDepth;
|
||||
int maxThreadsPerSplitPoint;
|
||||
bool useSleepingThreads;
|
||||
int activeThreads;
|
||||
bool useSleepingThreads;
|
||||
volatile bool allThreadsShouldExit;
|
||||
Thread threads[MAX_THREADS];
|
||||
};
|
||||
|
||||
extern ThreadsManager Threads;
|
||||
|
|
Loading…
Add table
Reference in a new issue