pagetable.hh (5004:7d94cedab264) | pagetable.hh (5015:6406d713c713) |
---|---|
1/* 2 * Copyright (c) 2002-2005 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; --- 78 unchanged lines hidden (view full) --- 87 bool valid() const { return (entry >> 0) & 0x1; } 88 89 Addr paddr() const { return _pfn() << PageShift; } 90 }; 91 92 // ITB/DTB table entry 93 struct TlbEntry 94 { | 1/* 2 * Copyright (c) 2002-2005 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; --- 78 unchanged lines hidden (view full) --- 87 bool valid() const { return (entry >> 0) & 0x1; } 88 89 Addr paddr() const { return _pfn() << PageShift; } 90 }; 91 92 // ITB/DTB table entry 93 struct TlbEntry 94 { |
95 Addr pageStart; |
|
95 //Construct an entry that maps to physical address addr. | 96 //Construct an entry that maps to physical address addr. |
96 TlbEntry(Addr addr) 97 { 98 } | 97 TlbEntry(Addr addr) : pageStart(addr) 98 {} 99 TlbEntry() 100 {} |
99 100 Addr tag; // virtual page number tag 101 Addr ppn; // physical page number 102 uint8_t xre; // read permissions - VMEM_PERM_* mask 103 uint8_t xwe; // write permissions - VMEM_PERM_* mask 104 uint8_t asn; // address space number 105 bool asma; // address space match 106 bool fonr; // fault on read 107 bool fonw; // fault on write 108 bool valid; // valid page table entry 109 110 void serialize(std::ostream &os); 111 void unserialize(Checkpoint *cp, const std::string §ion); 112 }; 113 114}; 115#endif // __ARCH_ALPHA_PAGETABLE_H__ 116 | 101 102 Addr tag; // virtual page number tag 103 Addr ppn; // physical page number 104 uint8_t xre; // read permissions - VMEM_PERM_* mask 105 uint8_t xwe; // write permissions - VMEM_PERM_* mask 106 uint8_t asn; // address space number 107 bool asma; // address space match 108 bool fonr; // fault on read 109 bool fonw; // fault on write 110 bool valid; // valid page table entry 111 112 void serialize(std::ostream &os); 113 void unserialize(Checkpoint *cp, const std::string §ion); 114 }; 115 116}; 117#endif // __ARCH_ALPHA_PAGETABLE_H__ 118 |