3 * Copyright (c) 1991-1997, 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
20 #define CALLOP this->*op
26 runops_standard(void) {
29 while ( op = (CALLOP->op_ppaddr)(ARGS) ) ;
35 dEXT char **watchaddr = 0;
39 static void debprof _((OP*o));
48 warn("NULL OP IN RUN");
54 if (watchaddr != 0 && *watchaddr != watchok)
55 PerlIO_printf(Perl_debug_log, "WARNING: %lx changed from %lx to %lx\n",
56 (long)watchaddr, (long)watchok, (long)*watchaddr);
61 } while ( op = (CALLOP->op_ppaddr)(ARGS) );
66 return runops_standard();
67 #endif /* DEBUGGING */
75 deb("%s", op_name[o->op_type]);
78 PerlIO_printf(Perl_debug_log, "(%s)", SvPEEK(cSVOPo->op_sv));
84 gv_fullname3(sv, cGVOPo->op_gv, Nullch);
85 PerlIO_printf(Perl_debug_log, "(%s)", SvPV(sv, na));
89 PerlIO_printf(Perl_debug_log, "(NULL)");
94 PerlIO_printf(Perl_debug_log, "\n");
95 #endif /* DEBUGGING */
105 PerlIO_printf(Perl_debug_log, "WATCHING, %lx is currently %lx\n",
106 (long)watchaddr, (long)watchok);
107 #endif /* DEBUGGING */
115 New(000, profiledata, MAXO, U32);
116 ++profiledata[o->op_type];
117 #endif /* DEBUGGING */
127 for (i = 0; i < MAXO; i++) {
129 PerlIO_printf(Perl_debug_log,
130 "%u\t%lu\n", i, (unsigned long)profiledata[i]);
132 #endif /* DEBUGGING */