tlb.hh (9423:43caa4ca5979) | tlb.hh (9446:644f2a2c9bfc) |
---|---|
1/* 2 * Copyright (c) 2006 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; --- 100 unchanged lines hidden (view full) --- 109 * @param context_id if this is virt->phys what context 110 * @param update_used should ew update the used bits in the 111 * entries on not useful if we are trying to do a va->pa without 112 * mucking with any state for a debug read for example. 113 * @return A pointer to a tlb entry 114 */ 115 TlbEntry *lookup(Addr va, int partition_id, bool real, int context_id = 0, 116 bool update_used = true); | 1/* 2 * Copyright (c) 2006 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; --- 100 unchanged lines hidden (view full) --- 109 * @param context_id if this is virt->phys what context 110 * @param update_used should ew update the used bits in the 111 * entries on not useful if we are trying to do a va->pa without 112 * mucking with any state for a debug read for example. 113 * @return A pointer to a tlb entry 114 */ 115 TlbEntry *lookup(Addr va, int partition_id, bool real, int context_id = 0, 116 bool update_used = true); |
117 118 /** Remove all entries from the TLB */ 119 void flushAll(); 120 |
|
117 protected: 118 /** Insert a PTE into the TLB. */ 119 void insert(Addr vpn, int partition_id, int context_id, bool real, 120 const PageTableEntry& PTE, int entry = -1); 121 122 /** Given an entry id, read that tlb entries' tag. */ 123 uint64_t TagRead(int entry); 124 | 121 protected: 122 /** Insert a PTE into the TLB. */ 123 void insert(Addr vpn, int partition_id, int context_id, bool real, 124 const PageTableEntry& PTE, int entry = -1); 125 126 /** Given an entry id, read that tlb entries' tag. */ 127 uint64_t TagRead(int entry); 128 |
125 /** Remove all entries from the TLB */ 126 void flushAll(); 127 | |
128 /** Remove all non-locked entries from the tlb that match partition id. */ 129 void demapAll(int partition_id); 130 131 /** Remove all entries that match a given context/partition id. */ 132 void demapContext(int partition_id, int context_id); 133 134 /** Remve all entries that match a certain partition id, (contextid), and 135 * va). */ --- 61 unchanged lines hidden --- | 129 /** Remove all non-locked entries from the tlb that match partition id. */ 130 void demapAll(int partition_id); 131 132 /** Remove all entries that match a given context/partition id. */ 133 void demapContext(int partition_id, int context_id); 134 135 /** Remve all entries that match a certain partition id, (contextid), and 136 * va). */ --- 61 unchanged lines hidden --- |