changeset e399b6c18b76 in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=e399b6c18b76
description:
base: Simplify the AddrRangeMap by removing unused code
This patch cleans up the AddrRangeMap in preparation for the addition
of interleaving by removing unused code. The non-const editions of
find are never used, and hence the duplication is not needed.
diffstat:
src/base/addr_range_map.hh | 52 ++++++---------------------------------------
src/mem/physical.cc | 3 +-
2 files changed, 9 insertions(+), 46 deletions(-)
diffs (93 lines):
diff -r 10a84dceab25 -r e399b6c18b76 src/base/addr_range_map.hh
--- a/src/base/addr_range_map.hh Mon Jan 07 13:05:38 2013 -0500
+++ b/src/base/addr_range_map.hh Mon Jan 07 13:05:38 2013 -0500
@@ -68,32 +68,10 @@
const_iterator
find(const AddrRange &r) const
{
- const_iterator i;
+ if (tree.empty())
+ return tree.end();
- i = tree.upper_bound(r);
-
- if (i == tree.begin()) {
- if (i->first.intersects(r))
- return i;
- else
- // Nothing could match, so return end()
- return tree.end();
- }
-
- --i;
-
- if (i->first.intersects(r))
- return i;
-
- return tree.end();
- }
-
- iterator
- find(const AddrRange &r)
- {
- iterator i;
-
- i = tree.upper_bound(r);
+ const_iterator i = tree.upper_bound(r);
if (i == tree.begin()) {
if (i->first.intersects(r))
@@ -117,23 +95,13 @@
return find(RangeSize(r, 1));
}
- iterator
- find(const Addr &r)
+ bool
+ intersect(const AddrRange &r) const
{
- return find(RangeSize(r, 1));
+ return find(r) != tree.end();
}
- bool
- intersect(const AddrRange &r)
- {
- iterator i;
- i = find(r);
- if (i != tree.end())
- return true;
- return false;
- }
-
- iterator
+ const_iterator
insert(const AddrRange &r, const V& d)
{
if (intersect(r))
@@ -142,12 +110,6 @@
return tree.insert(std::make_pair(r, d)).first;
}
- std::size_t
- erase(Addr k)
- {
- return tree.erase(k);
- }
-
void
erase(iterator p)
{
diff -r 10a84dceab25 -r e399b6c18b76 src/mem/physical.cc
--- a/src/mem/physical.cc Mon Jan 07 13:05:38 2013 -0500
+++ b/src/mem/physical.cc Mon Jan 07 13:05:38 2013 -0500
@@ -325,7 +325,8 @@
arrayParamIn(cp, section, "lal_addr", lal_addr);
arrayParamIn(cp, section, "lal_cid", lal_cid);
for(size_t i = 0; i < lal_addr.size(); ++i) {
- AddrRangeMap<AbstractMemory*>::iterator m = addrMap.find(lal_addr[i]);
+ AddrRangeMap<AbstractMemory*>::const_iterator m =
+ addrMap.find(lal_addr[i]);
m->second->addLockedAddr(LockedAddr(lal_addr[i], lal_cid[i]));
}
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev