1/*
2 * Copyright (c) 2007 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 *

--- 366 unchanged lines hidden (view full) ---

375 // Do legacy PSE.
376 state = PSEPD;
377 } else {
378 // Do legacy non PSE.
379 state = PD;
380 }
381 }
382 }
383
384 nextState = Ready;
385 entry.vaddr = vaddr;
386
387 enableNX = efer.nxe;
388
389 RequestPtr request =
390 new Request(top, size, PHYSICAL | cr3.pcd ? UNCACHEABLE : 0);
391 read = new Packet(request, MemCmd::ReadExReq, Packet::Broadcast);

--- 199 unchanged lines hidden (view full) ---

591 }
592 }
593 return NULL;
594}
595
596void
597TLB::invalidateAll()
598{
599 DPRINTF(TLB, "Invalidating all entries.\n");
600 while (!entryList.empty()) {
601 TlbEntry *entry = entryList.front();
602 entryList.pop_front();
603 freeList.push_back(entry);
604 }
605}
606
607void
608TLB::invalidateNonGlobal()
609{
610 DPRINTF(TLB, "Invalidating all non global entries.\n");
611 EntryList::iterator entryIt;
612 for (entryIt = entryList.begin(); entryIt != entryList.end();) {
613 if (!(*entryIt)->global) {
614 freeList.push_back(*entryIt);
615 entryList.erase(entryIt++);
616 } else {
617 entryIt++;
618 }
619 }
620}
621
622void
623TLB::demapPage(Addr va)
624{
625}
626
627template<class TlbFault>

--- 442 unchanged lines hidden ---