home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / magazine / comp_lan / 85_febr / benmrk.trs < prev    next >
Text File  |  1988-07-25  |  2KB  |  66 lines

  1.  
  2.                        TRS Seive Benchmark
  3.                        C Compiler Analysis
  4.                  February 1985 COMPUTER LANGUAGE
  5.  
  6.  
  7. SIEVE listing used to test LC:
  8. /*  sieve test program for CLM C-compiler comparisons
  9.     Jim Kyle, 6 November 1984
  10.  */
  11. #include stdio/csh
  12. #define size 8190
  13.     char flags[8191];
  14. main()
  15. {
  16.     int i,prime,k,count,iter;
  17.     printf("Start\n");
  18.     for (iter=1; iter <= 10; iter++)  {
  19.         count = 0;
  20.         for (i=0; i <= size; i++)
  21.             flags[i] = TRUE;
  22.         for (i=0; i<= size; i++)      {
  23.             if (flags[i])    {
  24.                 prime = i + i + 3;
  25.                 for (k=i+prime; k <=size; k+=prime)
  26.                     flags[k] = FALSE;
  27.                 count++;
  28.             }
  29.         }
  30.     }
  31.     printf("\nFound %d; stop\n", count);
  32. }
  33. /* END OF PROGRAM */
  34.  
  35.  
  36.  
  37. MYSORT listing used to test LC:
  38. /*    mysort/ccc - integer sorting benchmark, LC */
  39. #include stdio/csh
  40. #define MAX 1000èint a[MAX], working, jump,i,j,tempo;
  41. main()
  42. {    printf("Initializing array\n");
  43.     for (i=0; i<MAX; ++i)
  44.         a[i] = i;
  45.     jump = MAX;
  46.     printf("Beginning to sort\n");
  47.     while (jump>0)    {
  48.         jump /= 2;
  49.         do    {
  50.             working=FALSE;
  51.             for (j=0; j<(MAX-jump);    ++j)    {
  52.                 i=j+jump;
  53.                 if (a[i] > a[j])    {
  54.                     working=TRUE;
  55.                     tempo=a[i];
  56.                     a[i]=a[j];
  57.                     a[j]=tempo;
  58.                 }
  59.             }
  60.         } while (working);
  61.     }
  62.     printf("Finished sorting\n");
  63.     for (i=0; i<MAX; ++i)
  64.         printf("%d ",a[i]);
  65. }
  66.