X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Ftt.h;h=3edd5e8a1fdfda660eedc08ea89c57261eeb364b;hp=1e344c3f06ef43f2b19af60f716d9a7c9990e0b8;hb=32c504076f5a1d5c84f88c2d30a11c25ea2e5a6e;hpb=304deb5e833baf47c147e93377f5c7ef582ab822 diff --git a/src/tt.h b/src/tt.h index 1e344c3f..3edd5e8a 100644 --- a/src/tt.h +++ b/src/tt.h @@ -20,12 +20,9 @@ #if !defined(TT_H_INCLUDED) #define TT_H_INCLUDED -#include - #include "misc.h" #include "types.h" - /// The TTEntry is the class of transposition table entries /// /// A TTEntry needs 128 bits to be stored @@ -136,35 +133,4 @@ inline void TranspositionTable::refresh(const TTEntry* tte) const { const_cast(tte)->set_generation(generation); } - -/// A simple hash table used to store pawns and material configurations. It is -/// basically just an array of Entry objects. Without cluster concept, overwrite -/// policy nor resizing. - -template -struct HashTable { - - typedef HashTable Base; - - HashTable() { - - entries = new (std::nothrow) Entry[HashSize]; - if (!entries) - { - std::cerr << "Failed to allocate " << HashSize * sizeof(Entry) - << " bytes for hash table." << std::endl; - ::exit(EXIT_FAILURE); - } - memset(entries, 0, HashSize * sizeof(Entry)); - } - - virtual ~HashTable() { delete [] entries; } - - Entry* probe(Key key) const { return entries + ((uint32_t)key & (HashSize - 1)); } - void prefetch(Key key) const { ::prefetch((char*)probe(key)); } - -private: - Entry* entries; -}; - #endif // !defined(TT_H_INCLUDED)