gl_rasterizer: Use MMH3 hash for shader cache hey.

- Includes a check to confirm no hash collisions.
This commit is contained in:
bunnei
2015-10-09 22:46:47 -04:00
parent 71edb55114
commit 240a3b80d9
5 changed files with 64 additions and 102 deletions

View File

@@ -4,9 +4,6 @@
#pragma once
#include <cstddef>
#include <functional>
#include "common_types.h"
#define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
@@ -98,18 +95,3 @@ inline u64 _rotr64(u64 x, unsigned int shift){
// This function might change the error code.
// Defined in Misc.cpp.
const char* GetLastErrorMsg();
template <typename T>
inline std::size_t hash(const T& o) {
return std::hash<T>()(o);
}
template <typename T>
inline std::size_t combine_hash(const T& o) {
return hash(o);
}
template <typename T, typename... Args>
inline std::size_t combine_hash(const T& o, const Args&... args) {
return hash(o) * 3 + combine_hash(args...);
}