changeset 9b9ef42122bc in /z/repo/gem5 details: http://repo.gem5.org/gem5?cmd=changeset;node=9b9ef42122bc description: base: Add const to intmath and be more flexible with typing
This patch ensures the functions can be used on const variables. diffstat: src/base/intmath.hh | 20 ++++++++++---------- 1 files changed, 10 insertions(+), 10 deletions(-) diffs (77 lines): diff -r b58f6afe14c5 -r 9b9ef42122bc src/base/intmath.hh --- a/src/base/intmath.hh Tue Aug 26 10:14:30 2014 -0400 +++ b/src/base/intmath.hh Tue Aug 26 10:14:32 2014 -0400 @@ -42,7 +42,7 @@ // Determine if a number is prime template <class T> inline bool -isPrime(T n) +isPrime(const T& n) { T i; @@ -63,14 +63,14 @@ template <class T> inline T -leastSigBit(T n) +leastSigBit(const T& n) { return n & ~(n - 1); } template <class T> inline bool -isPowerOf2(T n) +isPowerOf2(const T& n) { return n != 0 && leastSigBit(n) == n; } @@ -171,7 +171,7 @@ template <class T> inline int -ceilLog2(T n) +ceilLog2(const T& n) { if (n == 1) return 0; @@ -181,14 +181,14 @@ template <class T> inline T -floorPow2(T n) +floorPow2(const T& n) { return (T)1 << floorLog2(n); } template <class T> inline T -ceilPow2(T n) +ceilPow2(const T& n) { return (T)1 << ceilLog2(n); } @@ -200,17 +200,17 @@ return (a + b - 1) / b; } -template <class T> +template <class T, class U> inline T -roundUp(T val, int align) +roundUp(const T& val, const U& align) { T mask = (T)align - 1; return (val + mask) & ~mask; } -template <class T> +template <class T, class U> inline T -roundDown(T val, int align) +roundDown(const T& val, const U& align) { T mask = (T)align - 1; return val & ~mask; _______________________________________________ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev