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 ---