[BACK]Return to pctrctl.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / pctrctl

Diff for /src/usr.bin/pctrctl/Attic/pctrctl.c between version 1.1 and 1.2

version 1.1, 1996/08/08 18:47:03 version 1.2, 1996/08/14 03:02:52
Line 11 
Line 11 
 #include <sys/stat.h>  #include <sys/stat.h>
 #include <sys/ioctl.h>  #include <sys/ioctl.h>
 #include <fcntl.h>  #include <fcntl.h>
   #include <machine/cpu.h>
 #include <machine/pctr.h>  #include <machine/pctr.h>
   
 char *progname;  char *progname;
Line 93 
Line 94 
   
   for (i = 0; i < PCTR_NUM; i++)    for (i = 0; i < PCTR_NUM; i++)
     printf (" ctr%d = %16qd  [%c%c%c %02x (%s)]\n", i, st.pctr_hwc[i],      printf (" ctr%d = %16qd  [%c%c%c %02x (%s)]\n", i, st.pctr_hwc[i],
             (st.pctr_fn[i] & PCTR_C) ? 'c' : 'e',              (st.pctr_fn[i] & P5CTR_C) ? 'c' : 'e',
             (st.pctr_fn[i] & PCTR_U) ? 'u' : '-',              (st.pctr_fn[i] & P5CTR_U) ? 'u' : '-',
             (st.pctr_fn[i] & PCTR_K) ? 'k' : '-',              (st.pctr_fn[i] & P5CTR_K) ? 'k' : '-',
             (st.pctr_fn[i] & 0x3f),              (st.pctr_fn[i] & 0x3f),
             (((st.pctr_fn[i] & 0x3f) < pctr_name_size              (((st.pctr_fn[i] & 0x3f) < pctr_name_size
               && pctr_name[st.pctr_fn[i] & 0x3f])                && pctr_name[st.pctr_fn[i] & 0x3f])
Line 104 
Line 105 
 }  }
   
 static void  static void
 setctr (int ctr, u_short val)  setctr (int ctr, u_int val)
 {  {
   int fd;    int fd;
   
Line 144 
Line 145 
   u_int ctr;    u_int ctr;
   char *cp;    char *cp;
   u_short fn;    u_short fn;
     pctrval id = __cpuid ();
   
     if (__hasp6ctr (id)) {
       fprintf (stderr, "Pentium Pro not supported\n");
       exit (1);
     }
   
   if (progname = strrchr (argv[0], '/'))    if (progname = strrchr (argv[0], '/'))
     progname++;      progname++;
   else    else
Line 167 
Line 174 
       for (cp = argv[3]; *cp; cp++) {        for (cp = argv[3]; *cp; cp++) {
         switch (*cp) {          switch (*cp) {
         case 'c':          case 'c':
           fn |= PCTR_C;            fn |= P5CTR_C;
           break;            break;
         case 'e':          case 'e':
           fn &= ~PCTR_C;            fn &= ~P5CTR_C;
           break;            break;
         case 'k':          case 'k':
           fn |= PCTR_K;            fn |= P5CTR_K;
           break;            break;
         case 'u':          case 'u':
           fn |= PCTR_U;            fn |= P5CTR_U;
           break;            break;
         default:          default:
           usage ();            usage ();
Line 187 
Line 194 
       fn = strtoul (argv[3], NULL, 16);        fn = strtoul (argv[3], NULL, 16);
       if (fn & ~0x3f)        if (fn & ~0x3f)
         usage ();          usage ();
       fn |= PCTR_K | PCTR_U;        fn |= P5CTR_K | P5CTR_U;
     }      }
     setctr (ctr, fn);      setctr (ctr, fn);
   }    }

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2