3 * Copyright (c) 1991-1994, Larry Wall
5 * You may distribute under the terms of either the GNU General Public
6 * License or the Artistic License, as specified in the README file.
14 * "Away now, Shadowfax! Run, greatheart, run as you have never run before!
15 * Now we are come to the lands where you were foaled, and every stone you
16 * know. Run now! Hope is in speed!" --Gandalf
19 dEXT char **watchaddr = 0;
30 while ( op = (*op->op_ppaddr)(ARGS) ) ;
36 static void debprof _((OP*o));
42 warn("NULL OP IN RUN");
51 if (watchaddr != 0 && *watchaddr != watchok)
52 fprintf(stderr, "WARNING: %lx changed from %lx to %lx\n",
53 (long)watchaddr, (long)watchok, (long)*watchaddr);
58 DEBUG_L(pthread_yield()); /* shake up scheduling a bit */
59 #endif /* USE_THREADS */
61 } while ( op = (*op->op_ppaddr)(ARGS) );
70 deb("%s", op_name[o->op_type]);
73 fprintf(stderr, "(%s)", SvPEEK(cSVOPo->op_sv));
79 gv_fullname(sv, cGVOPo->op_gv);
80 fprintf(stderr, "(%s)", SvPV(sv, na));
84 fprintf(stderr, "(NULL)");
89 fprintf(stderr, "\n");
99 fprintf(stderr, "WATCHING, %lx is currently %lx\n",
100 (long)watchaddr, (long)watchok);
108 New(000, profiledata, MAXO, U32);
109 ++profiledata[o->op_type];
118 for (i = 0; i < MAXO; i++) {
120 fprintf(stderr, "%d\t%lu\n", i, profiledata[i]);