while (ofs >= le) ofs -= ll; 
while (ofs >= le)	{ofs -= ll;} 
static sample_t *rs_loop(Voice *vp, int32 count){  /* Play sample until end-of-loop, skip back and continue. */  splen_t    ofs = vp->sample_offset,    ls, le, ll;  resample_rec_t resrc;  sample_t    *dest = resample_buffer + resample_buffer_offset,    *src = vp->sample->data;#ifdef PRECALC_LOOPS  int32 i, j;#endif  int32 incr = vp->sample_increment;  if(vp->cache && incr == (1 << FRACTION_BITS))      return rs_loop_c(vp, count);  resrc.loop_start = ls = vp->sample->loop_start;  resrc.loop_end = le = vp->sample->loop_end;  ll = le - ls;  resrc.data_length = vp->sample->data_length;#ifdef PRECALC_LOOPS  while (count)    {      while (ofs >= le)	ofs -= ll;      /* Precalc how many times we should go through the loop */      i = PRECALC_LOOP_COUNT(ofs, le, incr);      if (i > count)	{	  i = count;	  count = 0;	}      else count -= i;      for(j = 0; j < i; j++)	{	  RESAMPLATION;	  ofs += incr;	}    }#else  while (count--)    {      RESAMPLATION;      ofs += incr;      if (ofs >= le)	ofs -= ll; /* Hopefully the loop is longer than an increment. */    }#endif  vp->sample_offset = ofs; /* Update offset */  return resample_buffer + resample_buffer_offset;}
4357	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4357/7c308a2fe92dbf66b2e18fbedd624d1022ba754f/resample.c/clean/timidity/resample.c