Deleted Added
sdiff udiff text old ( 5891:73084c6bb183 ) new ( 5894:8091ac99341a )
full compact
1/*
2 * Copyright (c) 2001-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;

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

312 accesses
313 .name(name() + ".accesses")
314 .desc("ITB accesses");
315
316 accesses = hits + misses;
317}
318
319Fault
320ITB::translateAtomic(RequestPtr &req, ThreadContext *tc)
321{
322 //If this is a pal pc, then set PHYSICAL
323 if (FULL_SYSTEM && PcPAL(req->getPC()))
324 req->setFlags(Request::PHYSICAL);
325
326 if (PcPAL(req->getPC())) {
327 // strip off PAL PC marker (lsb is 1)
328 req->setPaddr((req->getVaddr() & ~3) & PAddrImplMask);

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

396 // check that the physical address is ok (catch bad physical addresses)
397 if (req->getPaddr() & ~PAddrImplMask)
398 return genMachineCheckFault();
399
400 return checkCacheability(req, true);
401
402}
403
404///////////////////////////////////////////////////////////////////////
405//
406// Alpha DTB
407//
408DTB::DTB(const Params *p)
409 : TLB(p)
410{}
411

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

474
475 hits = read_hits + write_hits;
476 misses = read_misses + write_misses;
477 acv = read_acv + write_acv;
478 accesses = read_accesses + write_accesses;
479}
480
481Fault
482DTB::translateAtomic(RequestPtr &req, ThreadContext *tc, bool write)
483{
484 Addr pc = tc->readPC();
485
486 mode_type mode =
487 (mode_type)DTB_CM_CM(tc->readMiscRegNoEffect(IPR_DTB_CM));
488
489 /**
490 * Check for alignment faults

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

611
612 // check that the physical address is ok (catch bad physical addresses)
613 if (req->getPaddr() & ~PAddrImplMask)
614 return genMachineCheckFault();
615
616 return checkCacheability(req);
617}
618
619TlbEntry &
620TLB::index(bool advance)
621{
622 TlbEntry *entry = &table[nlu];
623
624 if (advance)
625 nextnlu();
626

--- 16 unchanged lines hidden ---