cpu: Add a PC-value to the traffic generator requests
authorStephan Diestelhorst <stephan.diestelhorst@arm.com>
Mon, 2 Mar 2015 09:00:31 +0000 (04:00 -0500)
committerStephan Diestelhorst <stephan.diestelhorst@arm.com>
Mon, 2 Mar 2015 09:00:31 +0000 (04:00 -0500)
Have the traffic generator add its masterID as the PC address to the
requests. That way, prefetchers (and other components) that use a PC
for request classification will see per-tester streams of requests.
This enables us to test strided prefetchers with the memchecker, too.

src/cpu/testers/traffic_gen/generators.cc

index f0cf14206ce2ae106e3800c2212cd26ae9194e6a..300bcc1227c5df93f150d78b603452e36f7b0e22 100644 (file)
@@ -57,6 +57,9 @@ BaseGen::getPacket(Addr addr, unsigned size, const MemCmd& cmd,
 {
     // Create new request
     Request *req = new Request(addr, size, flags, masterID);
+    // Dummy PC to have PC-based prefetchers latch on; get entropy into higher
+    // bits
+    req->setPC(((Addr)masterID) << 2);
 
     // Embed it in a packet
     PacketPtr pkt = new Packet(req, cmd);