} if(turn==pos-1) inline.add(getLabel()+": #LOOP");
if(turn==pos-1) inline.add(getLabel()+": #LOOP");
    public JBlock getSteadyBlock() {	JStatement[] body;	if(begin)	    body=new JStatement[array.length+3];	else	    body=new JStatement[array.length+2];	InlineAssembly inline=new InlineAssembly();	inline.add(".set noat");	body[0]=inline;	for(int i=0;i<array.length;i++) {	    inline=new InlineAssembly();	    inline.add("lw "+regs[i]+", %0");	    inline.addInput("\"m\"("+getWeight(i)+")");	    body[1+i]=inline;	}	if(begin) {	    inline=new InlineAssembly();	    inline.add("lw "+regs[regs.length-1]+", %0");	    inline.addInput("\"m\"("+getConstant()+")");	    body[body.length-2]=inline;	}	inline=new InlineAssembly();	body[body.length-1]=inline;	for(int i=0;i<idx.length-1;i++)	    for(int k=0;k<popCount;k++)		for(int j=i;j>=0;j--) {		    inline.add("mul.s "+tempRegs[0]+",\\t$csti,\\t"+regs[idx[j]+k]);		    inline.add("add.s "+getInterReg(false,j,k)+",\\t"+getInterReg(true,j,k)+",\\t"+tempRegs[0]);		}	for(int turn=0;turn<pos;turn++)	    for(int k=0;k<popCount;k++)		for(int j=idx.length-1;j>=0;j--) {		    inline.add("mul.s "+tempRegs[0]+",\\t$csti,\\t"+regs[idx[j]+k]);		    inline.add("add.s "+getInterReg(false,j,k)+",\\t"+getInterReg(true,j,k)+",\\t"+tempRegs[0]);		}	//inline.add("mul.s "+tempRegs[0]+",\\t$csti,\\t"+regs[idx[j]+k]);	//inline.add("add.s "+getInterReg(false,j,k)+",\\t"+getInterReg(true,j,k)+",\\t"+tempRegs[0]);	final int mult=getMult(array.length);	/*for(int i=0;i<mult;i++)	  for(int j=0;j<popCount;j++)	  for(int k=idx.length-1;k>=0;k--) {	  int offset=idx[k]+j;	  inline.add("mul.s "+tempRegs[times]+",\\t$csti,\\t"+regs[offset]);	  inline.add("add.s "+getInterReg(false,popNum,elem)+",\\t"+getInterReg(true,popNum,elem)+",\\t"+tempRegs[l]);	  }*/	//inline.add(getLabel()+": #LOOP");	int times=0;	int[] oldIdx=new int[4];	int[] oldPop=new int[4];	for(int turn=0;turn<pos+4;turn++) {	for(int i=0;i<mult;i++)	    for(int j=0;j<popCount;j++)		for(int k=idx.length-1;k>=0;k--) {		    int offset=idx[k]+j;		    inline.add("mul.s "+tempRegs[times]+",\\t$csti,\\t"+regs[offset]);		    oldIdx[times]=k;		    oldPop[times]=j;		    times++;		    if(times==4) {			times=0;			for(int l=0;l<4;l++) {			    int popNum=oldIdx[l];			    int elem=oldPop[l];			    inline.add("add.s "+getInterReg(false,popNum,elem)+",\\t"+getInterReg(true,popNum,elem)+",\\t"+tempRegs[l]);			}		    }		}	if(turn==pos-1)	    inline.add(getLabel()+": #LOOP");	}	inline.add("j "+getLabel());	inline.add(".set at");	return new JBlock(null,body,null);    }