Deleted Added
sdiff udiff text old ( 6712:b95abe00dd9d ) new ( 7002:48a19d52d939 )
full compact
1
2/*
3 * Copyright (c) 1999 Mark D. Hill and David A. Wood
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions are
8 * met: redistributions of source code must retain the above copyright

--- 21 unchanged lines hidden (view full) ---

30/*
31 * $Id$
32 */
33
34#ifndef ADDRESS_H
35#define ADDRESS_H
36
37#include <iomanip>
38#include "mem/ruby/common/Global.hh"
39#include "mem/ruby/system/System.hh"
40#include "mem/ruby/system/NodeID.hh"
41#include "mem/ruby/system/MachineID.hh"
42
43const int ADDRESS_WIDTH = 64; // address width in bytes
44
45class Address;

--- 172 unchanged lines hidden (view full) ---

218 <------->
219 NUMBER_OF_MEMORY_MODULE_BITS
220 */
221}
222
223inline
224void Address::print(ostream& out) const
225{
226 out << "[" << hex << "0x" << m_address << "," << " line 0x" << maskLowOrderBits(RubySystem::getBlockSizeBits()) << dec << "]" << flush;
227}
228
229class Address;
230namespace __gnu_cxx {
231 template <> struct hash<Address>
232 {
233 size_t operator()(const Address &s) const { return (size_t) s.getAddress(); }
234 };
235}
236namespace std {
237 template <> struct equal_to<Address>
238 {
239 bool operator()(const Address& s1, const Address& s2) const { return s1 == s2; }
240 };
241}
242
243#endif //ADDRESS_H
244