1/* 2 * Copyright (c) 2010 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 515 unchanged lines hidden (view full) --- 524 readMisses++; 525 526 // start translation table walk, pass variables rather than 527 // re-retreaving in table walker for speed 528 DPRINTF(TLB, "TLB Miss: Starting hardware table walker for %#x(%d)\n", 529 vaddr, contextId); 530 fault = tableWalker->walk(req, tc, contextId, mode, translation, 531 timing); |
532 if (timing && fault == NoFault) { |
533 delay = true; 534 // for timing mode, return and wait for table walk 535 return fault; 536 } 537 if (fault) 538 return fault; 539 540 te = lookup(vaddr, contextId); --- 148 unchanged lines hidden (view full) --- 689 assert(translation); 690 bool delay = false; 691 Fault fault; 692#if FULL_SYSTEM 693 fault = translateFs(req, tc, mode, translation, delay, true); 694#else 695 fault = translateSe(req, tc, mode, translation, delay, true); 696#endif |
697 DPRINTF(TLB, "Translation returning delay=%d fault=%d\n", delay, fault != 698 NoFault); |
699 if (!delay) 700 translation->finish(fault, req, tc, mode); 701 else 702 translation->markDelayed(); 703 return fault; 704} 705 706Port* --- 16 unchanged lines hidden --- |