1/* 2 * Copyright (c) 2007-2008 The Hewlett-Packard Development Company 3 * All rights reserved. 4 * 5 * Redistribution and use of this software in source and binary forms, 6 * with or without modification, are permitted provided that the 7 * following conditions are met: 8 * --- 176 unchanged lines hidden (view full) --- 185 if (entry != entryList.end()) { 186 freeList.push_back(*entry); 187 entryList.erase(entry); 188 } 189} 190 191template<class TlbFault> 192Fault |
193TLB::translateAtomic(RequestPtr &req, ThreadContext *tc, 194 bool write, bool execute) |
195{ 196 Addr vaddr = req->getVaddr(); 197 DPRINTF(TLB, "Translating vaddr %#x.\n", vaddr); 198 uint32_t flags = req->getFlags(); 199 bool storeCheck = flags & StoreCheck; 200 201 int seg = flags & mask(4); 202 --- 455 unchanged lines hidden (view full) --- 658 req->setFlags(Request::UNCACHEABLE); 659 req->setPaddr(x86LocalAPICAddress(tc->contextId(), paddr - baseAddr)); 660 } 661#endif 662 return NoFault; 663}; 664 665Fault |
666DTB::translateAtomic(RequestPtr &req, ThreadContext *tc, bool write) |
667{ |
668 return TLB::translateAtomic<FakeDTLBFault>(req, tc, write, false); |
669} 670 671Fault |
672ITB::translateAtomic(RequestPtr &req, ThreadContext *tc) |
673{ |
674 return TLB::translateAtomic<FakeITLBFault>(req, tc, false, true); |
675} 676 677#if FULL_SYSTEM 678 679Tick 680DTB::doMmuRegRead(ThreadContext *tc, Packet *pkt) 681{ 682 return tc->getCpuPtr()->ticks(1); --- 45 unchanged lines hidden --- |