Classes | Namespaces | Defines

hm_hash.hpp File Reference

Go to the source code of this file.

Classes

struct  wali::hm_hash< T >
struct  wali::hm_equal< T >
struct  wali::hm_hash< char >
struct  wali::hm_hash< const char >
struct  wali::hm_equal< char >
struct  wali::hm_equal< const char >
struct  wali::hm_hash< unsigned char >
struct  wali::hm_hash< const unsigned char >
struct  wali::hm_equal< unsigned char >
struct  wali::hm_equal< const unsigned char >
struct  wali::hm_hash< int >
struct  wali::hm_hash< const int >
struct  wali::hm_equal< int >
struct  wali::hm_equal< const int >
struct  wali::hm_hash< unsigned int >
struct  wali::hm_hash< const unsigned int >
struct  wali::hm_equal< unsigned int >
struct  wali::hm_equal< const unsigned int >
struct  wali::hm_hash< long >
struct  wali::hm_hash< const long >
struct  wali::hm_equal< long >
struct  wali::hm_equal< const long >
struct  wali::hm_hash< unsigned long >
struct  wali::hm_hash< const unsigned long >
struct  wali::hm_equal< unsigned long >
struct  wali::hm_equal< const unsigned long >
struct  wali::hm_hash< char * >
struct  wali::hm_hash< const char * >
struct  wali::hm_equal< char * >
struct  wali::hm_equal< const char * >
struct  wali::hm_hash< long long >
struct  wali::hm_hash< const long long >
struct  wali::hm_equal< long long >
struct  wali::hm_equal< const long long >
struct  wali::hm_hash< unsigned long long >
struct  wali::hm_hash< const unsigned long long >
struct  wali::hm_equal< unsigned long long >
struct  wali::hm_equal< const unsigned long long >

Namespaces

namespace  wali

Defines

#define longhash1(key)
#define jenkins_mix(a, b, c)
#define jenkins_wrapper(c)
#define primitive_type_hash(key)

Define Documentation

#define longhash1 (   key  ) 
Value:
{                       \
  key += ~(key << 32);  \
  key ^= (key >> 22);  \
  key += ~(key << 13);  \
  key ^= (key >> 8);   \
  key += (key << 3);    \
  key ^= (key >> 15);  \
  key += ~(key << 27);  \
  key ^= (key >> 31);  \
}
Author:
Nicholas Kidd

Referenced by wali::hm_hash< const unsigned long long >::operator()(), wali::hm_hash< unsigned long long >::operator()(), wali::hm_hash< const long long >::operator()(), and wali::hm_hash< long long >::operator()().

#define jenkins_mix (   a,
  b,
  c 
)
#define jenkins_wrapper (   c  ) 
Value:
{                                       \
  size_t a = 0x9e3779b9;     \
  size_t b = 0x9e3779b9;     \
  jenkins_mix(a,b,c);             \
}
#define primitive_type_hash (   key  )