summaryrefslogtreecommitdiff
path: root/src/mem/ruby/slicc_interface
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem/ruby/slicc_interface')
-rw-r--r--src/mem/ruby/slicc_interface/AbstractController.hh4
-rw-r--r--src/mem/ruby/slicc_interface/RubySlicc_ComponentMapping.hh11
2 files changed, 13 insertions, 2 deletions
diff --git a/src/mem/ruby/slicc_interface/AbstractController.hh b/src/mem/ruby/slicc_interface/AbstractController.hh
index 7da3d317a..1d1c56aba 100644
--- a/src/mem/ruby/slicc_interface/AbstractController.hh
+++ b/src/mem/ruby/slicc_interface/AbstractController.hh
@@ -22,8 +22,8 @@ public:
virtual const string getName() const = 0; // return instance name
virtual const MachineType getMachineType() const = 0;
virtual void set_atomic(Address addr) = 0;
- virtual void started_writes() = 0;
- virtual void clear_atomic() = 0;
+ virtual void clear_atomic(Address addr) = 0;
+ virtual void reset_atomics() = 0;
virtual void print(ostream & out) const = 0;
virtual void printStats(ostream & out) const = 0;
diff --git a/src/mem/ruby/slicc_interface/RubySlicc_ComponentMapping.hh b/src/mem/ruby/slicc_interface/RubySlicc_ComponentMapping.hh
index 222ff86f8..69424c414 100644
--- a/src/mem/ruby/slicc_interface/RubySlicc_ComponentMapping.hh
+++ b/src/mem/ruby/slicc_interface/RubySlicc_ComponentMapping.hh
@@ -94,6 +94,17 @@ MachineID map_Address_to_DMA(const Address & addr)
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)
{