LCOV - code coverage report
Current view: top level - Source - bitboardTools.cpp (source / functions) Coverage Total Hit
Test: coverage Lines: 83.3 % 12 10
Test Date: 2026-03-02 16:42:41 Functions: 66.7 % 3 2

            Line data    Source code
       1              : #include "bitboardTools.hpp"
       2              : 
       3              : #include "logging.hpp"
       4              : 
       5              : namespace BBTools {
       6              : 
       7      5568663 : Square SquareFromBitBoard(const BitBoard& b) {
       8      5568663 :    assert(isNotEmpty(b));
       9              : #ifdef _WIN64
      10              :    unsigned long i = 0ull;
      11              : #else
      12              :    int i = 0;
      13              : #endif
      14              :    bsf(b, i);
      15      5568663 :    return static_cast<Square>(i);
      16              : }
      17              : 
      18            0 : void clearBitBoards(Position& p) {
      19              :    p._allB.fill(emptyBitBoard);
      20          308 :    p.allPieces[Co_White] = p.allPieces[Co_Black] = emptyBitBoard;
      21            0 : }
      22              : 
      23          308 : void setBitBoards(Position& p) {
      24              :    clearBitBoards(p);
      25        20020 :    for (Square k = 0; k < NbSquare; ++k) {
      26        19712 :       const Piece pp = p.board_const(k);
      27        19712 :       if (pp != P_none) {
      28              :          setBit(p, k, pp);
      29         5809 :          p.allPieces[pp > 0 ? Co_White : Co_Black] |= SquareToBitboard(k);
      30              :       }
      31              :    }
      32          308 : }
      33              : 
      34              : } // namespace BBTools
        

Generated by: LCOV version 2.0-1