projects
/
gem5.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ruby: message buffers: significant changes
[gem5.git]
/
src
/
mem
/
ruby
/
network
/
simple
/
PerfectSwitch.hh
diff --git
a/src/mem/ruby/network/simple/PerfectSwitch.hh
b/src/mem/ruby/network/simple/PerfectSwitch.hh
index c01c50a3bff5786cc5e95c8b00732fa7ab4c0087..25e3e2754f1a4a4409a89673ed42b038036eb227 100644
(file)
--- a/
src/mem/ruby/network/simple/PerfectSwitch.hh
+++ b/
src/mem/ruby/network/simple/PerfectSwitch.hh
@@
-65,9
+65,10
@@
class PerfectSwitch : public Consumer
{ return csprintf("PerfectSwitch-%i", m_switch_id); }
void init(SimpleNetwork *);
{ return csprintf("PerfectSwitch-%i", m_switch_id); }
void init(SimpleNetwork *);
- void addInPort(const std::
vector<
MessageBuffer*>& in);
- void addOutPort(const std::
vector<
MessageBuffer*>& out,
+ void addInPort(const std::
map<int,
MessageBuffer*>& in);
+ void addOutPort(const std::
map<int,
MessageBuffer*>& out,
const NetDest& routing_table_entry);
const NetDest& routing_table_entry);
+
int getInLinks() const { return m_in.size(); }
int getOutLinks() const { return m_out.size(); }
int getInLinks() const { return m_in.size(); }
int getOutLinks() const { return m_out.size(); }
@@
-86,8
+87,9
@@
class PerfectSwitch : public Consumer
SwitchID m_switch_id;
// vector of queues from the components
SwitchID m_switch_id;
// vector of queues from the components
- std::vector<std::vector<MessageBuffer*> > m_in;
- std::vector<std::vector<MessageBuffer*> > m_out;
+ std::vector<std::map<int, MessageBuffer*> > m_in;
+ std::vector<std::map<int, MessageBuffer*> > m_out;
+
std::vector<NetDest> m_routing_table;
std::vector<LinkOrder> m_link_order;
std::vector<NetDest> m_routing_table;
std::vector<LinkOrder> m_link_order;