diff options
Diffstat (limited to 'src/mem/xbar.hh')
-rw-r--r-- | src/mem/xbar.hh | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/mem/xbar.hh b/src/mem/xbar.hh index 7f3c17677..6e7d7afce 100644 --- a/src/mem/xbar.hh +++ b/src/mem/xbar.hh @@ -54,6 +54,7 @@ #include <deque> #include "base/addr_range_map.hh" +#include "base/hashmap.hh" #include "base/types.hh" #include "mem/mem_object.hh" #include "params/BaseXBar.hh" @@ -247,6 +248,14 @@ class BaseXBar : public MemObject AddrRangeMap<PortID> portMap; + /** + * Remember where request packets came from so that we can route + * responses to the appropriate port. This relies on the fact that + * the underlying Request pointer inside the Packet stays + * constant. + */ + m5::unordered_map<RequestPtr, PortID> routeTo; + /** all contigous ranges seen by this crossbar */ AddrRangeList xbarRanges; |