base.cc (13564:9bbd53a77887) | base.cc (13717:11e81e2a98bd) |
---|---|
1/* 2 * Copyright (c) 2012-2013, 2018 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 --- 464 unchanged lines hidden (view full) --- 473 if (is_fill && !is_error) { 474 DPRINTF(Cache, "Block for addr %#llx being updated in Cache\n", 475 pkt->getAddr()); 476 477 const bool allocate = (writeAllocator && mshr->wasWholeLineWrite) ? 478 writeAllocator->allocate() : mshr->allocOnFill(); 479 blk = handleFill(pkt, blk, writebacks, allocate); 480 assert(blk != nullptr); | 1/* 2 * Copyright (c) 2012-2013, 2018 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 --- 464 unchanged lines hidden (view full) --- 473 if (is_fill && !is_error) { 474 DPRINTF(Cache, "Block for addr %#llx being updated in Cache\n", 475 pkt->getAddr()); 476 477 const bool allocate = (writeAllocator && mshr->wasWholeLineWrite) ? 478 writeAllocator->allocate() : mshr->allocOnFill(); 479 blk = handleFill(pkt, blk, writebacks, allocate); 480 assert(blk != nullptr); |
481 ppFill->notify(pkt); |
|
481 } 482 483 if (blk && blk->isValid() && pkt->isClean() && !pkt->isInvalidate()) { 484 // The block was marked not readable while there was a pending 485 // cache maintenance operation, restore its flag. 486 blk->status |= BlkReadable; 487 488 // This was a cache clean operation (without invalidate) --- 1729 unchanged lines hidden (view full) --- 2218 ; 2219} 2220 2221void 2222BaseCache::regProbePoints() 2223{ 2224 ppHit = new ProbePointArg<PacketPtr>(this->getProbeManager(), "Hit"); 2225 ppMiss = new ProbePointArg<PacketPtr>(this->getProbeManager(), "Miss"); | 482 } 483 484 if (blk && blk->isValid() && pkt->isClean() && !pkt->isInvalidate()) { 485 // The block was marked not readable while there was a pending 486 // cache maintenance operation, restore its flag. 487 blk->status |= BlkReadable; 488 489 // This was a cache clean operation (without invalidate) --- 1729 unchanged lines hidden (view full) --- 2219 ; 2220} 2221 2222void 2223BaseCache::regProbePoints() 2224{ 2225 ppHit = new ProbePointArg<PacketPtr>(this->getProbeManager(), "Hit"); 2226 ppMiss = new ProbePointArg<PacketPtr>(this->getProbeManager(), "Miss"); |
2227 ppFill = new ProbePointArg<PacketPtr>(this->getProbeManager(), "Fill"); |
|
2226} 2227 2228/////////////// 2229// 2230// CpuSidePort 2231// 2232/////////////// 2233bool --- 213 unchanged lines hidden --- | 2228} 2229 2230/////////////// 2231// 2232// CpuSidePort 2233// 2234/////////////// 2235bool --- 213 unchanged lines hidden --- |