page_table.hh (5004:7d94cedab264) | page_table.hh (5184:8782de2949e5) |
---|---|
1/* 2 * Copyright (c) 2003 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 32 unchanged lines hidden (view full) --- 41#include "sim/faults.hh" 42#include "arch/isa_traits.hh" 43#include "arch/tlb.hh" 44#include "base/hashmap.hh" 45#include "mem/request.hh" 46#include "sim/host.hh" 47#include "sim/serialize.hh" 48 | 1/* 2 * Copyright (c) 2003 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 32 unchanged lines hidden (view full) --- 41#include "sim/faults.hh" 42#include "arch/isa_traits.hh" 43#include "arch/tlb.hh" 44#include "base/hashmap.hh" 45#include "mem/request.hh" 46#include "sim/host.hh" 47#include "sim/serialize.hh" 48 |
49class System; | 49class Process; |
50 51/** 52 * Page Table Declaration. 53 */ 54class PageTable 55{ 56 protected: 57 typedef m5::hash_map<Addr, TheISA::TlbEntry> PTable; --- 5 unchanged lines hidden (view full) --- 63 TheISA::TlbEntry entry; 64 }; 65 66 struct cacheElement pTableCache[3]; 67 68 const Addr pageSize; 69 const Addr offsetMask; 70 | 50 51/** 52 * Page Table Declaration. 53 */ 54class PageTable 55{ 56 protected: 57 typedef m5::hash_map<Addr, TheISA::TlbEntry> PTable; --- 5 unchanged lines hidden (view full) --- 63 TheISA::TlbEntry entry; 64 }; 65 66 struct cacheElement pTableCache[3]; 67 68 const Addr pageSize; 69 const Addr offsetMask; 70 |
71 System *system; | 71 Process *process; |
72 73 public: 74 | 72 73 public: 74 |
75 PageTable(System *_system, Addr _pageSize = TheISA::VMPageSize); | 75 PageTable(Process *_process, Addr _pageSize = TheISA::VMPageSize); |
76 77 ~PageTable(); 78 79 Addr pageAlign(Addr a) { return (a & ~offsetMask); } 80 Addr pageOffset(Addr a) { return (a & offsetMask); } 81 82 void allocate(Addr vaddr, int64_t size); 83 --- 43 unchanged lines hidden --- | 76 77 ~PageTable(); 78 79 Addr pageAlign(Addr a) { return (a & ~offsetMask); } 80 Addr pageOffset(Addr a) { return (a & offsetMask); } 81 82 void allocate(Addr vaddr, int64_t size); 83 --- 43 unchanged lines hidden --- |