base: Add some error handling to compiler.hh.
[gem5.git] / src / gpu-compute / local_memory_pipeline.hh
index dba938d6af361292b18a8e54809d8f35de324d11..3ff3b79eccd2c7688460fc32b3a86c7245b7f713 100644 (file)
@@ -55,13 +55,13 @@ class Wavefront;
 class LocalMemPipeline
 {
   public:
-    LocalMemPipeline(const ComputeUnitParams *params);
-    void init(ComputeUnit *cu);
+    LocalMemPipeline(const ComputeUnitParams *p, ComputeUnit &cu);
     void exec();
-
-    std::queue<GPUDynInstPtr> &getLMReqFIFO() { return lmIssuedRequests; }
     std::queue<GPUDynInstPtr> &getLMRespFIFO() { return lmReturnedRequests; }
 
+    void issueRequest(GPUDynInstPtr gpuDynInst);
+
+
     bool
     isLMRespFIFOWrRdy() const
     {
@@ -84,8 +84,8 @@ class LocalMemPipeline
     }
 
   private:
-    ComputeUnit *computeUnit;
-    std::string _name;
+    ComputeUnit &computeUnit;
+    const std::string _name;
     int lmQueueSize;
     Stats::Scalar loadVrfBankConflictCycles;
     // Local Memory Request Fifo: all shared memory requests