1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-07-11 19:49:14 +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:
Marco Costalba 2011-07-02 11:01:12 +01:00
parent bc54a44010
commit d15217b953
4 changed files with 13 additions and 14 deletions

View file

@ -53,10 +53,10 @@ private:
BookEntry read_entry(int idx); BookEntry read_entry(int idx);
int first_entry(uint64_t key); int first_entry(uint64_t key);
RKISS RKiss;
std::ifstream bookFile; std::ifstream bookFile;
std::string bookName; std::string bookName;
int bookSize; int bookSize;
RKISS RKiss;
}; };
#endif // !defined(BOOK_H_INCLUDED) #endif // !defined(BOOK_H_INCLUDED)

View file

@ -58,9 +58,9 @@ struct StateInfo {
Score value; Score value;
Value npMaterial[2]; Value npMaterial[2];
PieceType capturedType;
Key key; Key key;
Bitboard checkersBB; Bitboard checkersBB;
PieceType capturedType;
StateInfo* previous; StateInfo* previous;
}; };
@ -256,16 +256,16 @@ private:
int index[64]; // [square] int index[64]; // [square]
// Other info // Other info
Color sideToMove;
Key history[MaxGameLength]; Key history[MaxGameLength];
int castleRightsMask[64]; // [square] int castleRightsMask[64]; // [square]
Square castleRookSquare[16]; // [castleRight] Square castleRookSquare[16]; // [castleRight]
StateInfo startState; StateInfo startState;
bool chess960; int64_t nodes;
Color sideToMove;
int fullMoves; int fullMoves;
int threadID; int threadID;
int64_t nodes;
StateInfo* st; StateInfo* st;
int chess960;
// Static variables // Static variables
static Score pieceSquareTable[16][64]; // [piece][square] static Score pieceSquareTable[16][64]; // [piece][square]

View file

@ -34,6 +34,7 @@ struct SplitPoint;
/// current ply. /// current ply.
struct SearchStack { struct SearchStack {
SplitPoint* sp;
int ply; int ply;
Move currentMove; Move currentMove;
Move excludedMove; Move excludedMove;
@ -42,8 +43,7 @@ struct SearchStack {
Depth reduction; Depth reduction;
Value eval; Value eval;
Value evalMargin; Value evalMargin;
bool skipNullMove; int skipNullMove;
SplitPoint* sp;
}; };
@ -59,10 +59,9 @@ struct SearchLimits {
: time(t), increment(i), movesToGo(mtg), maxTime(mt), maxDepth(md), : time(t), increment(i), movesToGo(mtg), maxTime(mt), maxDepth(md),
maxNodes(mn), infinite(inf), ponder(pon) {} 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; int time, increment, movesToGo, maxTime, maxDepth, maxNodes, infinite, ponder;
bool infinite, ponder;
}; };
extern void init_search(); extern void init_search();

View file

@ -37,8 +37,8 @@ struct SplitPoint {
SplitPoint* parent; SplitPoint* parent;
const Position* pos; const Position* pos;
Depth depth; Depth depth;
bool pvNode;
Value beta; Value beta;
int pvNode;
int ply; int ply;
int master; int master;
Move threatMove; Move threatMove;
@ -79,6 +79,7 @@ struct Thread {
bool cutoff_occurred() const; bool cutoff_occurred() const;
bool is_available_to(int master) const; bool is_available_to(int master) const;
SplitPoint splitPoints[MAX_ACTIVE_SPLIT_POINTS];
MaterialInfoTable materialTable; MaterialInfoTable materialTable;
PawnInfoTable pawnTable; PawnInfoTable pawnTable;
int maxPly; int maxPly;
@ -87,7 +88,6 @@ struct Thread {
volatile ThreadState state; volatile ThreadState state;
SplitPoint* volatile splitPoint; SplitPoint* volatile splitPoint;
volatile int activeSplitPoints; 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, void split(Position& pos, SearchStack* ss, Value* alpha, const Value beta, Value* bestValue,
Depth depth, Move threatMove, int moveCount, MovePicker* mp, bool pvNode); Depth depth, Move threatMove, int moveCount, MovePicker* mp, bool pvNode);
private: private:
Thread threads[MAX_THREADS];
Lock mpLock; Lock mpLock;
Depth minimumSplitDepth; Depth minimumSplitDepth;
int maxThreadsPerSplitPoint; int maxThreadsPerSplitPoint;
bool useSleepingThreads;
int activeThreads; int activeThreads;
bool useSleepingThreads;
volatile bool allThreadsShouldExit; volatile bool allThreadsShouldExit;
Thread threads[MAX_THREADS];
}; };
extern ThreadsManager Threads; extern ThreadsManager Threads;