1: #
   2: /*
   3:  * pxp - Pascal execution profiler
   4:  *
   5:  * Bill Joy UCB
   6:  * Version 1.2 January 1979
   7:  */
   8: 
   9: #include "0.h"
  10: 
  11: /*
  12:  * Label declaration part
  13:  */
  14: label(r, l)
  15:     int *r, l;
  16: {
  17:     register *ll;
  18: 
  19:     if (nodecl)
  20:         printoff();
  21:     puthedr();
  22:     setline(l);
  23:     ppnl();
  24:     indent();
  25:     ppkw("label");
  26:     ppgoin(DECL);
  27:     ppnl();
  28:     indent();
  29:     ppbra(NIL);
  30:     ll = r;
  31:     if (ll != NIL)
  32:         for (;;) {
  33:             pplab(ll[1]);
  34:             ll = ll[2];
  35:             if (ll == NIL)
  36:                 break;
  37:             ppsep(", ");
  38:         }
  39:     else
  40:         ppid("{label list}");
  41:     ppket(";");
  42:     putcml();
  43:     ppgoout(DECL);
  44: }
  45: 
  46: /*
  47:  * Goto statement
  48:  */
  49: gotoop(s)
  50:     char *s;
  51: {
  52: 
  53:     gocnt++;
  54:     ppkw("goto");
  55:     ppspac();
  56:     pplab(s);
  57: }
  58: 
  59: /*
  60:  * A label on a statement
  61:  */
  62: labeled(s)
  63:     char *s;
  64: {
  65: 
  66:     linopr();
  67:     indentlab();
  68:     pplab(s);
  69:     ppsep(":");
  70: }

Defined functions

gotoop defined in line 49; used 1 times
label defined in line 14; used 1 times
labeled defined in line 62; used 1 times
Last modified: 1981-07-10
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 1919
Valid CSS Valid XHTML 1.0 Strict