mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-21 03:29:40 +00:00
--Ruchira git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@505 91177308-0d34-0410-b5e6-96231b3b80d8
38 lines
589 B
C++
38 lines
589 B
C++
#ifndef REG_COLOR_MAP
|
|
#define REG_COLOR_MAP
|
|
|
|
#include <hash_map>
|
|
|
|
|
|
#ifndef VALUE_SET_H
|
|
|
|
struct hashFuncValue { // sturcture containing the hash func
|
|
inline size_t operator () (const Value *const val) const
|
|
{ return (size_t) val; }
|
|
};
|
|
|
|
#endif
|
|
|
|
|
|
typedef int RegColorType;
|
|
|
|
|
|
class RegColorMap : hash_map <const Value *, RegColorType, hashFuncValue>
|
|
{
|
|
|
|
public:
|
|
|
|
inline void setRegColor(const Value *const Val, RegColorType Col) {
|
|
(*this)[Val] = Col;
|
|
}
|
|
|
|
|
|
inline RegColorType getRegColor(const Value *const Val) {
|
|
return (*this)[Val];
|
|
}
|
|
|
|
|
|
};
|
|
|
|
#endif
|