changeset 59fb5779ec6e in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=59fb5779ec6e
description:
        misc: Move AddrRangeList from port.hh to addr_range.hh

        The new location seems like a better fit. The iterator typedefs are
        removed in favour of using C++11 auto.

diffstat:

 src/base/addr_range.hh          |   6 ++++++
 src/kern/tru64/tru64_events.cc  |   5 ++---
 src/mem/port.hh                 |  13 -------------
 src/mem/ruby/system/RubyPort.cc |   4 ++--
 4 files changed, 10 insertions(+), 18 deletions(-)

diffs (84 lines):

diff -r 5d4ebc92d32e -r 59fb5779ec6e src/base/addr_range.hh
--- a/src/base/addr_range.hh    Thu Oct 16 05:49:58 2014 -0400
+++ b/src/base/addr_range.hh    Thu Oct 16 05:49:59 2014 -0400
@@ -45,6 +45,7 @@
 #ifndef __BASE_ADDR_RANGE_HH__
 #define __BASE_ADDR_RANGE_HH__
 
+#include <list>
 #include <vector>
 
 #include "base/bitfield.hh"
@@ -293,6 +294,11 @@
 #endif // SWIG
 };
 
+/**
+ * Convenience typedef for a collection of address ranges
+ */
+typedef std::list<AddrRange> AddrRangeList;
+
 inline AddrRange
 RangeEx(Addr start, Addr end)
 { return AddrRange(start, end - 1); }
diff -r 5d4ebc92d32e -r 59fb5779ec6e src/kern/tru64/tru64_events.cc
--- a/src/kern/tru64/tru64_events.cc    Thu Oct 16 05:49:58 2014 -0400
+++ b/src/kern/tru64/tru64_events.cc    Thu Oct 16 05:49:59 2014 -0400
@@ -57,15 +57,14 @@
 
     uint64_t a0 = tc->readIntReg(16);
 
-    AddrRangeIter iter;
     bool found = false;
 
     MasterPort &dataPort = tc->getCpuPtr()->getDataPort();
 
     // get the address ranges of the connected slave port
     AddrRangeList resp = dataPort.getAddrRanges();
-    for (iter = resp.begin(); iter != resp.end(); iter++) {
-        if (iter->contains(K0Seg2Phys(a0) & PAddrImplMask))
+    for (const auto &iter : resp) {
+        if (iter.contains(K0Seg2Phys(a0) & PAddrImplMask))
             found = true;
     }
 
diff -r 5d4ebc92d32e -r 59fb5779ec6e src/mem/port.hh
--- a/src/mem/port.hh   Thu Oct 16 05:49:58 2014 -0400
+++ b/src/mem/port.hh   Thu Oct 16 05:49:59 2014 -0400
@@ -50,22 +50,9 @@
 #ifndef __MEM_PORT_HH__
 #define __MEM_PORT_HH__
 
-#include <list>
-
 #include "base/addr_range.hh"
 #include "mem/packet.hh"
 
-/**
- * This typedef is used to clean up getAddrRanges(). It's declared
- * outside the Port object since it's also used by some mem objects.
- * Eventually we should move this typedef to wherever Addr is
- * defined.
- */
-
-typedef std::list<AddrRange> AddrRangeList;
-typedef std::list<AddrRange>::iterator AddrRangeIter;
-typedef std::list<AddrRange>::const_iterator AddrRangeConstIter;
-
 class MemObject;
 
 /**
diff -r 5d4ebc92d32e -r 59fb5779ec6e src/mem/ruby/system/RubyPort.cc
--- a/src/mem/ruby/system/RubyPort.cc   Thu Oct 16 05:49:58 2014 -0400
+++ b/src/mem/ruby/system/RubyPort.cc   Thu Oct 16 05:49:59 2014 -0400
@@ -526,8 +526,8 @@
         ranges.splice(ranges.begin(),
                 ruby_port->master_ports[i]->getAddrRanges());
     }
-    for (AddrRangeConstIter r = ranges.begin(); r != ranges.end(); ++r)
-        DPRINTF(RubyPort, "%s\n", r->to_string());
+    for (const auto M5_VAR_USED &r : ranges)
+        DPRINTF(RubyPort, "%s\n", r.to_string());
     return ranges;
 }
 
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to