Searched refs:hash (Results 1 - 25 of 38) sorted by relevance

12

/gem5/src/mem/cache/tags/indexing_policies/
H A Dskewed_associative.cc62 SkewedAssociative::hash(const Addr addr) const function in class:SkewedAssociative
103 addr1 = hash(addr1) ^ hash(addr2) ^ addr2;
106 addr1 = hash(addr1) ^ hash(addr2) ^ addr1;
109 addr1 = hash(addr1) ^ dehash(addr2) ^ addr2;
112 addr1 = hash(addr1) ^ dehash(addr2) ^ addr1;
115 addr1 = dehash(addr1) ^ hash(addr2) ^ addr2;
118 addr1 = dehash(addr1) ^ hash(addr2) ^ addr1;
134 addr1 = hash(addr
[all...]
H A Dskewed_associative.hh50 * The skewed indexing policy has a variable mapping based on a hash function,
88 * The hash function itself. Uses the hash function H, as described in
99 Addr hash(const Addr addr) const;
102 * Inverse of the hash function.
103 * @sa hash().
115 * @param way The cache way, used to select a hash function.
126 * @param way The cache way, used to select a hash function.
/gem5/src/base/filters/
H A Dbulk_bloom_filter.hh53 int hash(Addr addr, int hash_number) const override;
61 * each of which with its own hash function. When an address is hashed
H A Dh3_bloom_filter.hh52 int hash(Addr addr, int hash_number) const override;
H A Dblock_bloom_filter.cc66 filter[hash(addr)]++;
72 filter[hash(addr)]--;
78 return filter[hash(addr)];
82 Block::hash(Addr addr) const function in class:BloomFilter::Block
H A Dblock_bloom_filter.hh59 * XOR hash between bitfields of an address, provided by the mask vector.
64 int hash(Addr addr) const;
H A Dmulti_bit_sel_bloom_filter.hh43 * through the use of multiple hash functions.
56 * Apply the selected the hash functions to an address.
58 * @param addr The address to hash.
59 * @param hash_number Index of the hash function to be used.
61 virtual int hash(Addr addr, int hash_number) const;
H A Dmulti_bit_sel_bloom_filter.cc61 filter[hash(addr, i)]++;
70 count += filter[hash(addr, i)];
76 MultiBitSel::hash(Addr addr, int hash_number) const function in class:BloomFilter::MultiBitSel
H A Dh3_bloom_filter.cc375 H3::hash(Addr addr, int hash_number) const function in class:BloomFilter::H3
H A Dbulk_bloom_filter.cc55 Bulk::hash(Addr addr, int hash_number) const function in class:BloomFilter::Bulk
/gem5/src/arch/power/
H A Dtypes.hh94 struct hash<PowerISA::ExtMachInst> : public hash<uint32_t> { struct in namespace:std
96 return hash<uint32_t>::operator()((uint32_t)emi);
/gem5/src/cpu/simple/probes/
H A Dsimpoint.hh57 * This structure is used to look up the hash table of BBVs.
63 /** Overload hash function for BasicBlockRange type */
66 struct hash<BasicBlockRange> struct in namespace:std
70 return hash<Addr>()(bb.first + bb.second);
/gem5/src/sim/
H A Dfutex_map.hh64 * std::hash if a user defined key is used. Our key is is user defined
65 * so we need to provide the hash functor.
68 struct hash<FutexKey> struct in namespace:std
72 size_t hash = 65521; local
74 hash ^= (size_t)(in.addr >> sizeof(size_t) * i) ^
77 return hash;
/gem5/ext/pybind11/include/pybind11/detail/
H A Dinternals.h51 // libstdc++, this doesn't happen: equality and the type_index hash are based on the type name,
52 // which works. If not under a known-good stl, provide our own name-based hash and equality
56 using type_hash = std::hash<std::type_index>;
65 size_t hash = 5381;
68 hash = (hash * 33) ^ c;
69 return hash;
85 size_t value = std::hash<const void *>()(v.first);
86 value ^= std::hash<const void *>()(v.second) + 0x9e3779b9 + (value<<6) + (value>>2);
/gem5/src/mem/cache/prefetch/
H A Dbop.cc113 BOPPrefetcher::hash(Addr addr, unsigned int way) const function in class:BOPPrefetcher
125 rrLeft[hash(addr, RRWay::Left)] = addr;
128 rrRight[hash(addr, RRWay::Right)] = addr;
H A Dbop.hh110 /** Generate a hash for the specified address to index the RR table
111 * @param addr: address to hash
114 unsigned int hash(Addr addr, unsigned int way) const;
/gem5/src/cpu/o3/
H A Dmem_dep_unit.hh58 unsigned hash = (((a >> 14) ^ ((a >> 2) & 0xffff))) & 0x7FFFFFFF; local
60 return hash;
236 /** Finds the memory dependence entry in the hash map. */
246 /** A hash map of all memory dependence entries. */
/gem5/src/cpu/pred/
H A Dsimple_indirect.cc218 Addr hash = br_addr >> instShift;
220 hash ^= ghr;
226 hash ^= (t_info.pathHist[i].targetAddr >>
230 return hash & (numSets-1);
/gem5/src/mem/cache/tags/
H A Dfa_lru.hh130 return std::hash<T1>()(p.first) ^ std::hash<T2>()(p.second);
136 /** The address hash table. */
/gem5/src/base/
H A Dbitunion.hh405 //An STL style hash structure for hashing BitUnions based on their base type.
409 struct hash<BitUnionType<T> > : public hash<BitUnionBaseType<T> > struct in namespace:std
414 return hash<BitUnionBaseType<T> >::operator()(val);
/gem5/ext/pybind11/include/pybind11/
H A Doperators.h151 PYBIND11_UNARY_OPERATOR(hash, hash, std::hash<L>()(l))
/gem5/ext/testlib/
H A Duid.py85 return hash(str(self))
/gem5/ext/pybind11/tests/
H A Dtest_operator_overloading.py40 assert hash(v1) == 4
H A Dtest_operator_overloading.cpp60 struct hash<Vector2> { struct in namespace:std
61 // Not a good hash function, but easy to test
110 .def(hash(py::self))
/gem5/src/cpu/
H A Dreg_class.hh88 friend struct std::hash<RegId>;
357 struct hash<RegId> struct in namespace:std
372 // considered by this hash function, so we may wish to perform a
373 // different operation to include that information in the hash.

Completed in 29 milliseconds

12