Go to the documentation of this file.
38 #ifndef __CPU_UTILS_HH__
39 #define __CPU_UTILS_HH__
52 return addr & (block_size - 1);
65 return addr & ~(block_size - 1);
89 auto it_tmp = it_start;
90 for (;it_tmp != it_end && !(*it_tmp); ++it_tmp);
91 return (it_tmp != it_end);
94 #endif // __CPU_UTILS_HH__
bool isAnyActiveElement(const std::vector< bool >::const_iterator &it_start, const std::vector< bool >::const_iterator &it_end)
Test if there is any active element in an enablement range.
Addr addrBlockAlign(Addr addr, Addr block_size)
Returns the address of the closest aligned fixed-size block to the given address.
Addr addrBlockOffset(Addr addr, Addr block_size)
Calculates the offset of a given address wrt aligned fixed-size blocks.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
bool transferNeedsBurst(Addr addr, unsigned int size, unsigned int block_size)
Returns true if the given memory access (address, size) needs to be fragmented across aligned fixed-s...
Generated on Wed Sep 30 2020 14:02:10 for gem5 by doxygen 1.8.17