Lines Matching refs:req
147 TLB::checkCacheability(const RequestPtr &req)
152 if ((req->getVaddr() & VAddrUncacheable) == VAddrUncacheable) {
154 req->setFlags(Request::UNCACHEABLE | Request::STRICT_ORDER);
287 TLB::translateInst(const RequestPtr &req, ThreadContext *tc)
295 req->setFlags(Request::PHYSICAL);
297 if (req->getFlags() & Request::PHYSICAL) {
301 req->setPaddr(req->getVaddr());
302 return checkCacheability(req);
313 Fault fault = p->pTable->translate(req);
322 TLB::translateData(const RequestPtr &req, ThreadContext *tc, bool write)
330 req->setFlags(Request::PHYSICAL);
332 if (req->getFlags() & Request::PHYSICAL) {
336 req->setPaddr(req->getVaddr());
337 return checkCacheability(req);
353 assert(req->getSize() > 0);
354 if (req->getVaddr() + req->getSize() - 1 < req->getVaddr())
355 return make_shared<GenericPageTableFault>(req->getVaddr());
359 Fault fault = p->pTable->translate(req);
368 TLB::translateAtomic(const RequestPtr &req, ThreadContext *tc, Mode mode)
371 return translateInst(req, tc);
373 return translateData(req, tc, mode == Write);
377 TLB::translateTiming(const RequestPtr &req, ThreadContext *tc,
381 translation->finish(translateAtomic(req, tc, mode), req, tc, mode);
385 TLB::finalizePhysical(const RequestPtr &req,