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 * [p.600 of _The Lord of the Rings_, III/xi: "The Palant�r"] 34 */ 35 36 int 37 Perl_runops_standard(pTHX) 38 { 39 dVAR; 40 while ((PL_op = CALL_FPTR(PL_op->op_ppaddr)(aTHX))) { 41 PERL_ASYNC_CHECK(); 42 } 43 44 TAINT_NOT; 45 return 0; 46 } 47 48 /* 49 * Local variables: 50 * c-indentation-style: bsd 51 * c-basic-offset: 4 52 * indent-tabs-mode: t 53 * End: 54 * 55 * ex: set ts=8 sts=4 sw=4 noet: 56 */ 57