mirror of git://gcc.gnu.org/git/gcc.git
33 lines
880 B
C
33 lines
880 B
C
/* { dg-options "-O2 -floop-block -ffast-math" } */
|
|
|
|
typedef unsigned char UChar;
|
|
typedef int Int32;
|
|
typedef unsigned int UInt32;
|
|
void VPrintf0(const char *);
|
|
void AssertH (int, int);
|
|
|
|
void fallbackSort ( UInt32* fmap,
|
|
UInt32* eclass,
|
|
Int32 nblock,
|
|
Int32 verb )
|
|
{
|
|
Int32 ftab[257];
|
|
Int32 ftabCopy[256];
|
|
Int32 H, i, j, k, l, r, cc, cc1;
|
|
Int32 nNotDone;
|
|
Int32 nBhtab;
|
|
UChar* eclass8 = (UChar*)eclass;
|
|
|
|
if (verb >= 4)
|
|
VPrintf0 ( " bucket sorting ...\n" );
|
|
for (i = 0; i < 257; i++) ftab[i] = 0;
|
|
for (i = 0; i < nblock; i++) ftab[eclass8[i]]++;
|
|
for (i = 0; i < 256; i++) ftabCopy[i] = ftab[i];
|
|
for (i = 1; i < 257; i++) ftab[i] += ftab[i-1];
|
|
|
|
for (i = 0; i < nblock; i++) {
|
|
j = eclass8[i] + ftab [i];
|
|
}
|
|
AssertH ( j < 256, 1005 );
|
|
}
|