blob: cf21acd714f375e2e6aca16511dc7ba6faf9f924 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#ifndef __MEM_RUBY_STRUCTURES_SBETABLE_HH__
#define __MEM_RUBY_STRUCTURES_SBETABLE_HH__
#include <iostream>
#include <unordered_map>
#include "mem/ruby/common/Address.hh"
#include "mem/protocol/DataBlock.hh"
class SBE
{
public:
SBE() {}
Addr m_addr;
DataBlock m_DataBlk;
};
class SBETable
{
public:
SBETable() {}
// bool isPresent(Addr address) const;
void allocate(Addr address);
// void deallocate(Addr address);
private:
std::unordered_map<Addr, SBE> m_map;
};
inline void
SBETable::allocate(Addr address)
{
// assert(!isPresent(address));
m_map[address] = SBE();
m_map[address].m_addr = address;
}
#endif // __MEM_RUBY_STRUCTURES_SBETABLE_HH__
|