diff options
Diffstat (limited to 'src/mem/gems_common')
-rw-r--r-- | src/mem/gems_common/Map.hh | 37 | ||||
-rw-r--r-- | src/mem/gems_common/PrioHeap.hh | 12 | ||||
-rw-r--r-- | src/mem/gems_common/RefCnt.hh | 12 | ||||
-rw-r--r-- | src/mem/gems_common/Vector.hh | 18 | ||||
-rw-r--r-- | src/mem/gems_common/std-includes.hh | 57 | ||||
-rw-r--r-- | src/mem/gems_common/util.cc | 6 | ||||
-rw-r--r-- | src/mem/gems_common/util.hh | 12 |
7 files changed, 58 insertions, 96 deletions
diff --git a/src/mem/gems_common/Map.hh b/src/mem/gems_common/Map.hh index 6e581d375..7b3c26279 100644 --- a/src/mem/gems_common/Map.hh +++ b/src/mem/gems_common/Map.hh @@ -34,12 +34,19 @@ #ifndef MAP_H #define MAP_H +#include <iostream> + #include "base/hashmap.hh" #include "mem/gems_common/Vector.hh" template <class KEY_TYPE, class VALUE_TYPE> class Map { + private: + typedef typename m5::hash_map<KEY_TYPE, VALUE_TYPE> MapType; + typedef typename MapType::iterator iterator; + typedef typename MapType::const_iterator const_iterator; + public: Map() { /* empty */ } ~Map() { /* empty */ } @@ -54,7 +61,7 @@ public: void deleteValues(); VALUE_TYPE& lookup(const KEY_TYPE& key) const; void clear() { m_map.clear(); } - void print(ostream& out) const; + void print(std::ostream& out) const; // Synonyms void remove(const KEY_TYPE& key) { erase(key); } @@ -73,7 +80,8 @@ private: }; template <class KEY_TYPE, class VALUE_TYPE> -ostream& operator<<(ostream& out, const Map<KEY_TYPE, VALUE_TYPE>& map); +std::ostream& +operator<<(std::ostream& out, const Map<KEY_TYPE, VALUE_TYPE>& map); // ********************* @@ -94,7 +102,7 @@ template <class KEY_TYPE, class VALUE_TYPE> VALUE_TYPE& Map<KEY_TYPE, VALUE_TYPE>::lookup(const KEY_TYPE& key) const { if (!exist(key)) - cerr << *this << " is looking for " << key << endl; + std::cerr << *this << " is looking for " << key << std::endl; assert(exist(key)); return m_map[key]; } @@ -103,7 +111,7 @@ template <class KEY_TYPE, class VALUE_TYPE> Vector<KEY_TYPE> Map<KEY_TYPE, VALUE_TYPE>::keys() const { Vector<KEY_TYPE> keys; - typename hash_map<KEY_TYPE, VALUE_TYPE>::const_iterator iter; + const_iterator iter; for (iter = m_map.begin(); iter != m_map.end(); iter++) { keys.insertAtBottom((*iter).first); } @@ -114,8 +122,8 @@ template <class KEY_TYPE, class VALUE_TYPE> Vector<VALUE_TYPE> Map<KEY_TYPE, VALUE_TYPE>::values() const { Vector<VALUE_TYPE> values; - typename hash_map<KEY_TYPE, VALUE_TYPE>::const_iterator iter; - pair<KEY_TYPE, VALUE_TYPE> p; + const_iterator iter; + std::pair<KEY_TYPE, VALUE_TYPE> p; for (iter = m_map.begin(); iter != m_map.end(); iter++) { p = *iter; @@ -127,8 +135,8 @@ Vector<VALUE_TYPE> Map<KEY_TYPE, VALUE_TYPE>::values() const template <class KEY_TYPE, class VALUE_TYPE> void Map<KEY_TYPE, VALUE_TYPE>::deleteKeys() { - typename hash_map<KEY_TYPE, VALUE_TYPE>::const_iterator iter; - pair<KEY_TYPE, VALUE_TYPE> p; + const_iterator iter; + std::pair<KEY_TYPE, VALUE_TYPE> p; for (iter = m_map.begin(); iter != m_map.end(); iter++) { p = *iter; @@ -139,8 +147,8 @@ void Map<KEY_TYPE, VALUE_TYPE>::deleteKeys() template <class KEY_TYPE, class VALUE_TYPE> void Map<KEY_TYPE, VALUE_TYPE>::deleteValues() { - typename hash_map<KEY_TYPE, VALUE_TYPE>::const_iterator iter; - pair<KEY_TYPE, VALUE_TYPE> p; + const_iterator iter; + std::pair<KEY_TYPE, VALUE_TYPE> p; for (iter = m_map.begin(); iter != m_map.end(); iter++) { p = *iter; @@ -149,10 +157,10 @@ void Map<KEY_TYPE, VALUE_TYPE>::deleteValues() } template <class KEY_TYPE, class VALUE_TYPE> -void Map<KEY_TYPE, VALUE_TYPE>::print(ostream& out) const +void Map<KEY_TYPE, VALUE_TYPE>::print(std::ostream& out) const { - typename hash_map<KEY_TYPE, VALUE_TYPE>::const_iterator iter; - pair<KEY_TYPE, VALUE_TYPE> p; + const_iterator iter; + std::pair<KEY_TYPE, VALUE_TYPE> p; out << "["; for (iter = m_map.begin(); iter != m_map.end(); iter++) { @@ -164,7 +172,8 @@ void Map<KEY_TYPE, VALUE_TYPE>::print(ostream& out) const } template <class KEY_TYPE, class VALUE_TYPE> -ostream& operator<<(ostream& out, const Map<KEY_TYPE, VALUE_TYPE>& map) +std::ostream& +operator<<(std::ostream& out, const Map<KEY_TYPE, VALUE_TYPE>& map) { map.print(out); return out; diff --git a/src/mem/gems_common/PrioHeap.hh b/src/mem/gems_common/PrioHeap.hh index acdcc0eba..d6183cf40 100644 --- a/src/mem/gems_common/PrioHeap.hh +++ b/src/mem/gems_common/PrioHeap.hh @@ -29,6 +29,8 @@ #ifndef PRIOHEAP_H #define PRIOHEAP_H +#include <iostream> + #include "mem/gems_common/Vector.hh" typedef unsigned int HeapIndex; @@ -49,7 +51,7 @@ public: const TYPE& peekMin() const; const TYPE& peekElement(int index) const; TYPE extractMin(); - void print(ostream& out) const; + void print(std::ostream& out) const; private: // Private Methods bool verifyHeap() const; @@ -67,7 +69,7 @@ private: // Output operator declaration template <class TYPE> -ostream& operator<<(ostream& out, const PrioHeap<TYPE>& obj); +std::ostream& operator<<(std::ostream& out, const PrioHeap<TYPE>& obj); // ******************* Helper Functions ******************* inline @@ -210,7 +212,7 @@ void PrioHeap<TYPE>::heapify() } template <class TYPE> -void PrioHeap<TYPE>::print(ostream& out) const +void PrioHeap<TYPE>::print(std::ostream& out) const { Vector<TYPE> copyHeap(m_heap); @@ -239,10 +241,10 @@ void PrioHeap<TYPE>::print(ostream& out) const // Output operator definition template <class TYPE> -ostream& operator<<(ostream& out, const PrioHeap<TYPE>& obj) +std::ostream& operator<<(std::ostream& out, const PrioHeap<TYPE>& obj) { obj.print(out); - out << flush; + out << std::flush; return out; } diff --git a/src/mem/gems_common/RefCnt.hh b/src/mem/gems_common/RefCnt.hh index fc1ddbae9..75160fc80 100644 --- a/src/mem/gems_common/RefCnt.hh +++ b/src/mem/gems_common/RefCnt.hh @@ -29,6 +29,8 @@ #ifndef REFCNT_H #define REFCNT_H +#include <iostream> + template <class TYPE> class RefCnt { public: @@ -44,7 +46,7 @@ public: TYPE* ref() { return m_data_ptr; } TYPE* mod_ref() const { return m_data_ptr; } void freeRef(); - void print(ostream& out) const; + void print(std::ostream& out) const; // Public copy constructor and assignment operator RefCnt(const RefCnt& obj); @@ -61,7 +63,7 @@ private: // Output operator declaration template <class TYPE> inline -ostream& operator<<(ostream& out, const RefCnt<TYPE>& obj); +std::ostream& operator<<(std::ostream& out, const RefCnt<TYPE>& obj); // ******************* Definitions ******************* @@ -103,7 +105,7 @@ void RefCnt<TYPE>::freeRef() template <class TYPE> inline -void RefCnt<TYPE>::print(ostream& out) const +void RefCnt<TYPE>::print(std::ostream& out) const { if (m_data_ptr == NULL) { out << "[RefCnt: Null]"; @@ -150,10 +152,10 @@ RefCnt<TYPE>& RefCnt<TYPE>::operator=(const RefCnt<TYPE>& obj) // Output operator definition template <class TYPE> inline -ostream& operator<<(ostream& out, const RefCnt<TYPE>& obj) +std::ostream& operator<<(std::ostream& out, const RefCnt<TYPE>& obj) { obj.print(out); - out << flush; + out << std::flush; return out; } diff --git a/src/mem/gems_common/Vector.hh b/src/mem/gems_common/Vector.hh index 7e648e7c9..e10849213 100644 --- a/src/mem/gems_common/Vector.hh +++ b/src/mem/gems_common/Vector.hh @@ -38,7 +38,9 @@ #ifndef VECTOR_H #define VECTOR_H -#include "mem/gems_common/std-includes.hh" +#include <cassert> +#include <iostream> +#include <vector> template <class TYPE> class Vector @@ -63,7 +65,7 @@ public: // elements and sets them to NULL, can only // be used when the TYPE is a pointer type. void removeFromTop(int num); // removes elements from top - void print(ostream& out) const; + void print(std::ostream& out) const; // Array Reference operator overloading @@ -84,7 +86,7 @@ private: }; template <class TYPE> -ostream& operator<<(ostream& out, const Vector<TYPE>& vec); +std::ostream& operator<<(std::ostream& out, const Vector<TYPE>& vec); // ********************* @@ -139,7 +141,7 @@ void Vector<TYPE>::setSize(int new_size) { // FIXME - this should also decrease or shrink the size of the array at some point. if (new_size > m_max_size) { - grow(max((m_max_size+1)*2, new_size)); + grow(std::max((m_max_size+1)*2, new_size)); } m_size = new_size; #ifndef NO_VECTOR_BOUNDS_CHECKS @@ -154,7 +156,7 @@ void Vector<TYPE>::increaseSize(int new_size, const TYPE& reset) { assert(new_size >= m_size); if (new_size >= m_max_size) { - grow(max((m_max_size+1)*2, new_size)); + grow(std::max((m_max_size+1)*2, new_size)); } int old_size = m_size; m_size = new_size; @@ -243,7 +245,7 @@ void Vector<TYPE>::deletePointers() } template <class TYPE> -void Vector<TYPE>::print(ostream& out) const +void Vector<TYPE>::print(std::ostream& out) const { out << "[ "; for(int i=0; i<m_size; i++) { @@ -253,7 +255,7 @@ void Vector<TYPE>::print(ostream& out) const out << ref(i); } out << " ]"; - out << flush; + out << std::flush; } // Copy constructor @@ -325,7 +327,7 @@ void Vector<TYPE>::grow(int new_max_size) } template <class TYPE> -ostream& operator<<(ostream& out, const Vector<TYPE>& vec) +std::ostream& operator<<(std::ostream& out, const Vector<TYPE>& vec) { vec.print(out); return out; diff --git a/src/mem/gems_common/std-includes.hh b/src/mem/gems_common/std-includes.hh deleted file mode 100644 index 0c5201d34..000000000 --- a/src/mem/gems_common/std-includes.hh +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (c) 1999-2005 Mark D. Hill and David A. Wood - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer; - * redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution; - * neither the name of the copyright holders nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/* - * $Id: std-includes.hh,v 3.7 2003/02/24 21:05:24 xu Exp $ - */ - -#ifndef INCLUDES_H -#define INCLUDES_H - -#include <cstring> -#include <iomanip> -#include <iostream> -#include <fstream> -#include <sstream> -#include <string> -#include <ext/hash_map> -#include <stdio.h> -#include <math.h> -#include <time.h> -#include <stdlib.h> -#include <unistd.h> -#include <sys/time.h> -#include <sys/resource.h> -#include <cassert> - -using namespace std; -using namespace __gnu_cxx; - -typedef unsigned int uint; - -#endif //INCLUDES_H diff --git a/src/mem/gems_common/util.cc b/src/mem/gems_common/util.cc index d2ca8cb96..d7ce2e893 100644 --- a/src/mem/gems_common/util.cc +++ b/src/mem/gems_common/util.cc @@ -31,9 +31,13 @@ */ #include <cassert> +#include <iomanip> +#include <sstream> #include "mem/gems_common/util.hh" +using namespace std; + // Split a string into a head and tail strings on the specified // character. Return the head and the string passed in is modified by // removing the head, leaving just the tail. @@ -43,7 +47,7 @@ string string_split(string& str, char split_character) string head = ""; string tail = ""; - uint counter = 0; + unsigned counter = 0; while(counter < str.size()) { if (str[counter] == split_character) { counter++; diff --git a/src/mem/gems_common/util.hh b/src/mem/gems_common/util.hh index 7afe57a85..f5a86f325 100644 --- a/src/mem/gems_common/util.hh +++ b/src/mem/gems_common/util.hh @@ -33,13 +33,13 @@ #ifndef UTIL_H #define UTIL_H -#include "mem/gems_common/std-includes.hh" +#include <string> -string string_split(string& str, char split_character); -string bool_to_string(bool value); -string int_to_string(int n, bool zero_fill = false, int width = 0); -float string_to_float(string& str); -bool string_to_bool(const string & str); +std::string string_split(std::string& str, char split_character); +std::string bool_to_string(bool value); +std::string int_to_string(int n, bool zero_fill = false, int width = 0); +float string_to_float(std::string& str); +bool string_to_bool(const std::string & str); int log_int(long long n); bool is_power_of_2(long long n); |