BSD 4_3_Net_2 release
[unix-history] / usr / src / usr.bin / pascal / pxp / pmon.c
index cc3779b..6b4d006 100644 (file)
@@ -1,6 +1,40 @@
-static char *sccsid = "@(#)pmon.c      1.1 (Berkeley) %G%";
-/* Copyright (c) 1979 Regents of the University of California */
-#
+/*-
+ * Copyright (c) 1980 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *     This product includes software developed by the University of
+ *     California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#ifndef lint
+static char sccsid[] = "@(#)pmon.c     5.4 (Berkeley) 4/16/91";
+#endif /* not lint */
+
 /*
  * pxp - Pascal execution profiler
  *
 /*
  * pxp - Pascal execution profiler
  *
@@ -81,7 +115,7 @@ getpmon(fp)
        return;
 }
 
        return;
 }
 
-STATIC char nospcm[]   "Not enough memory for count buffers\n";
+STATIC char nospcm[]   "Not enough memory for count buffers\n";
 
 pmnospac()
 {
 
 pmnospac()
 {
@@ -130,7 +164,7 @@ getcore(fp)
        if (inf.type != 0 && inf.type != 1)
                goto format;
        if (inf.type)
        if (inf.type != 0 && inf.type != 1)
                goto format;
        if (inf.type)
-               inf.bp =- inf.off;
+               inf.bp -= inf.off;
        if (lseek(zfil, inf.bp + 02000, 0) < 0)
                goto format;
        if (read(zfil, &pxp, sizeof pxp) != sizeof pxp)
        if (lseek(zfil, inf.bp + 02000, 0) < 0)
                goto format;
        if (read(zfil, &pxp, sizeof pxp) != sizeof pxp)
@@ -140,7 +174,7 @@ getcore(fp)
                exit(1);
        }
        if (inf.type)
                exit(1);
        }
        if (inf.type)
-               pxp.buf =- inf.off;
+               pxp.buf -= inf.off;
        if (lseek(zfil, pxp.buf + 02000, 0) < 0)
                goto format;
        if (pmread() < 0)
        if (lseek(zfil, pxp.buf + 02000, 0) < 0)
                goto format;
        if (pmread() < 0)
@@ -171,14 +205,14 @@ pmread()
        ptvec = zmagic.tim;
        zcnt = zmagic.cntrs;
        zpfcnt = zmagic.rtns;
        ptvec = zmagic.tim;
        zcnt = zmagic.cntrs;
        zpfcnt = zmagic.rtns;
-       cp = zbuf = alloc(i = (zcnt + 1) * sizeof *zbuf);
-       if (cp == -1)
+       cp = zbuf = pcalloc(i = (zcnt + 1) * sizeof *zbuf, 1);
+       if (cp == NULL)
                pmnospac();
                pmnospac();
-       cp = zpf = alloc(zpfcnt * sizeof *zpf);
-       if (cp == -1)
+       cp = zpf = pcalloc(zpfcnt * sizeof *zpf, 1);
+       if (cp == NULL)
                pmnospac();
        i -= sizeof(zmagic);
                pmnospac();
        i -= sizeof(zmagic);
-       if (read(zfil, zbuf + (sizeof(zmagic) / sizeof(zbuf)), i) != i)
+       if (read(zfil, zbuf + (sizeof(zmagic) / sizeof(*zbuf)), i) != i)
                return (-1);
        zbuf++;
        return (0);
                return (-1);
        zbuf++;
        return (0);
@@ -342,7 +376,7 @@ shudpcnt()
        return (i == 0);
 }
 
        return (i == 0);
 }
 
-STATIC char mism[]     "Program and counter data do not correspond\n";
+STATIC char mism[]     "Program and counter data do not correspond\n";
 
 cPANIC()
 {
 
 cPANIC()
 {