File tree Expand file tree Collapse file tree 1 file changed +7
-6
lines changed
Expand file tree Collapse file tree 1 file changed +7
-6
lines changed Original file line number Diff line number Diff line change @@ -772,18 +772,20 @@ unsigned short SRSubPassAfterRA::allocateS0(unsigned short UQNum) {
772772 if (!UsedS0SubReg.isSet (freeSRSub) &&
773773 !UsedS0SubReg.isSet (freeSRSub + 1 )) {
774774 find = true ;
775- S0Index += 2 ;
775+ S0Index = freeSRSub + 2 ;
776776 break ;
777777 }
778778 } else if ((UQNum == 1 ) && !UsedS0SubReg.isSet (freeSRSub)) {
779779 find = true ;
780- S0Index++ ;
780+ S0Index = freeSRSub + 1 ;
781781 break ;
782782 }
783- S0Index++;
784783 }
785784
786785 if (find) {
786+ if (S0Index >= S0SubRegNum) {
787+ S0Index = 0 ;
788+ }
787789 return freeSRSub;
788790 }
789791
@@ -792,15 +794,14 @@ unsigned short SRSubPassAfterRA::allocateS0(unsigned short UQNum) {
792794 if (!UsedS0SubReg.isSet (freeSRSub) &&
793795 !UsedS0SubReg.isSet (freeSRSub + 1 )) {
794796 find = true ;
795- S0Index += 2 ;
797+ S0Index = freeSRSub + 2 ;
796798 break ;
797799 }
798800 } else if ((UQNum == 1 ) && !UsedS0SubReg.isSet (freeSRSub)) {
799801 find = true ;
800- S0Index++ ;
802+ S0Index = freeSRSub + 1 ;
801803 break ;
802804 }
803- S0Index++;
804805 }
805806
806807 if (S0Index >= S0SubRegNum) {
You can’t perform that action at this time.
0 commit comments