Lines Matching refs:req

338 AtomicSimpleCPU::genMemFragmentRequest(const RequestPtr& req, Addr frag_addr,
356 req->setVirt(0, frag_addr, frag_size, flags, dataMasterId(),
358 req->setByteEnable(std::vector<bool>(it_start, it_end));
363 req->setVirt(0, frag_addr, frag_size, flags, dataMasterId(),
365 req->setByteEnable(std::vector<bool>());
380 const RequestPtr &req = data_read_req;
387 req->taskId(taskId());
396 predicate = genMemFragmentRequest(req, frag_addr, size, flags,
401 fault = thread->dtb->translateAtomic(req, thread->getTC(),
407 !req->getFlags().isSet(Request::NO_ACCESS)) {
408 Packet pkt(req, Packet::makeReadCmd(req));
411 if (req->isMmappedIpr()) {
420 if (req->isLLSC()) {
421 TheISA::handleLockedRead(thread, req);
427 if (req->isPrefetch()) {
436 if (req->isLockedRMW() && fault == NoFault) {
470 const RequestPtr &req = data_write_req;
477 req->taskId(taskId());
487 predicate = genMemFragmentRequest(req, frag_addr, size, flags,
492 fault = thread->dtb->translateAtomic(req, thread->getTC(),
499 if (req->isLLSC()) {
502 TheISA::handleLockedWrite(thread, req,
504 } else if (req->isSwap()) {
506 if (req->isCondSwap()) {
508 req->setExtraData(*res);
512 if (do_access && !req->getFlags().isSet(Request::NO_ACCESS)) {
513 Packet pkt(req, Packet::makeWriteCmd(req));
516 if (req->isMmappedIpr()) {
528 if (req->isSwap()) {
534 if (res && !req->isSwap()) {
535 *res = req->getExtraData();
543 if (req->isLockedRMW() && fault == NoFault) {
548 if (fault != NoFault && req->isPrefetch()) {
575 const RequestPtr &req = data_amo_req;
597 req->taskId(taskId());
598 req->setVirt(0, addr, size, flags, dataMasterId(),
602 Fault fault = thread->dtb->translateAtomic(req, thread->getTC(),
606 if (fault == NoFault && !req->getFlags().isSet(Request::NO_ACCESS)) {
609 Packet pkt(req, Packet::makeWriteCmd(req));
612 if (req->isMmappedIpr())
621 assert(!req->isLLSC());
624 if (fault != NoFault && req->isPrefetch()) {