# HG changeset patch
# User Derek Hower <d...@cs.wisc.edu>
# Date 1253065140 18000
# Node ID de4b394c67924fb439bd7df2b8bd0ae84647f0ab
# Parent  346b8460b306c4c2e6fe28771cff1b9810df68a7
ruby: added broadcast mechanism

diff --git a/src/mem/protocol/RubySlicc_ComponentMapping.sm 
b/src/mem/protocol/RubySlicc_ComponentMapping.sm
--- a/src/mem/protocol/RubySlicc_ComponentMapping.sm
+++ b/src/mem/protocol/RubySlicc_ComponentMapping.sm
@@ -31,6 +31,7 @@
 
 // NodeID map_address_to_node(Address addr);
 MachineID mapAddressToRange(Address addr, MachineType type, int low, int high);
+NetDest broadcast(MachineType type);
 MachineID map_Address_to_DMA(Address addr);
 MachineID map_Address_to_Directory(Address addr);
 NodeID map_Address_to_DirectoryNode(Address addr);
diff --git a/src/mem/ruby/slicc_interface/RubySlicc_ComponentMapping.hh 
b/src/mem/ruby/slicc_interface/RubySlicc_ComponentMapping.hh
--- a/src/mem/ruby/slicc_interface/RubySlicc_ComponentMapping.hh
+++ b/src/mem/ruby/slicc_interface/RubySlicc_ComponentMapping.hh
@@ -85,6 +85,17 @@
   return dma;
 }
 
+inline 
+NetDest broadcast(MachineType type)
+{
+  NetDest dest;
+  for (int i=0; i<MachineType_base_count(type); i++) {
+    MachineID mach = {type, i};
+    dest.add(mach);
+  }
+  return dest;
+}
+
 inline
 MachineID mapAddressToRange(const Address & addr, MachineType type, int 
low_bit, int num_bits)
 {
_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to