1 /* run.c 2 * 3 * Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4 * 2000, 2001, 2004, 2005, 2006, by Larry Wall and others 5 * 6 * You may distribute under the terms of either the GNU General Public 7 * License or the Artistic License, as specified in the README file. 8 * 9 */ 10 11 /* This file contains the main Perl opcode execution loop. It just 12 * calls the pp_foo() function associated with each op, and expects that 13 * function to return a pointer to the next op to be executed, or null if 14 * it's the end of the sub or program or whatever. 15 * 16 * There is a similar loop in dump.c, Perl_runops_debug(), which does 17 * the same, but also checks for various debug flags each time round the 18 * loop. 19 * 20 * Why this function requires a file all of its own is anybody's guess. 21 * DAPM. 22 */ 23 24 #include "EXTERN.h" 25 #define PERL_IN_RUN_C 26 #include "perl.h" 27 28 /* 29 * "Away now, Shadowfax! Run, greatheart, run as you have never run before! 30 * Now we are come to the lands where you were foaled, and every stone you 31 * know. Run now! Hope is in speed!" --Gandalf 32 */ 33 34 int 35 Perl_runops_standard(pTHX) 36 { 37 dVAR; 38 while ((PL_op = CALL_FPTR(PL_op->op_ppaddr)(aTHX))) { 39 PERL_ASYNC_CHECK(); 40 } 41 42 TAINT_NOT; 43 return 0; 44 } 45 46 /* 47 * Local variables: 48 * c-indentation-style: bsd 49 * c-basic-offset: 4 50 * indent-tabs-mode: t 51 * End: 52 * 53 * ex: set ts=8 sts=4 sw=4 noet: 54 */ 55