================
@@ -894,10 +894,22 @@ void GCNSchedStage::setupNewBlock() {
 
 void GCNSchedStage::finalizeGCNRegion() {
   DAG.Regions[RegionIdx] = std::pair(DAG.RegionBegin, DAG.RegionEnd);
-  DAG.RescheduleRegions[RegionIdx] = false;
----------------
alex-t wrote:

Should not we mark for rescheduling the "excess RP" regions only?

`if ((NewVGPRRP >= S.VGPRExcessLimit - S.VGPRExcessMargin) ||
      (NewAGPRRP >= S.VGPRExcessLimit - S.VGPRExcessMargin) ||
      (NewSGPRRP >= S.SGPRExcessLimit - S.SGPRExcessMargin)) {
    DAG.RegionsWithExcessRP[RegionIdx] = true;
    DAG.RescheduleRegions[RegionIdx] = true;
  }`

https://github.com/llvm/llvm-project/pull/68004
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to