Commit | Line | Data |
---|---|---|
a0d0e21e LW |
1 | /* run.c |
2 | * | |
e6906430 JH |
3 | * Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, |
4 | * 2000, 2001, by Larry Wall and others | |
a0d0e21e LW |
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 | ||
40d34c0d SB |
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 | ||
79072805 | 24 | #include "EXTERN.h" |
864dbfa3 | 25 | #define PERL_IN_RUN_C |
79072805 LW |
26 | #include "perl.h" |
27 | ||
a0d0e21e LW |
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 | ||
a0d0e21e | 34 | int |
864dbfa3 | 35 | Perl_runops_standard(pTHX) |
17c3b450 | 36 | { |
155aba94 | 37 | while ((PL_op = CALL_FPTR(PL_op->op_ppaddr)(aTHX))) { |
da927450 | 38 | PERL_ASYNC_CHECK(); |
cd39f2b6 | 39 | } |
fd18d308 CS |
40 | |
41 | TAINT_NOT; | |
a0d0e21e | 42 | return 0; |
79072805 LW |
43 | } |
44 | ||
d8294a4d NC |
45 | /* |
46 | * Local variables: | |
47 | * c-indentation-style: bsd | |
48 | * c-basic-offset: 4 | |
49 | * indent-tabs-mode: t | |
50 | * End: | |
51 | * | |
52 | * ex: set ts=8 sts=4 sw=4 noet: | |
53 | */ |