pagetable.hh (5543:3af77710f397) | pagetable.hh (5568:d14250d688d2) |
---|---|
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; --- 40 unchanged lines hidden (view full) --- 49 operator Addr() const { return addr; } 50 const VAddr &operator=(Addr a) { addr = a; return *this; } 51 52 Addr vpn() const { return (addr & ImplMask) >> PageShift; } 53 Addr page() const { return addr & PageMask; } 54 Addr offset() const { return addr & PageOffset; } 55 56 Addr level3() const | 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; --- 40 unchanged lines hidden (view full) --- 49 operator Addr() const { return addr; } 50 const VAddr &operator=(Addr a) { addr = a; return *this; } 51 52 Addr vpn() const { return (addr & ImplMask) >> PageShift; } 53 Addr page() const { return addr & PageMask; } 54 Addr offset() const { return addr & PageOffset; } 55 56 Addr level3() const |
57 { return AlphaISA::PteAddr(addr >> PageShift); } | 57 { return PteAddr(addr >> PageShift); } |
58 Addr level2() const | 58 Addr level2() const |
59 { return AlphaISA::PteAddr(addr >> NPtePageShift + PageShift); } | 59 { return PteAddr(addr >> NPtePageShift + PageShift); } |
60 Addr level1() const | 60 Addr level1() const |
61 { return AlphaISA::PteAddr(addr >> 2 * NPtePageShift + PageShift); } | 61 { return PteAddr(addr >> 2 * NPtePageShift + PageShift); } |
62 }; 63 64 struct PageTableEntry 65 { 66 PageTableEntry(uint64_t e) : entry(e) {} 67 uint64_t entry; 68 operator uint64_t() const { return entry; } 69 const PageTableEntry &operator=(uint64_t e) { entry = e; return *this; } --- 65 unchanged lines hidden --- | 62 }; 63 64 struct PageTableEntry 65 { 66 PageTableEntry(uint64_t e) : entry(e) {} 67 uint64_t entry; 68 operator uint64_t() const { return entry; } 69 const PageTableEntry &operator=(uint64_t e) { entry = e; return *this; } --- 65 unchanged lines hidden --- |