ruby,gpu-compute: bugfix for GPU_VIPER* protocols
authorBrandon Potter <brandon.potter@amd.com>
Tue, 20 Feb 2018 18:19:39 +0000 (13:19 -0500)
committerAnthony Gutierrez <anthony.gutierrez@amd.com>
Fri, 13 Apr 2018 20:50:10 +0000 (20:50 +0000)
12db50c895 changed how directory mapping works, but it seems to have
broken the VIPER variants of the GPU protocols. The fix involves
declaring the function in the related '.sm' files.

Change-Id: I116980d42a4aa648369058b529c9f8d9693eb894
Reviewed-on: https://gem5-review.googlesource.com/8521
Reviewed-by: Anthony Gutierrez <anthony.gutierrez@amd.com>
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Anthony Gutierrez <anthony.gutierrez@amd.com>

src/mem/protocol/GPU_VIPER-TCC.sm
src/mem/protocol/GPU_VIPER_Region-TCC.sm
src/mem/protocol/MOESI_AMD_Base-Region-dir.sm

index 45477d8d8541a6d9afabbc6aad072dcce2b4c548..f8da4abf1a8f4d5b7b52af8281676563f760cfee 100644 (file)
@@ -126,6 +126,7 @@ machine(MachineType:TCC, "TCC Cache")
   void wakeUpAllBuffers();
   void wakeUpBuffers(Addr a);
 
+  MachineID mapAddressToMachine(Addr addr, MachineType mtype);
 
   // FUNCTION DEFINITIONS
   Tick clockEdge();
index e3243b3e144c74bf643094bf1efa0aa990a6d7ae..04d7b7a6f49217b98f8d879e5e702dcdf94a6860 100644 (file)
@@ -131,6 +131,7 @@ machine(MachineType:TCC, "TCC Cache")
   void wakeUpAllBuffers();
   void wakeUpBuffers(Addr a);
 
+  MachineID mapAddressToMachine(Addr addr, MachineType mtype);
 
   // FUNCTION DEFINITIONS
 
index 02b21189270240c76f56d15971a7ac8cb9c0a31b..cc5ceb0b50b37cf101c3d6100aa862d2cb51cf43 100644 (file)
@@ -210,6 +210,8 @@ machine(MachineType:Directory, "AMD_Base-like protocol")
   void wakeUpBuffers(Addr a);
   Cycles curCycle();
 
+  MachineID mapAddressToMachine(Addr addr, MachineType mtype);
+
   Entry getDirectoryEntry(Addr addr), return_by_pointer="yes" {
     Entry dir_entry := static_cast(Entry, "pointer", directory.lookup(addr));