Half way through moving per-thread magicals into per-thread fields
[p5sagit/p5-mst-13.2.git] / opcode.h
1 #define pp_i_preinc pp_preinc
2 #define pp_i_predec pp_predec
3 #define pp_i_postinc pp_postinc
4 #define pp_i_postdec pp_postdec
5
6 typedef enum {
7         OP_NULL,        /* 0 */
8         OP_STUB,        /* 1 */
9         OP_SCALAR,      /* 2 */
10         OP_PUSHMARK,    /* 3 */
11         OP_WANTARRAY,   /* 4 */
12         OP_CONST,       /* 5 */
13         OP_GVSV,        /* 6 */
14         OP_GV,          /* 7 */
15         OP_GELEM,       /* 8 */
16         OP_PADSV,       /* 9 */
17         OP_PADAV,       /* 10 */
18         OP_PADHV,       /* 11 */
19         OP_PADANY,      /* 12 */
20         OP_PUSHRE,      /* 13 */
21         OP_RV2GV,       /* 14 */
22         OP_RV2SV,       /* 15 */
23         OP_AV2ARYLEN,   /* 16 */
24         OP_RV2CV,       /* 17 */
25         OP_ANONCODE,    /* 18 */
26         OP_PROTOTYPE,   /* 19 */
27         OP_REFGEN,      /* 20 */
28         OP_SREFGEN,     /* 21 */
29         OP_REF,         /* 22 */
30         OP_BLESS,       /* 23 */
31         OP_BACKTICK,    /* 24 */
32         OP_GLOB,        /* 25 */
33         OP_READLINE,    /* 26 */
34         OP_RCATLINE,    /* 27 */
35         OP_REGCMAYBE,   /* 28 */
36         OP_REGCOMP,     /* 29 */
37         OP_MATCH,       /* 30 */
38         OP_SUBST,       /* 31 */
39         OP_SUBSTCONT,   /* 32 */
40         OP_TRANS,       /* 33 */
41         OP_SASSIGN,     /* 34 */
42         OP_AASSIGN,     /* 35 */
43         OP_CHOP,        /* 36 */
44         OP_SCHOP,       /* 37 */
45         OP_CHOMP,       /* 38 */
46         OP_SCHOMP,      /* 39 */
47         OP_DEFINED,     /* 40 */
48         OP_UNDEF,       /* 41 */
49         OP_STUDY,       /* 42 */
50         OP_POS,         /* 43 */
51         OP_PREINC,      /* 44 */
52         OP_I_PREINC,    /* 45 */
53         OP_PREDEC,      /* 46 */
54         OP_I_PREDEC,    /* 47 */
55         OP_POSTINC,     /* 48 */
56         OP_I_POSTINC,   /* 49 */
57         OP_POSTDEC,     /* 50 */
58         OP_I_POSTDEC,   /* 51 */
59         OP_POW,         /* 52 */
60         OP_MULTIPLY,    /* 53 */
61         OP_I_MULTIPLY,  /* 54 */
62         OP_DIVIDE,      /* 55 */
63         OP_I_DIVIDE,    /* 56 */
64         OP_MODULO,      /* 57 */
65         OP_I_MODULO,    /* 58 */
66         OP_REPEAT,      /* 59 */
67         OP_ADD,         /* 60 */
68         OP_I_ADD,       /* 61 */
69         OP_SUBTRACT,    /* 62 */
70         OP_I_SUBTRACT,  /* 63 */
71         OP_CONCAT,      /* 64 */
72         OP_STRINGIFY,   /* 65 */
73         OP_LEFT_SHIFT,  /* 66 */
74         OP_RIGHT_SHIFT, /* 67 */
75         OP_LT,          /* 68 */
76         OP_I_LT,        /* 69 */
77         OP_GT,          /* 70 */
78         OP_I_GT,        /* 71 */
79         OP_LE,          /* 72 */
80         OP_I_LE,        /* 73 */
81         OP_GE,          /* 74 */
82         OP_I_GE,        /* 75 */
83         OP_EQ,          /* 76 */
84         OP_I_EQ,        /* 77 */
85         OP_NE,          /* 78 */
86         OP_I_NE,        /* 79 */
87         OP_NCMP,        /* 80 */
88         OP_I_NCMP,      /* 81 */
89         OP_SLT,         /* 82 */
90         OP_SGT,         /* 83 */
91         OP_SLE,         /* 84 */
92         OP_SGE,         /* 85 */
93         OP_SEQ,         /* 86 */
94         OP_SNE,         /* 87 */
95         OP_SCMP,        /* 88 */
96         OP_BIT_AND,     /* 89 */
97         OP_BIT_XOR,     /* 90 */
98         OP_BIT_OR,      /* 91 */
99         OP_NEGATE,      /* 92 */
100         OP_I_NEGATE,    /* 93 */
101         OP_NOT,         /* 94 */
102         OP_COMPLEMENT,  /* 95 */
103         OP_ATAN2,       /* 96 */
104         OP_SIN,         /* 97 */
105         OP_COS,         /* 98 */
106         OP_RAND,        /* 99 */
107         OP_SRAND,       /* 100 */
108         OP_EXP,         /* 101 */
109         OP_LOG,         /* 102 */
110         OP_SQRT,        /* 103 */
111         OP_INT,         /* 104 */
112         OP_HEX,         /* 105 */
113         OP_OCT,         /* 106 */
114         OP_ABS,         /* 107 */
115         OP_LENGTH,      /* 108 */
116         OP_SUBSTR,      /* 109 */
117         OP_VEC,         /* 110 */
118         OP_INDEX,       /* 111 */
119         OP_RINDEX,      /* 112 */
120         OP_SPRINTF,     /* 113 */
121         OP_FORMLINE,    /* 114 */
122         OP_ORD,         /* 115 */
123         OP_CHR,         /* 116 */
124         OP_CRYPT,       /* 117 */
125         OP_UCFIRST,     /* 118 */
126         OP_LCFIRST,     /* 119 */
127         OP_UC,          /* 120 */
128         OP_LC,          /* 121 */
129         OP_QUOTEMETA,   /* 122 */
130         OP_RV2AV,       /* 123 */
131         OP_AELEMFAST,   /* 124 */
132         OP_AELEM,       /* 125 */
133         OP_ASLICE,      /* 126 */
134         OP_EACH,        /* 127 */
135         OP_VALUES,      /* 128 */
136         OP_KEYS,        /* 129 */
137         OP_DELETE,      /* 130 */
138         OP_EXISTS,      /* 131 */
139         OP_RV2HV,       /* 132 */
140         OP_HELEM,       /* 133 */
141         OP_HSLICE,      /* 134 */
142         OP_UNPACK,      /* 135 */
143         OP_PACK,        /* 136 */
144         OP_SPLIT,       /* 137 */
145         OP_JOIN,        /* 138 */
146         OP_LIST,        /* 139 */
147         OP_LSLICE,      /* 140 */
148         OP_ANONLIST,    /* 141 */
149         OP_ANONHASH,    /* 142 */
150         OP_SPLICE,      /* 143 */
151         OP_PUSH,        /* 144 */
152         OP_POP,         /* 145 */
153         OP_SHIFT,       /* 146 */
154         OP_UNSHIFT,     /* 147 */
155         OP_SORT,        /* 148 */
156         OP_REVERSE,     /* 149 */
157         OP_GREPSTART,   /* 150 */
158         OP_GREPWHILE,   /* 151 */
159         OP_MAPSTART,    /* 152 */
160         OP_MAPWHILE,    /* 153 */
161         OP_RANGE,       /* 154 */
162         OP_FLIP,        /* 155 */
163         OP_FLOP,        /* 156 */
164         OP_AND,         /* 157 */
165         OP_OR,          /* 158 */
166         OP_XOR,         /* 159 */
167         OP_COND_EXPR,   /* 160 */
168         OP_ANDASSIGN,   /* 161 */
169         OP_ORASSIGN,    /* 162 */
170         OP_METHOD,      /* 163 */
171         OP_ENTERSUB,    /* 164 */
172         OP_LEAVESUB,    /* 165 */
173         OP_CALLER,      /* 166 */
174         OP_WARN,        /* 167 */
175         OP_DIE,         /* 168 */
176         OP_RESET,       /* 169 */
177         OP_LINESEQ,     /* 170 */
178         OP_NEXTSTATE,   /* 171 */
179         OP_DBSTATE,     /* 172 */
180         OP_UNSTACK,     /* 173 */
181         OP_ENTER,       /* 174 */
182         OP_LEAVE,       /* 175 */
183         OP_SCOPE,       /* 176 */
184         OP_ENTERITER,   /* 177 */
185         OP_ITER,        /* 178 */
186         OP_ENTERLOOP,   /* 179 */
187         OP_LEAVELOOP,   /* 180 */
188         OP_RETURN,      /* 181 */
189         OP_LAST,        /* 182 */
190         OP_NEXT,        /* 183 */
191         OP_REDO,        /* 184 */
192         OP_DUMP,        /* 185 */
193         OP_GOTO,        /* 186 */
194         OP_EXIT,        /* 187 */
195         OP_OPEN,        /* 188 */
196         OP_CLOSE,       /* 189 */
197         OP_PIPE_OP,     /* 190 */
198         OP_FILENO,      /* 191 */
199         OP_UMASK,       /* 192 */
200         OP_BINMODE,     /* 193 */
201         OP_TIE,         /* 194 */
202         OP_UNTIE,       /* 195 */
203         OP_TIED,        /* 196 */
204         OP_DBMOPEN,     /* 197 */
205         OP_DBMCLOSE,    /* 198 */
206         OP_SSELECT,     /* 199 */
207         OP_SELECT,      /* 200 */
208         OP_GETC,        /* 201 */
209         OP_READ,        /* 202 */
210         OP_ENTERWRITE,  /* 203 */
211         OP_LEAVEWRITE,  /* 204 */
212         OP_PRTF,        /* 205 */
213         OP_PRINT,       /* 206 */
214         OP_SYSOPEN,     /* 207 */
215         OP_SYSSEEK,     /* 208 */
216         OP_SYSREAD,     /* 209 */
217         OP_SYSWRITE,    /* 210 */
218         OP_SEND,        /* 211 */
219         OP_RECV,        /* 212 */
220         OP_EOF,         /* 213 */
221         OP_TELL,        /* 214 */
222         OP_SEEK,        /* 215 */
223         OP_TRUNCATE,    /* 216 */
224         OP_FCNTL,       /* 217 */
225         OP_IOCTL,       /* 218 */
226         OP_FLOCK,       /* 219 */
227         OP_SOCKET,      /* 220 */
228         OP_SOCKPAIR,    /* 221 */
229         OP_BIND,        /* 222 */
230         OP_CONNECT,     /* 223 */
231         OP_LISTEN,      /* 224 */
232         OP_ACCEPT,      /* 225 */
233         OP_SHUTDOWN,    /* 226 */
234         OP_GSOCKOPT,    /* 227 */
235         OP_SSOCKOPT,    /* 228 */
236         OP_GETSOCKNAME, /* 229 */
237         OP_GETPEERNAME, /* 230 */
238         OP_LSTAT,       /* 231 */
239         OP_STAT,        /* 232 */
240         OP_FTRREAD,     /* 233 */
241         OP_FTRWRITE,    /* 234 */
242         OP_FTREXEC,     /* 235 */
243         OP_FTEREAD,     /* 236 */
244         OP_FTEWRITE,    /* 237 */
245         OP_FTEEXEC,     /* 238 */
246         OP_FTIS,        /* 239 */
247         OP_FTEOWNED,    /* 240 */
248         OP_FTROWNED,    /* 241 */
249         OP_FTZERO,      /* 242 */
250         OP_FTSIZE,      /* 243 */
251         OP_FTMTIME,     /* 244 */
252         OP_FTATIME,     /* 245 */
253         OP_FTCTIME,     /* 246 */
254         OP_FTSOCK,      /* 247 */
255         OP_FTCHR,       /* 248 */
256         OP_FTBLK,       /* 249 */
257         OP_FTFILE,      /* 250 */
258         OP_FTDIR,       /* 251 */
259         OP_FTPIPE,      /* 252 */
260         OP_FTLINK,      /* 253 */
261         OP_FTSUID,      /* 254 */
262         OP_FTSGID,      /* 255 */
263         OP_FTSVTX,      /* 256 */
264         OP_FTTTY,       /* 257 */
265         OP_FTTEXT,      /* 258 */
266         OP_FTBINARY,    /* 259 */
267         OP_CHDIR,       /* 260 */
268         OP_CHOWN,       /* 261 */
269         OP_CHROOT,      /* 262 */
270         OP_UNLINK,      /* 263 */
271         OP_CHMOD,       /* 264 */
272         OP_UTIME,       /* 265 */
273         OP_RENAME,      /* 266 */
274         OP_LINK,        /* 267 */
275         OP_SYMLINK,     /* 268 */
276         OP_READLINK,    /* 269 */
277         OP_MKDIR,       /* 270 */
278         OP_RMDIR,       /* 271 */
279         OP_OPEN_DIR,    /* 272 */
280         OP_READDIR,     /* 273 */
281         OP_TELLDIR,     /* 274 */
282         OP_SEEKDIR,     /* 275 */
283         OP_REWINDDIR,   /* 276 */
284         OP_CLOSEDIR,    /* 277 */
285         OP_FORK,        /* 278 */
286         OP_WAIT,        /* 279 */
287         OP_WAITPID,     /* 280 */
288         OP_SYSTEM,      /* 281 */
289         OP_EXEC,        /* 282 */
290         OP_KILL,        /* 283 */
291         OP_GETPPID,     /* 284 */
292         OP_GETPGRP,     /* 285 */
293         OP_SETPGRP,     /* 286 */
294         OP_GETPRIORITY, /* 287 */
295         OP_SETPRIORITY, /* 288 */
296         OP_TIME,        /* 289 */
297         OP_TMS,         /* 290 */
298         OP_LOCALTIME,   /* 291 */
299         OP_GMTIME,      /* 292 */
300         OP_ALARM,       /* 293 */
301         OP_SLEEP,       /* 294 */
302         OP_SHMGET,      /* 295 */
303         OP_SHMCTL,      /* 296 */
304         OP_SHMREAD,     /* 297 */
305         OP_SHMWRITE,    /* 298 */
306         OP_MSGGET,      /* 299 */
307         OP_MSGCTL,      /* 300 */
308         OP_MSGSND,      /* 301 */
309         OP_MSGRCV,      /* 302 */
310         OP_SEMGET,      /* 303 */
311         OP_SEMCTL,      /* 304 */
312         OP_SEMOP,       /* 305 */
313         OP_REQUIRE,     /* 306 */
314         OP_DOFILE,      /* 307 */
315         OP_ENTEREVAL,   /* 308 */
316         OP_LEAVEEVAL,   /* 309 */
317         OP_ENTERTRY,    /* 310 */
318         OP_LEAVETRY,    /* 311 */
319         OP_GHBYNAME,    /* 312 */
320         OP_GHBYADDR,    /* 313 */
321         OP_GHOSTENT,    /* 314 */
322         OP_GNBYNAME,    /* 315 */
323         OP_GNBYADDR,    /* 316 */
324         OP_GNETENT,     /* 317 */
325         OP_GPBYNAME,    /* 318 */
326         OP_GPBYNUMBER,  /* 319 */
327         OP_GPROTOENT,   /* 320 */
328         OP_GSBYNAME,    /* 321 */
329         OP_GSBYPORT,    /* 322 */
330         OP_GSERVENT,    /* 323 */
331         OP_SHOSTENT,    /* 324 */
332         OP_SNETENT,     /* 325 */
333         OP_SPROTOENT,   /* 326 */
334         OP_SSERVENT,    /* 327 */
335         OP_EHOSTENT,    /* 328 */
336         OP_ENETENT,     /* 329 */
337         OP_EPROTOENT,   /* 330 */
338         OP_ESERVENT,    /* 331 */
339         OP_GPWNAM,      /* 332 */
340         OP_GPWUID,      /* 333 */
341         OP_GPWENT,      /* 334 */
342         OP_SPWENT,      /* 335 */
343         OP_EPWENT,      /* 336 */
344         OP_GGRNAM,      /* 337 */
345         OP_GGRGID,      /* 338 */
346         OP_GGRENT,      /* 339 */
347         OP_SGRENT,      /* 340 */
348         OP_EGRENT,      /* 341 */
349         OP_GETLOGIN,    /* 342 */
350         OP_SYSCALL,     /* 343 */
351         OP_LOCK,        /* 344 */
352         OP_SPECIFIC,    /* 345 */
353         OP_max          
354 } opcode;
355
356 #define MAXO 346
357
358 #ifndef DOINIT
359 EXT char *op_name[];
360 #else
361 EXT char *op_name[] = {
362         "null",
363         "stub",
364         "scalar",
365         "pushmark",
366         "wantarray",
367         "const",
368         "gvsv",
369         "gv",
370         "gelem",
371         "padsv",
372         "padav",
373         "padhv",
374         "padany",
375         "pushre",
376         "rv2gv",
377         "rv2sv",
378         "av2arylen",
379         "rv2cv",
380         "anoncode",
381         "prototype",
382         "refgen",
383         "srefgen",
384         "ref",
385         "bless",
386         "backtick",
387         "glob",
388         "readline",
389         "rcatline",
390         "regcmaybe",
391         "regcomp",
392         "match",
393         "subst",
394         "substcont",
395         "trans",
396         "sassign",
397         "aassign",
398         "chop",
399         "schop",
400         "chomp",
401         "schomp",
402         "defined",
403         "undef",
404         "study",
405         "pos",
406         "preinc",
407         "i_preinc",
408         "predec",
409         "i_predec",
410         "postinc",
411         "i_postinc",
412         "postdec",
413         "i_postdec",
414         "pow",
415         "multiply",
416         "i_multiply",
417         "divide",
418         "i_divide",
419         "modulo",
420         "i_modulo",
421         "repeat",
422         "add",
423         "i_add",
424         "subtract",
425         "i_subtract",
426         "concat",
427         "stringify",
428         "left_shift",
429         "right_shift",
430         "lt",
431         "i_lt",
432         "gt",
433         "i_gt",
434         "le",
435         "i_le",
436         "ge",
437         "i_ge",
438         "eq",
439         "i_eq",
440         "ne",
441         "i_ne",
442         "ncmp",
443         "i_ncmp",
444         "slt",
445         "sgt",
446         "sle",
447         "sge",
448         "seq",
449         "sne",
450         "scmp",
451         "bit_and",
452         "bit_xor",
453         "bit_or",
454         "negate",
455         "i_negate",
456         "not",
457         "complement",
458         "atan2",
459         "sin",
460         "cos",
461         "rand",
462         "srand",
463         "exp",
464         "log",
465         "sqrt",
466         "int",
467         "hex",
468         "oct",
469         "abs",
470         "length",
471         "substr",
472         "vec",
473         "index",
474         "rindex",
475         "sprintf",
476         "formline",
477         "ord",
478         "chr",
479         "crypt",
480         "ucfirst",
481         "lcfirst",
482         "uc",
483         "lc",
484         "quotemeta",
485         "rv2av",
486         "aelemfast",
487         "aelem",
488         "aslice",
489         "each",
490         "values",
491         "keys",
492         "delete",
493         "exists",
494         "rv2hv",
495         "helem",
496         "hslice",
497         "unpack",
498         "pack",
499         "split",
500         "join",
501         "list",
502         "lslice",
503         "anonlist",
504         "anonhash",
505         "splice",
506         "push",
507         "pop",
508         "shift",
509         "unshift",
510         "sort",
511         "reverse",
512         "grepstart",
513         "grepwhile",
514         "mapstart",
515         "mapwhile",
516         "range",
517         "flip",
518         "flop",
519         "and",
520         "or",
521         "xor",
522         "cond_expr",
523         "andassign",
524         "orassign",
525         "method",
526         "entersub",
527         "leavesub",
528         "caller",
529         "warn",
530         "die",
531         "reset",
532         "lineseq",
533         "nextstate",
534         "dbstate",
535         "unstack",
536         "enter",
537         "leave",
538         "scope",
539         "enteriter",
540         "iter",
541         "enterloop",
542         "leaveloop",
543         "return",
544         "last",
545         "next",
546         "redo",
547         "dump",
548         "goto",
549         "exit",
550         "open",
551         "close",
552         "pipe_op",
553         "fileno",
554         "umask",
555         "binmode",
556         "tie",
557         "untie",
558         "tied",
559         "dbmopen",
560         "dbmclose",
561         "sselect",
562         "select",
563         "getc",
564         "read",
565         "enterwrite",
566         "leavewrite",
567         "prtf",
568         "print",
569         "sysopen",
570         "sysseek",
571         "sysread",
572         "syswrite",
573         "send",
574         "recv",
575         "eof",
576         "tell",
577         "seek",
578         "truncate",
579         "fcntl",
580         "ioctl",
581         "flock",
582         "socket",
583         "sockpair",
584         "bind",
585         "connect",
586         "listen",
587         "accept",
588         "shutdown",
589         "gsockopt",
590         "ssockopt",
591         "getsockname",
592         "getpeername",
593         "lstat",
594         "stat",
595         "ftrread",
596         "ftrwrite",
597         "ftrexec",
598         "fteread",
599         "ftewrite",
600         "fteexec",
601         "ftis",
602         "fteowned",
603         "ftrowned",
604         "ftzero",
605         "ftsize",
606         "ftmtime",
607         "ftatime",
608         "ftctime",
609         "ftsock",
610         "ftchr",
611         "ftblk",
612         "ftfile",
613         "ftdir",
614         "ftpipe",
615         "ftlink",
616         "ftsuid",
617         "ftsgid",
618         "ftsvtx",
619         "fttty",
620         "fttext",
621         "ftbinary",
622         "chdir",
623         "chown",
624         "chroot",
625         "unlink",
626         "chmod",
627         "utime",
628         "rename",
629         "link",
630         "symlink",
631         "readlink",
632         "mkdir",
633         "rmdir",
634         "open_dir",
635         "readdir",
636         "telldir",
637         "seekdir",
638         "rewinddir",
639         "closedir",
640         "fork",
641         "wait",
642         "waitpid",
643         "system",
644         "exec",
645         "kill",
646         "getppid",
647         "getpgrp",
648         "setpgrp",
649         "getpriority",
650         "setpriority",
651         "time",
652         "tms",
653         "localtime",
654         "gmtime",
655         "alarm",
656         "sleep",
657         "shmget",
658         "shmctl",
659         "shmread",
660         "shmwrite",
661         "msgget",
662         "msgctl",
663         "msgsnd",
664         "msgrcv",
665         "semget",
666         "semctl",
667         "semop",
668         "require",
669         "dofile",
670         "entereval",
671         "leaveeval",
672         "entertry",
673         "leavetry",
674         "ghbyname",
675         "ghbyaddr",
676         "ghostent",
677         "gnbyname",
678         "gnbyaddr",
679         "gnetent",
680         "gpbyname",
681         "gpbynumber",
682         "gprotoent",
683         "gsbyname",
684         "gsbyport",
685         "gservent",
686         "shostent",
687         "snetent",
688         "sprotoent",
689         "sservent",
690         "ehostent",
691         "enetent",
692         "eprotoent",
693         "eservent",
694         "gpwnam",
695         "gpwuid",
696         "gpwent",
697         "spwent",
698         "epwent",
699         "ggrnam",
700         "ggrgid",
701         "ggrent",
702         "sgrent",
703         "egrent",
704         "getlogin",
705         "syscall",
706         "lock",
707         "specific",
708 };
709 #endif
710
711 #ifndef DOINIT
712 EXT char *op_desc[];
713 #else
714 EXT char *op_desc[] = {
715         "null operation",
716         "stub",
717         "scalar",
718         "pushmark",
719         "wantarray",
720         "constant item",
721         "scalar variable",
722         "glob value",
723         "glob elem",
724         "private variable",
725         "private array",
726         "private hash",
727         "private something",
728         "push regexp",
729         "ref-to-glob cast",
730         "scalar deref",
731         "array length",
732         "subroutine deref",
733         "anonymous subroutine",
734         "subroutine prototype",
735         "reference constructor",
736         "scalar ref constructor",
737         "reference-type operator",
738         "bless",
739         "backticks",
740         "glob",
741         "<HANDLE>",
742         "append I/O operator",
743         "regexp comp once",
744         "regexp compilation",
745         "pattern match",
746         "substitution",
747         "substitution cont",
748         "character translation",
749         "scalar assignment",
750         "list assignment",
751         "chop",
752         "scalar chop",
753         "safe chop",
754         "scalar safe chop",
755         "defined operator",
756         "undef operator",
757         "study",
758         "match position",
759         "preincrement",
760         "integer preincrement",
761         "predecrement",
762         "integer predecrement",
763         "postincrement",
764         "integer postincrement",
765         "postdecrement",
766         "integer postdecrement",
767         "exponentiation",
768         "multiplication",
769         "integer multiplication",
770         "division",
771         "integer division",
772         "modulus",
773         "integer modulus",
774         "repeat",
775         "addition",
776         "integer addition",
777         "subtraction",
778         "integer subtraction",
779         "concatenation",
780         "string",
781         "left bitshift",
782         "right bitshift",
783         "numeric lt",
784         "integer lt",
785         "numeric gt",
786         "integer gt",
787         "numeric le",
788         "integer le",
789         "numeric ge",
790         "integer ge",
791         "numeric eq",
792         "integer eq",
793         "numeric ne",
794         "integer ne",
795         "spaceship operator",
796         "integer spaceship",
797         "string lt",
798         "string gt",
799         "string le",
800         "string ge",
801         "string eq",
802         "string ne",
803         "string comparison",
804         "bitwise and",
805         "bitwise xor",
806         "bitwise or",
807         "negate",
808         "integer negate",
809         "not",
810         "1's complement",
811         "atan2",
812         "sin",
813         "cos",
814         "rand",
815         "srand",
816         "exp",
817         "log",
818         "sqrt",
819         "int",
820         "hex",
821         "oct",
822         "abs",
823         "length",
824         "substr",
825         "vec",
826         "index",
827         "rindex",
828         "sprintf",
829         "formline",
830         "ord",
831         "chr",
832         "crypt",
833         "upper case first",
834         "lower case first",
835         "upper case",
836         "lower case",
837         "quote metachars",
838         "array deref",
839         "known array element",
840         "array element",
841         "array slice",
842         "each",
843         "values",
844         "keys",
845         "delete",
846         "exists operator",
847         "hash deref",
848         "hash elem",
849         "hash slice",
850         "unpack",
851         "pack",
852         "split",
853         "join",
854         "list",
855         "list slice",
856         "anonymous list",
857         "anonymous hash",
858         "splice",
859         "push",
860         "pop",
861         "shift",
862         "unshift",
863         "sort",
864         "reverse",
865         "grep",
866         "grep iterator",
867         "map",
868         "map iterator",
869         "flipflop",
870         "range (or flip)",
871         "range (or flop)",
872         "logical and",
873         "logical or",
874         "logical xor",
875         "conditional expression",
876         "logical and assignment",
877         "logical or assignment",
878         "method lookup",
879         "subroutine entry",
880         "subroutine exit",
881         "caller",
882         "warn",
883         "die",
884         "reset",
885         "line sequence",
886         "next statement",
887         "debug next statement",
888         "unstack",
889         "block entry",
890         "block exit",
891         "block",
892         "foreach loop entry",
893         "foreach loop iterator",
894         "loop entry",
895         "loop exit",
896         "return",
897         "last",
898         "next",
899         "redo",
900         "dump",
901         "goto",
902         "exit",
903         "open",
904         "close",
905         "pipe",
906         "fileno",
907         "umask",
908         "binmode",
909         "tie",
910         "untie",
911         "tied",
912         "dbmopen",
913         "dbmclose",
914         "select system call",
915         "select",
916         "getc",
917         "read",
918         "write",
919         "write exit",
920         "printf",
921         "print",
922         "sysopen",
923         "sysseek",
924         "sysread",
925         "syswrite",
926         "send",
927         "recv",
928         "eof",
929         "tell",
930         "seek",
931         "truncate",
932         "fcntl",
933         "ioctl",
934         "flock",
935         "socket",
936         "socketpair",
937         "bind",
938         "connect",
939         "listen",
940         "accept",
941         "shutdown",
942         "getsockopt",
943         "setsockopt",
944         "getsockname",
945         "getpeername",
946         "lstat",
947         "stat",
948         "-R",
949         "-W",
950         "-X",
951         "-r",
952         "-w",
953         "-x",
954         "-e",
955         "-O",
956         "-o",
957         "-z",
958         "-s",
959         "-M",
960         "-A",
961         "-C",
962         "-S",
963         "-c",
964         "-b",
965         "-f",
966         "-d",
967         "-p",
968         "-l",
969         "-u",
970         "-g",
971         "-k",
972         "-t",
973         "-T",
974         "-B",
975         "chdir",
976         "chown",
977         "chroot",
978         "unlink",
979         "chmod",
980         "utime",
981         "rename",
982         "link",
983         "symlink",
984         "readlink",
985         "mkdir",
986         "rmdir",
987         "opendir",
988         "readdir",
989         "telldir",
990         "seekdir",
991         "rewinddir",
992         "closedir",
993         "fork",
994         "wait",
995         "waitpid",
996         "system",
997         "exec",
998         "kill",
999         "getppid",
1000         "getpgrp",
1001         "setpgrp",
1002         "getpriority",
1003         "setpriority",
1004         "time",
1005         "times",
1006         "localtime",
1007         "gmtime",
1008         "alarm",
1009         "sleep",
1010         "shmget",
1011         "shmctl",
1012         "shmread",
1013         "shmwrite",
1014         "msgget",
1015         "msgctl",
1016         "msgsnd",
1017         "msgrcv",
1018         "semget",
1019         "semctl",
1020         "semop",
1021         "require",
1022         "do 'file'",
1023         "eval string",
1024         "eval exit",
1025         "eval block",
1026         "eval block exit",
1027         "gethostbyname",
1028         "gethostbyaddr",
1029         "gethostent",
1030         "getnetbyname",
1031         "getnetbyaddr",
1032         "getnetent",
1033         "getprotobyname",
1034         "getprotobynumber",
1035         "getprotoent",
1036         "getservbyname",
1037         "getservbyport",
1038         "getservent",
1039         "sethostent",
1040         "setnetent",
1041         "setprotoent",
1042         "setservent",
1043         "endhostent",
1044         "endnetent",
1045         "endprotoent",
1046         "endservent",
1047         "getpwnam",
1048         "getpwuid",
1049         "getpwent",
1050         "setpwent",
1051         "endpwent",
1052         "getgrnam",
1053         "getgrgid",
1054         "getgrent",
1055         "setgrent",
1056         "endgrent",
1057         "getlogin",
1058         "syscall",
1059         "lock",
1060         "thread-specific",
1061 };
1062 #endif
1063
1064 OP *    ck_anoncode     _((OP* o));
1065 OP *    ck_bitop        _((OP* o));
1066 OP *    ck_concat       _((OP* o));
1067 OP *    ck_delete       _((OP* o));
1068 OP *    ck_eof          _((OP* o));
1069 OP *    ck_eval         _((OP* o));
1070 OP *    ck_exec         _((OP* o));
1071 OP *    ck_exists       _((OP* o));
1072 OP *    ck_ftst         _((OP* o));
1073 OP *    ck_fun          _((OP* o));
1074 OP *    ck_fun_locale   _((OP* o));
1075 OP *    ck_glob         _((OP* o));
1076 OP *    ck_grep         _((OP* o));
1077 OP *    ck_index        _((OP* o));
1078 OP *    ck_lengthconst  _((OP* o));
1079 OP *    ck_lfun         _((OP* o));
1080 OP *    ck_listiob      _((OP* o));
1081 OP *    ck_match        _((OP* o));
1082 OP *    ck_null         _((OP* o));
1083 OP *    ck_repeat       _((OP* o));
1084 OP *    ck_require      _((OP* o));
1085 OP *    ck_rfun         _((OP* o));
1086 OP *    ck_rvconst      _((OP* o));
1087 OP *    ck_scmp         _((OP* o));
1088 OP *    ck_select       _((OP* o));
1089 OP *    ck_shift        _((OP* o));
1090 OP *    ck_sort         _((OP* o));
1091 OP *    ck_spair        _((OP* o));
1092 OP *    ck_split        _((OP* o));
1093 OP *    ck_subr         _((OP* o));
1094 OP *    ck_svconst      _((OP* o));
1095 OP *    ck_trunc        _((OP* o));
1096
1097 OP *    pp_null         _((ARGSproto));
1098 OP *    pp_stub         _((ARGSproto));
1099 OP *    pp_scalar       _((ARGSproto));
1100 OP *    pp_pushmark     _((ARGSproto));
1101 OP *    pp_wantarray    _((ARGSproto));
1102 OP *    pp_const        _((ARGSproto));
1103 OP *    pp_gvsv         _((ARGSproto));
1104 OP *    pp_gv           _((ARGSproto));
1105 OP *    pp_gelem        _((ARGSproto));
1106 OP *    pp_padsv        _((ARGSproto));
1107 OP *    pp_padav        _((ARGSproto));
1108 OP *    pp_padhv        _((ARGSproto));
1109 OP *    pp_padany       _((ARGSproto));
1110 OP *    pp_pushre       _((ARGSproto));
1111 OP *    pp_rv2gv        _((ARGSproto));
1112 OP *    pp_rv2sv        _((ARGSproto));
1113 OP *    pp_av2arylen    _((ARGSproto));
1114 OP *    pp_rv2cv        _((ARGSproto));
1115 OP *    pp_anoncode     _((ARGSproto));
1116 OP *    pp_prototype    _((ARGSproto));
1117 OP *    pp_refgen       _((ARGSproto));
1118 OP *    pp_srefgen      _((ARGSproto));
1119 OP *    pp_ref          _((ARGSproto));
1120 OP *    pp_bless        _((ARGSproto));
1121 OP *    pp_backtick     _((ARGSproto));
1122 OP *    pp_glob         _((ARGSproto));
1123 OP *    pp_readline     _((ARGSproto));
1124 OP *    pp_rcatline     _((ARGSproto));
1125 OP *    pp_regcmaybe    _((ARGSproto));
1126 OP *    pp_regcomp      _((ARGSproto));
1127 OP *    pp_match        _((ARGSproto));
1128 OP *    pp_subst        _((ARGSproto));
1129 OP *    pp_substcont    _((ARGSproto));
1130 OP *    pp_trans        _((ARGSproto));
1131 OP *    pp_sassign      _((ARGSproto));
1132 OP *    pp_aassign      _((ARGSproto));
1133 OP *    pp_chop         _((ARGSproto));
1134 OP *    pp_schop        _((ARGSproto));
1135 OP *    pp_chomp        _((ARGSproto));
1136 OP *    pp_schomp       _((ARGSproto));
1137 OP *    pp_defined      _((ARGSproto));
1138 OP *    pp_undef        _((ARGSproto));
1139 OP *    pp_study        _((ARGSproto));
1140 OP *    pp_pos          _((ARGSproto));
1141 OP *    pp_preinc       _((ARGSproto));
1142 OP *    pp_i_preinc     _((ARGSproto));
1143 OP *    pp_predec       _((ARGSproto));
1144 OP *    pp_i_predec     _((ARGSproto));
1145 OP *    pp_postinc      _((ARGSproto));
1146 OP *    pp_i_postinc    _((ARGSproto));
1147 OP *    pp_postdec      _((ARGSproto));
1148 OP *    pp_i_postdec    _((ARGSproto));
1149 OP *    pp_pow          _((ARGSproto));
1150 OP *    pp_multiply     _((ARGSproto));
1151 OP *    pp_i_multiply   _((ARGSproto));
1152 OP *    pp_divide       _((ARGSproto));
1153 OP *    pp_i_divide     _((ARGSproto));
1154 OP *    pp_modulo       _((ARGSproto));
1155 OP *    pp_i_modulo     _((ARGSproto));
1156 OP *    pp_repeat       _((ARGSproto));
1157 OP *    pp_add          _((ARGSproto));
1158 OP *    pp_i_add        _((ARGSproto));
1159 OP *    pp_subtract     _((ARGSproto));
1160 OP *    pp_i_subtract   _((ARGSproto));
1161 OP *    pp_concat       _((ARGSproto));
1162 OP *    pp_stringify    _((ARGSproto));
1163 OP *    pp_left_shift   _((ARGSproto));
1164 OP *    pp_right_shift  _((ARGSproto));
1165 OP *    pp_lt           _((ARGSproto));
1166 OP *    pp_i_lt         _((ARGSproto));
1167 OP *    pp_gt           _((ARGSproto));
1168 OP *    pp_i_gt         _((ARGSproto));
1169 OP *    pp_le           _((ARGSproto));
1170 OP *    pp_i_le         _((ARGSproto));
1171 OP *    pp_ge           _((ARGSproto));
1172 OP *    pp_i_ge         _((ARGSproto));
1173 OP *    pp_eq           _((ARGSproto));
1174 OP *    pp_i_eq         _((ARGSproto));
1175 OP *    pp_ne           _((ARGSproto));
1176 OP *    pp_i_ne         _((ARGSproto));
1177 OP *    pp_ncmp         _((ARGSproto));
1178 OP *    pp_i_ncmp       _((ARGSproto));
1179 OP *    pp_slt          _((ARGSproto));
1180 OP *    pp_sgt          _((ARGSproto));
1181 OP *    pp_sle          _((ARGSproto));
1182 OP *    pp_sge          _((ARGSproto));
1183 OP *    pp_seq          _((ARGSproto));
1184 OP *    pp_sne          _((ARGSproto));
1185 OP *    pp_scmp         _((ARGSproto));
1186 OP *    pp_bit_and      _((ARGSproto));
1187 OP *    pp_bit_xor      _((ARGSproto));
1188 OP *    pp_bit_or       _((ARGSproto));
1189 OP *    pp_negate       _((ARGSproto));
1190 OP *    pp_i_negate     _((ARGSproto));
1191 OP *    pp_not          _((ARGSproto));
1192 OP *    pp_complement   _((ARGSproto));
1193 OP *    pp_atan2        _((ARGSproto));
1194 OP *    pp_sin          _((ARGSproto));
1195 OP *    pp_cos          _((ARGSproto));
1196 OP *    pp_rand         _((ARGSproto));
1197 OP *    pp_srand        _((ARGSproto));
1198 OP *    pp_exp          _((ARGSproto));
1199 OP *    pp_log          _((ARGSproto));
1200 OP *    pp_sqrt         _((ARGSproto));
1201 OP *    pp_int          _((ARGSproto));
1202 OP *    pp_hex          _((ARGSproto));
1203 OP *    pp_oct          _((ARGSproto));
1204 OP *    pp_abs          _((ARGSproto));
1205 OP *    pp_length       _((ARGSproto));
1206 OP *    pp_substr       _((ARGSproto));
1207 OP *    pp_vec          _((ARGSproto));
1208 OP *    pp_index        _((ARGSproto));
1209 OP *    pp_rindex       _((ARGSproto));
1210 OP *    pp_sprintf      _((ARGSproto));
1211 OP *    pp_formline     _((ARGSproto));
1212 OP *    pp_ord          _((ARGSproto));
1213 OP *    pp_chr          _((ARGSproto));
1214 OP *    pp_crypt        _((ARGSproto));
1215 OP *    pp_ucfirst      _((ARGSproto));
1216 OP *    pp_lcfirst      _((ARGSproto));
1217 OP *    pp_uc           _((ARGSproto));
1218 OP *    pp_lc           _((ARGSproto));
1219 OP *    pp_quotemeta    _((ARGSproto));
1220 OP *    pp_rv2av        _((ARGSproto));
1221 OP *    pp_aelemfast    _((ARGSproto));
1222 OP *    pp_aelem        _((ARGSproto));
1223 OP *    pp_aslice       _((ARGSproto));
1224 OP *    pp_each         _((ARGSproto));
1225 OP *    pp_values       _((ARGSproto));
1226 OP *    pp_keys         _((ARGSproto));
1227 OP *    pp_delete       _((ARGSproto));
1228 OP *    pp_exists       _((ARGSproto));
1229 OP *    pp_rv2hv        _((ARGSproto));
1230 OP *    pp_helem        _((ARGSproto));
1231 OP *    pp_hslice       _((ARGSproto));
1232 OP *    pp_unpack       _((ARGSproto));
1233 OP *    pp_pack         _((ARGSproto));
1234 OP *    pp_split        _((ARGSproto));
1235 OP *    pp_join         _((ARGSproto));
1236 OP *    pp_list         _((ARGSproto));
1237 OP *    pp_lslice       _((ARGSproto));
1238 OP *    pp_anonlist     _((ARGSproto));
1239 OP *    pp_anonhash     _((ARGSproto));
1240 OP *    pp_splice       _((ARGSproto));
1241 OP *    pp_push         _((ARGSproto));
1242 OP *    pp_pop          _((ARGSproto));
1243 OP *    pp_shift        _((ARGSproto));
1244 OP *    pp_unshift      _((ARGSproto));
1245 OP *    pp_sort         _((ARGSproto));
1246 OP *    pp_reverse      _((ARGSproto));
1247 OP *    pp_grepstart    _((ARGSproto));
1248 OP *    pp_grepwhile    _((ARGSproto));
1249 OP *    pp_mapstart     _((ARGSproto));
1250 OP *    pp_mapwhile     _((ARGSproto));
1251 OP *    pp_range        _((ARGSproto));
1252 OP *    pp_flip         _((ARGSproto));
1253 OP *    pp_flop         _((ARGSproto));
1254 OP *    pp_and          _((ARGSproto));
1255 OP *    pp_or           _((ARGSproto));
1256 OP *    pp_xor          _((ARGSproto));
1257 OP *    pp_cond_expr    _((ARGSproto));
1258 OP *    pp_andassign    _((ARGSproto));
1259 OP *    pp_orassign     _((ARGSproto));
1260 OP *    pp_method       _((ARGSproto));
1261 OP *    pp_entersub     _((ARGSproto));
1262 OP *    pp_leavesub     _((ARGSproto));
1263 OP *    pp_caller       _((ARGSproto));
1264 OP *    pp_warn         _((ARGSproto));
1265 OP *    pp_die          _((ARGSproto));
1266 OP *    pp_reset        _((ARGSproto));
1267 OP *    pp_lineseq      _((ARGSproto));
1268 OP *    pp_nextstate    _((ARGSproto));
1269 OP *    pp_dbstate      _((ARGSproto));
1270 OP *    pp_unstack      _((ARGSproto));
1271 OP *    pp_enter        _((ARGSproto));
1272 OP *    pp_leave        _((ARGSproto));
1273 OP *    pp_scope        _((ARGSproto));
1274 OP *    pp_enteriter    _((ARGSproto));
1275 OP *    pp_iter         _((ARGSproto));
1276 OP *    pp_enterloop    _((ARGSproto));
1277 OP *    pp_leaveloop    _((ARGSproto));
1278 OP *    pp_return       _((ARGSproto));
1279 OP *    pp_last         _((ARGSproto));
1280 OP *    pp_next         _((ARGSproto));
1281 OP *    pp_redo         _((ARGSproto));
1282 OP *    pp_dump         _((ARGSproto));
1283 OP *    pp_goto         _((ARGSproto));
1284 OP *    pp_exit         _((ARGSproto));
1285 OP *    pp_open         _((ARGSproto));
1286 OP *    pp_close        _((ARGSproto));
1287 OP *    pp_pipe_op      _((ARGSproto));
1288 OP *    pp_fileno       _((ARGSproto));
1289 OP *    pp_umask        _((ARGSproto));
1290 OP *    pp_binmode      _((ARGSproto));
1291 OP *    pp_tie          _((ARGSproto));
1292 OP *    pp_untie        _((ARGSproto));
1293 OP *    pp_tied         _((ARGSproto));
1294 OP *    pp_dbmopen      _((ARGSproto));
1295 OP *    pp_dbmclose     _((ARGSproto));
1296 OP *    pp_sselect      _((ARGSproto));
1297 OP *    pp_select       _((ARGSproto));
1298 OP *    pp_getc         _((ARGSproto));
1299 OP *    pp_read         _((ARGSproto));
1300 OP *    pp_enterwrite   _((ARGSproto));
1301 OP *    pp_leavewrite   _((ARGSproto));
1302 OP *    pp_prtf         _((ARGSproto));
1303 OP *    pp_print        _((ARGSproto));
1304 OP *    pp_sysopen      _((ARGSproto));
1305 OP *    pp_sysseek      _((ARGSproto));
1306 OP *    pp_sysread      _((ARGSproto));
1307 OP *    pp_syswrite     _((ARGSproto));
1308 OP *    pp_send         _((ARGSproto));
1309 OP *    pp_recv         _((ARGSproto));
1310 OP *    pp_eof          _((ARGSproto));
1311 OP *    pp_tell         _((ARGSproto));
1312 OP *    pp_seek         _((ARGSproto));
1313 OP *    pp_truncate     _((ARGSproto));
1314 OP *    pp_fcntl        _((ARGSproto));
1315 OP *    pp_ioctl        _((ARGSproto));
1316 OP *    pp_flock        _((ARGSproto));
1317 OP *    pp_socket       _((ARGSproto));
1318 OP *    pp_sockpair     _((ARGSproto));
1319 OP *    pp_bind         _((ARGSproto));
1320 OP *    pp_connect      _((ARGSproto));
1321 OP *    pp_listen       _((ARGSproto));
1322 OP *    pp_accept       _((ARGSproto));
1323 OP *    pp_shutdown     _((ARGSproto));
1324 OP *    pp_gsockopt     _((ARGSproto));
1325 OP *    pp_ssockopt     _((ARGSproto));
1326 OP *    pp_getsockname  _((ARGSproto));
1327 OP *    pp_getpeername  _((ARGSproto));
1328 OP *    pp_lstat        _((ARGSproto));
1329 OP *    pp_stat         _((ARGSproto));
1330 OP *    pp_ftrread      _((ARGSproto));
1331 OP *    pp_ftrwrite     _((ARGSproto));
1332 OP *    pp_ftrexec      _((ARGSproto));
1333 OP *    pp_fteread      _((ARGSproto));
1334 OP *    pp_ftewrite     _((ARGSproto));
1335 OP *    pp_fteexec      _((ARGSproto));
1336 OP *    pp_ftis         _((ARGSproto));
1337 OP *    pp_fteowned     _((ARGSproto));
1338 OP *    pp_ftrowned     _((ARGSproto));
1339 OP *    pp_ftzero       _((ARGSproto));
1340 OP *    pp_ftsize       _((ARGSproto));
1341 OP *    pp_ftmtime      _((ARGSproto));
1342 OP *    pp_ftatime      _((ARGSproto));
1343 OP *    pp_ftctime      _((ARGSproto));
1344 OP *    pp_ftsock       _((ARGSproto));
1345 OP *    pp_ftchr        _((ARGSproto));
1346 OP *    pp_ftblk        _((ARGSproto));
1347 OP *    pp_ftfile       _((ARGSproto));
1348 OP *    pp_ftdir        _((ARGSproto));
1349 OP *    pp_ftpipe       _((ARGSproto));
1350 OP *    pp_ftlink       _((ARGSproto));
1351 OP *    pp_ftsuid       _((ARGSproto));
1352 OP *    pp_ftsgid       _((ARGSproto));
1353 OP *    pp_ftsvtx       _((ARGSproto));
1354 OP *    pp_fttty        _((ARGSproto));
1355 OP *    pp_fttext       _((ARGSproto));
1356 OP *    pp_ftbinary     _((ARGSproto));
1357 OP *    pp_chdir        _((ARGSproto));
1358 OP *    pp_chown        _((ARGSproto));
1359 OP *    pp_chroot       _((ARGSproto));
1360 OP *    pp_unlink       _((ARGSproto));
1361 OP *    pp_chmod        _((ARGSproto));
1362 OP *    pp_utime        _((ARGSproto));
1363 OP *    pp_rename       _((ARGSproto));
1364 OP *    pp_link         _((ARGSproto));
1365 OP *    pp_symlink      _((ARGSproto));
1366 OP *    pp_readlink     _((ARGSproto));
1367 OP *    pp_mkdir        _((ARGSproto));
1368 OP *    pp_rmdir        _((ARGSproto));
1369 OP *    pp_open_dir     _((ARGSproto));
1370 OP *    pp_readdir      _((ARGSproto));
1371 OP *    pp_telldir      _((ARGSproto));
1372 OP *    pp_seekdir      _((ARGSproto));
1373 OP *    pp_rewinddir    _((ARGSproto));
1374 OP *    pp_closedir     _((ARGSproto));
1375 OP *    pp_fork         _((ARGSproto));
1376 OP *    pp_wait         _((ARGSproto));
1377 OP *    pp_waitpid      _((ARGSproto));
1378 OP *    pp_system       _((ARGSproto));
1379 OP *    pp_exec         _((ARGSproto));
1380 OP *    pp_kill         _((ARGSproto));
1381 OP *    pp_getppid      _((ARGSproto));
1382 OP *    pp_getpgrp      _((ARGSproto));
1383 OP *    pp_setpgrp      _((ARGSproto));
1384 OP *    pp_getpriority  _((ARGSproto));
1385 OP *    pp_setpriority  _((ARGSproto));
1386 OP *    pp_time         _((ARGSproto));
1387 OP *    pp_tms          _((ARGSproto));
1388 OP *    pp_localtime    _((ARGSproto));
1389 OP *    pp_gmtime       _((ARGSproto));
1390 OP *    pp_alarm        _((ARGSproto));
1391 OP *    pp_sleep        _((ARGSproto));
1392 OP *    pp_shmget       _((ARGSproto));
1393 OP *    pp_shmctl       _((ARGSproto));
1394 OP *    pp_shmread      _((ARGSproto));
1395 OP *    pp_shmwrite     _((ARGSproto));
1396 OP *    pp_msgget       _((ARGSproto));
1397 OP *    pp_msgctl       _((ARGSproto));
1398 OP *    pp_msgsnd       _((ARGSproto));
1399 OP *    pp_msgrcv       _((ARGSproto));
1400 OP *    pp_semget       _((ARGSproto));
1401 OP *    pp_semctl       _((ARGSproto));
1402 OP *    pp_semop        _((ARGSproto));
1403 OP *    pp_require      _((ARGSproto));
1404 OP *    pp_dofile       _((ARGSproto));
1405 OP *    pp_entereval    _((ARGSproto));
1406 OP *    pp_leaveeval    _((ARGSproto));
1407 OP *    pp_entertry     _((ARGSproto));
1408 OP *    pp_leavetry     _((ARGSproto));
1409 OP *    pp_ghbyname     _((ARGSproto));
1410 OP *    pp_ghbyaddr     _((ARGSproto));
1411 OP *    pp_ghostent     _((ARGSproto));
1412 OP *    pp_gnbyname     _((ARGSproto));
1413 OP *    pp_gnbyaddr     _((ARGSproto));
1414 OP *    pp_gnetent      _((ARGSproto));
1415 OP *    pp_gpbyname     _((ARGSproto));
1416 OP *    pp_gpbynumber   _((ARGSproto));
1417 OP *    pp_gprotoent    _((ARGSproto));
1418 OP *    pp_gsbyname     _((ARGSproto));
1419 OP *    pp_gsbyport     _((ARGSproto));
1420 OP *    pp_gservent     _((ARGSproto));
1421 OP *    pp_shostent     _((ARGSproto));
1422 OP *    pp_snetent      _((ARGSproto));
1423 OP *    pp_sprotoent    _((ARGSproto));
1424 OP *    pp_sservent     _((ARGSproto));
1425 OP *    pp_ehostent     _((ARGSproto));
1426 OP *    pp_enetent      _((ARGSproto));
1427 OP *    pp_eprotoent    _((ARGSproto));
1428 OP *    pp_eservent     _((ARGSproto));
1429 OP *    pp_gpwnam       _((ARGSproto));
1430 OP *    pp_gpwuid       _((ARGSproto));
1431 OP *    pp_gpwent       _((ARGSproto));
1432 OP *    pp_spwent       _((ARGSproto));
1433 OP *    pp_epwent       _((ARGSproto));
1434 OP *    pp_ggrnam       _((ARGSproto));
1435 OP *    pp_ggrgid       _((ARGSproto));
1436 OP *    pp_ggrent       _((ARGSproto));
1437 OP *    pp_sgrent       _((ARGSproto));
1438 OP *    pp_egrent       _((ARGSproto));
1439 OP *    pp_getlogin     _((ARGSproto));
1440 OP *    pp_syscall      _((ARGSproto));
1441 OP *    pp_lock         _((ARGSproto));
1442 OP *    pp_specific     _((ARGSproto));
1443
1444 #ifndef DOINIT
1445 EXT OP * (*ppaddr[])();
1446 #else
1447 EXT OP * (*ppaddr[])() = {
1448         pp_null,
1449         pp_stub,
1450         pp_scalar,
1451         pp_pushmark,
1452         pp_wantarray,
1453         pp_const,
1454         pp_gvsv,
1455         pp_gv,
1456         pp_gelem,
1457         pp_padsv,
1458         pp_padav,
1459         pp_padhv,
1460         pp_padany,
1461         pp_pushre,
1462         pp_rv2gv,
1463         pp_rv2sv,
1464         pp_av2arylen,
1465         pp_rv2cv,
1466         pp_anoncode,
1467         pp_prototype,
1468         pp_refgen,
1469         pp_srefgen,
1470         pp_ref,
1471         pp_bless,
1472         pp_backtick,
1473         pp_glob,
1474         pp_readline,
1475         pp_rcatline,
1476         pp_regcmaybe,
1477         pp_regcomp,
1478         pp_match,
1479         pp_subst,
1480         pp_substcont,
1481         pp_trans,
1482         pp_sassign,
1483         pp_aassign,
1484         pp_chop,
1485         pp_schop,
1486         pp_chomp,
1487         pp_schomp,
1488         pp_defined,
1489         pp_undef,
1490         pp_study,
1491         pp_pos,
1492         pp_preinc,
1493         pp_i_preinc,
1494         pp_predec,
1495         pp_i_predec,
1496         pp_postinc,
1497         pp_i_postinc,
1498         pp_postdec,
1499         pp_i_postdec,
1500         pp_pow,
1501         pp_multiply,
1502         pp_i_multiply,
1503         pp_divide,
1504         pp_i_divide,
1505         pp_modulo,
1506         pp_i_modulo,
1507         pp_repeat,
1508         pp_add,
1509         pp_i_add,
1510         pp_subtract,
1511         pp_i_subtract,
1512         pp_concat,
1513         pp_stringify,
1514         pp_left_shift,
1515         pp_right_shift,
1516         pp_lt,
1517         pp_i_lt,
1518         pp_gt,
1519         pp_i_gt,
1520         pp_le,
1521         pp_i_le,
1522         pp_ge,
1523         pp_i_ge,
1524         pp_eq,
1525         pp_i_eq,
1526         pp_ne,
1527         pp_i_ne,
1528         pp_ncmp,
1529         pp_i_ncmp,
1530         pp_slt,
1531         pp_sgt,
1532         pp_sle,
1533         pp_sge,
1534         pp_seq,
1535         pp_sne,
1536         pp_scmp,
1537         pp_bit_and,
1538         pp_bit_xor,
1539         pp_bit_or,
1540         pp_negate,
1541         pp_i_negate,
1542         pp_not,
1543         pp_complement,
1544         pp_atan2,
1545         pp_sin,
1546         pp_cos,
1547         pp_rand,
1548         pp_srand,
1549         pp_exp,
1550         pp_log,
1551         pp_sqrt,
1552         pp_int,
1553         pp_hex,
1554         pp_oct,
1555         pp_abs,
1556         pp_length,
1557         pp_substr,
1558         pp_vec,
1559         pp_index,
1560         pp_rindex,
1561         pp_sprintf,
1562         pp_formline,
1563         pp_ord,
1564         pp_chr,
1565         pp_crypt,
1566         pp_ucfirst,
1567         pp_lcfirst,
1568         pp_uc,
1569         pp_lc,
1570         pp_quotemeta,
1571         pp_rv2av,
1572         pp_aelemfast,
1573         pp_aelem,
1574         pp_aslice,
1575         pp_each,
1576         pp_values,
1577         pp_keys,
1578         pp_delete,
1579         pp_exists,
1580         pp_rv2hv,
1581         pp_helem,
1582         pp_hslice,
1583         pp_unpack,
1584         pp_pack,
1585         pp_split,
1586         pp_join,
1587         pp_list,
1588         pp_lslice,
1589         pp_anonlist,
1590         pp_anonhash,
1591         pp_splice,
1592         pp_push,
1593         pp_pop,
1594         pp_shift,
1595         pp_unshift,
1596         pp_sort,
1597         pp_reverse,
1598         pp_grepstart,
1599         pp_grepwhile,
1600         pp_mapstart,
1601         pp_mapwhile,
1602         pp_range,
1603         pp_flip,
1604         pp_flop,
1605         pp_and,
1606         pp_or,
1607         pp_xor,
1608         pp_cond_expr,
1609         pp_andassign,
1610         pp_orassign,
1611         pp_method,
1612         pp_entersub,
1613         pp_leavesub,
1614         pp_caller,
1615         pp_warn,
1616         pp_die,
1617         pp_reset,
1618         pp_lineseq,
1619         pp_nextstate,
1620         pp_dbstate,
1621         pp_unstack,
1622         pp_enter,
1623         pp_leave,
1624         pp_scope,
1625         pp_enteriter,
1626         pp_iter,
1627         pp_enterloop,
1628         pp_leaveloop,
1629         pp_return,
1630         pp_last,
1631         pp_next,
1632         pp_redo,
1633         pp_dump,
1634         pp_goto,
1635         pp_exit,
1636         pp_open,
1637         pp_close,
1638         pp_pipe_op,
1639         pp_fileno,
1640         pp_umask,
1641         pp_binmode,
1642         pp_tie,
1643         pp_untie,
1644         pp_tied,
1645         pp_dbmopen,
1646         pp_dbmclose,
1647         pp_sselect,
1648         pp_select,
1649         pp_getc,
1650         pp_read,
1651         pp_enterwrite,
1652         pp_leavewrite,
1653         pp_prtf,
1654         pp_print,
1655         pp_sysopen,
1656         pp_sysseek,
1657         pp_sysread,
1658         pp_syswrite,
1659         pp_send,
1660         pp_recv,
1661         pp_eof,
1662         pp_tell,
1663         pp_seek,
1664         pp_truncate,
1665         pp_fcntl,
1666         pp_ioctl,
1667         pp_flock,
1668         pp_socket,
1669         pp_sockpair,
1670         pp_bind,
1671         pp_connect,
1672         pp_listen,
1673         pp_accept,
1674         pp_shutdown,
1675         pp_gsockopt,
1676         pp_ssockopt,
1677         pp_getsockname,
1678         pp_getpeername,
1679         pp_lstat,
1680         pp_stat,
1681         pp_ftrread,
1682         pp_ftrwrite,
1683         pp_ftrexec,
1684         pp_fteread,
1685         pp_ftewrite,
1686         pp_fteexec,
1687         pp_ftis,
1688         pp_fteowned,
1689         pp_ftrowned,
1690         pp_ftzero,
1691         pp_ftsize,
1692         pp_ftmtime,
1693         pp_ftatime,
1694         pp_ftctime,
1695         pp_ftsock,
1696         pp_ftchr,
1697         pp_ftblk,
1698         pp_ftfile,
1699         pp_ftdir,
1700         pp_ftpipe,
1701         pp_ftlink,
1702         pp_ftsuid,
1703         pp_ftsgid,
1704         pp_ftsvtx,
1705         pp_fttty,
1706         pp_fttext,
1707         pp_ftbinary,
1708         pp_chdir,
1709         pp_chown,
1710         pp_chroot,
1711         pp_unlink,
1712         pp_chmod,
1713         pp_utime,
1714         pp_rename,
1715         pp_link,
1716         pp_symlink,
1717         pp_readlink,
1718         pp_mkdir,
1719         pp_rmdir,
1720         pp_open_dir,
1721         pp_readdir,
1722         pp_telldir,
1723         pp_seekdir,
1724         pp_rewinddir,
1725         pp_closedir,
1726         pp_fork,
1727         pp_wait,
1728         pp_waitpid,
1729         pp_system,
1730         pp_exec,
1731         pp_kill,
1732         pp_getppid,
1733         pp_getpgrp,
1734         pp_setpgrp,
1735         pp_getpriority,
1736         pp_setpriority,
1737         pp_time,
1738         pp_tms,
1739         pp_localtime,
1740         pp_gmtime,
1741         pp_alarm,
1742         pp_sleep,
1743         pp_shmget,
1744         pp_shmctl,
1745         pp_shmread,
1746         pp_shmwrite,
1747         pp_msgget,
1748         pp_msgctl,
1749         pp_msgsnd,
1750         pp_msgrcv,
1751         pp_semget,
1752         pp_semctl,
1753         pp_semop,
1754         pp_require,
1755         pp_dofile,
1756         pp_entereval,
1757         pp_leaveeval,
1758         pp_entertry,
1759         pp_leavetry,
1760         pp_ghbyname,
1761         pp_ghbyaddr,
1762         pp_ghostent,
1763         pp_gnbyname,
1764         pp_gnbyaddr,
1765         pp_gnetent,
1766         pp_gpbyname,
1767         pp_gpbynumber,
1768         pp_gprotoent,
1769         pp_gsbyname,
1770         pp_gsbyport,
1771         pp_gservent,
1772         pp_shostent,
1773         pp_snetent,
1774         pp_sprotoent,
1775         pp_sservent,
1776         pp_ehostent,
1777         pp_enetent,
1778         pp_eprotoent,
1779         pp_eservent,
1780         pp_gpwnam,
1781         pp_gpwuid,
1782         pp_gpwent,
1783         pp_spwent,
1784         pp_epwent,
1785         pp_ggrnam,
1786         pp_ggrgid,
1787         pp_ggrent,
1788         pp_sgrent,
1789         pp_egrent,
1790         pp_getlogin,
1791         pp_syscall,
1792         pp_lock,
1793         pp_specific,
1794 };
1795 #endif
1796
1797 #ifndef DOINIT
1798 EXT OP * (*check[]) _((OP *op));
1799 #else
1800 EXT OP * (*check[]) _((OP *op)) = {
1801         ck_null,        /* null */
1802         ck_null,        /* stub */
1803         ck_fun,         /* scalar */
1804         ck_null,        /* pushmark */
1805         ck_null,        /* wantarray */
1806         ck_svconst,     /* const */
1807         ck_null,        /* gvsv */
1808         ck_null,        /* gv */
1809         ck_null,        /* gelem */
1810         ck_null,        /* padsv */
1811         ck_null,        /* padav */
1812         ck_null,        /* padhv */
1813         ck_null,        /* padany */
1814         ck_null,        /* pushre */
1815         ck_rvconst,     /* rv2gv */
1816         ck_rvconst,     /* rv2sv */
1817         ck_null,        /* av2arylen */
1818         ck_rvconst,     /* rv2cv */
1819         ck_anoncode,    /* anoncode */
1820         ck_null,        /* prototype */
1821         ck_spair,       /* refgen */
1822         ck_null,        /* srefgen */
1823         ck_fun,         /* ref */
1824         ck_fun,         /* bless */
1825         ck_null,        /* backtick */
1826         ck_glob,        /* glob */
1827         ck_null,        /* readline */
1828         ck_null,        /* rcatline */
1829         ck_fun,         /* regcmaybe */
1830         ck_null,        /* regcomp */
1831         ck_match,       /* match */
1832         ck_null,        /* subst */
1833         ck_null,        /* substcont */
1834         ck_null,        /* trans */
1835         ck_null,        /* sassign */
1836         ck_null,        /* aassign */
1837         ck_spair,       /* chop */
1838         ck_null,        /* schop */
1839         ck_spair,       /* chomp */
1840         ck_null,        /* schomp */
1841         ck_rfun,        /* defined */
1842         ck_lfun,        /* undef */
1843         ck_fun,         /* study */
1844         ck_lfun,        /* pos */
1845         ck_lfun,        /* preinc */
1846         ck_lfun,        /* i_preinc */
1847         ck_lfun,        /* predec */
1848         ck_lfun,        /* i_predec */
1849         ck_lfun,        /* postinc */
1850         ck_lfun,        /* i_postinc */
1851         ck_lfun,        /* postdec */
1852         ck_lfun,        /* i_postdec */
1853         ck_null,        /* pow */
1854         ck_null,        /* multiply */
1855         ck_null,        /* i_multiply */
1856         ck_null,        /* divide */
1857         ck_null,        /* i_divide */
1858         ck_null,        /* modulo */
1859         ck_null,        /* i_modulo */
1860         ck_repeat,      /* repeat */
1861         ck_null,        /* add */
1862         ck_null,        /* i_add */
1863         ck_null,        /* subtract */
1864         ck_null,        /* i_subtract */
1865         ck_concat,      /* concat */
1866         ck_fun,         /* stringify */
1867         ck_bitop,       /* left_shift */
1868         ck_bitop,       /* right_shift */
1869         ck_null,        /* lt */
1870         ck_null,        /* i_lt */
1871         ck_null,        /* gt */
1872         ck_null,        /* i_gt */
1873         ck_null,        /* le */
1874         ck_null,        /* i_le */
1875         ck_null,        /* ge */
1876         ck_null,        /* i_ge */
1877         ck_null,        /* eq */
1878         ck_null,        /* i_eq */
1879         ck_null,        /* ne */
1880         ck_null,        /* i_ne */
1881         ck_null,        /* ncmp */
1882         ck_null,        /* i_ncmp */
1883         ck_scmp,        /* slt */
1884         ck_scmp,        /* sgt */
1885         ck_scmp,        /* sle */
1886         ck_scmp,        /* sge */
1887         ck_null,        /* seq */
1888         ck_null,        /* sne */
1889         ck_scmp,        /* scmp */
1890         ck_bitop,       /* bit_and */
1891         ck_bitop,       /* bit_xor */
1892         ck_bitop,       /* bit_or */
1893         ck_null,        /* negate */
1894         ck_null,        /* i_negate */
1895         ck_null,        /* not */
1896         ck_bitop,       /* complement */
1897         ck_fun,         /* atan2 */
1898         ck_fun,         /* sin */
1899         ck_fun,         /* cos */
1900         ck_fun,         /* rand */
1901         ck_fun,         /* srand */
1902         ck_fun,         /* exp */
1903         ck_fun,         /* log */
1904         ck_fun,         /* sqrt */
1905         ck_fun,         /* int */
1906         ck_fun,         /* hex */
1907         ck_fun,         /* oct */
1908         ck_fun,         /* abs */
1909         ck_lengthconst, /* length */
1910         ck_fun,         /* substr */
1911         ck_fun,         /* vec */
1912         ck_index,       /* index */
1913         ck_index,       /* rindex */
1914         ck_fun_locale,  /* sprintf */
1915         ck_fun,         /* formline */
1916         ck_fun,         /* ord */
1917         ck_fun,         /* chr */
1918         ck_fun,         /* crypt */
1919         ck_fun_locale,  /* ucfirst */
1920         ck_fun_locale,  /* lcfirst */
1921         ck_fun_locale,  /* uc */
1922         ck_fun_locale,  /* lc */
1923         ck_fun,         /* quotemeta */
1924         ck_rvconst,     /* rv2av */
1925         ck_null,        /* aelemfast */
1926         ck_null,        /* aelem */
1927         ck_null,        /* aslice */
1928         ck_fun,         /* each */
1929         ck_fun,         /* values */
1930         ck_fun,         /* keys */
1931         ck_delete,      /* delete */
1932         ck_exists,      /* exists */
1933         ck_rvconst,     /* rv2hv */
1934         ck_null,        /* helem */
1935         ck_null,        /* hslice */
1936         ck_fun,         /* unpack */
1937         ck_fun,         /* pack */
1938         ck_split,       /* split */
1939         ck_fun,         /* join */
1940         ck_null,        /* list */
1941         ck_null,        /* lslice */
1942         ck_fun,         /* anonlist */
1943         ck_fun,         /* anonhash */
1944         ck_fun,         /* splice */
1945         ck_fun,         /* push */
1946         ck_shift,       /* pop */
1947         ck_shift,       /* shift */
1948         ck_fun,         /* unshift */
1949         ck_sort,        /* sort */
1950         ck_fun,         /* reverse */
1951         ck_grep,        /* grepstart */
1952         ck_null,        /* grepwhile */
1953         ck_grep,        /* mapstart */
1954         ck_null,        /* mapwhile */
1955         ck_null,        /* range */
1956         ck_null,        /* flip */
1957         ck_null,        /* flop */
1958         ck_null,        /* and */
1959         ck_null,        /* or */
1960         ck_null,        /* xor */
1961         ck_null,        /* cond_expr */
1962         ck_null,        /* andassign */
1963         ck_null,        /* orassign */
1964         ck_null,        /* method */
1965         ck_subr,        /* entersub */
1966         ck_null,        /* leavesub */
1967         ck_fun,         /* caller */
1968         ck_fun,         /* warn */
1969         ck_fun,         /* die */
1970         ck_fun,         /* reset */
1971         ck_null,        /* lineseq */
1972         ck_null,        /* nextstate */
1973         ck_null,        /* dbstate */
1974         ck_null,        /* unstack */
1975         ck_null,        /* enter */
1976         ck_null,        /* leave */
1977         ck_null,        /* scope */
1978         ck_null,        /* enteriter */
1979         ck_null,        /* iter */
1980         ck_null,        /* enterloop */
1981         ck_null,        /* leaveloop */
1982         ck_null,        /* return */
1983         ck_null,        /* last */
1984         ck_null,        /* next */
1985         ck_null,        /* redo */
1986         ck_null,        /* dump */
1987         ck_null,        /* goto */
1988         ck_fun,         /* exit */
1989         ck_fun,         /* open */
1990         ck_fun,         /* close */
1991         ck_fun,         /* pipe_op */
1992         ck_fun,         /* fileno */
1993         ck_fun,         /* umask */
1994         ck_fun,         /* binmode */
1995         ck_fun,         /* tie */
1996         ck_fun,         /* untie */
1997         ck_fun,         /* tied */
1998         ck_fun,         /* dbmopen */
1999         ck_fun,         /* dbmclose */
2000         ck_select,      /* sselect */
2001         ck_select,      /* select */
2002         ck_eof,         /* getc */
2003         ck_fun,         /* read */
2004         ck_fun,         /* enterwrite */
2005         ck_null,        /* leavewrite */
2006         ck_listiob,     /* prtf */
2007         ck_listiob,     /* print */
2008         ck_fun,         /* sysopen */
2009         ck_fun,         /* sysseek */
2010         ck_fun,         /* sysread */
2011         ck_fun,         /* syswrite */
2012         ck_fun,         /* send */
2013         ck_fun,         /* recv */
2014         ck_eof,         /* eof */
2015         ck_fun,         /* tell */
2016         ck_fun,         /* seek */
2017         ck_trunc,       /* truncate */
2018         ck_fun,         /* fcntl */
2019         ck_fun,         /* ioctl */
2020         ck_fun,         /* flock */
2021         ck_fun,         /* socket */
2022         ck_fun,         /* sockpair */
2023         ck_fun,         /* bind */
2024         ck_fun,         /* connect */
2025         ck_fun,         /* listen */
2026         ck_fun,         /* accept */
2027         ck_fun,         /* shutdown */
2028         ck_fun,         /* gsockopt */
2029         ck_fun,         /* ssockopt */
2030         ck_fun,         /* getsockname */
2031         ck_fun,         /* getpeername */
2032         ck_ftst,        /* lstat */
2033         ck_ftst,        /* stat */
2034         ck_ftst,        /* ftrread */
2035         ck_ftst,        /* ftrwrite */
2036         ck_ftst,        /* ftrexec */
2037         ck_ftst,        /* fteread */
2038         ck_ftst,        /* ftewrite */
2039         ck_ftst,        /* fteexec */
2040         ck_ftst,        /* ftis */
2041         ck_ftst,        /* fteowned */
2042         ck_ftst,        /* ftrowned */
2043         ck_ftst,        /* ftzero */
2044         ck_ftst,        /* ftsize */
2045         ck_ftst,        /* ftmtime */
2046         ck_ftst,        /* ftatime */
2047         ck_ftst,        /* ftctime */
2048         ck_ftst,        /* ftsock */
2049         ck_ftst,        /* ftchr */
2050         ck_ftst,        /* ftblk */
2051         ck_ftst,        /* ftfile */
2052         ck_ftst,        /* ftdir */
2053         ck_ftst,        /* ftpipe */
2054         ck_ftst,        /* ftlink */
2055         ck_ftst,        /* ftsuid */
2056         ck_ftst,        /* ftsgid */
2057         ck_ftst,        /* ftsvtx */
2058         ck_ftst,        /* fttty */
2059         ck_ftst,        /* fttext */
2060         ck_ftst,        /* ftbinary */
2061         ck_fun,         /* chdir */
2062         ck_fun,         /* chown */
2063         ck_fun,         /* chroot */
2064         ck_fun,         /* unlink */
2065         ck_fun,         /* chmod */
2066         ck_fun,         /* utime */
2067         ck_fun,         /* rename */
2068         ck_fun,         /* link */
2069         ck_fun,         /* symlink */
2070         ck_fun,         /* readlink */
2071         ck_fun,         /* mkdir */
2072         ck_fun,         /* rmdir */
2073         ck_fun,         /* open_dir */
2074         ck_fun,         /* readdir */
2075         ck_fun,         /* telldir */
2076         ck_fun,         /* seekdir */
2077         ck_fun,         /* rewinddir */
2078         ck_fun,         /* closedir */
2079         ck_null,        /* fork */
2080         ck_null,        /* wait */
2081         ck_fun,         /* waitpid */
2082         ck_exec,        /* system */
2083         ck_exec,        /* exec */
2084         ck_fun,         /* kill */
2085         ck_null,        /* getppid */
2086         ck_fun,         /* getpgrp */
2087         ck_fun,         /* setpgrp */
2088         ck_fun,         /* getpriority */
2089         ck_fun,         /* setpriority */
2090         ck_null,        /* time */
2091         ck_null,        /* tms */
2092         ck_fun,         /* localtime */
2093         ck_fun,         /* gmtime */
2094         ck_fun,         /* alarm */
2095         ck_fun,         /* sleep */
2096         ck_fun,         /* shmget */
2097         ck_fun,         /* shmctl */
2098         ck_fun,         /* shmread */
2099         ck_fun,         /* shmwrite */
2100         ck_fun,         /* msgget */
2101         ck_fun,         /* msgctl */
2102         ck_fun,         /* msgsnd */
2103         ck_fun,         /* msgrcv */
2104         ck_fun,         /* semget */
2105         ck_fun,         /* semctl */
2106         ck_fun,         /* semop */
2107         ck_require,     /* require */
2108         ck_fun,         /* dofile */
2109         ck_eval,        /* entereval */
2110         ck_null,        /* leaveeval */
2111         ck_null,        /* entertry */
2112         ck_null,        /* leavetry */
2113         ck_fun,         /* ghbyname */
2114         ck_fun,         /* ghbyaddr */
2115         ck_null,        /* ghostent */
2116         ck_fun,         /* gnbyname */
2117         ck_fun,         /* gnbyaddr */
2118         ck_null,        /* gnetent */
2119         ck_fun,         /* gpbyname */
2120         ck_fun,         /* gpbynumber */
2121         ck_null,        /* gprotoent */
2122         ck_fun,         /* gsbyname */
2123         ck_fun,         /* gsbyport */
2124         ck_null,        /* gservent */
2125         ck_fun,         /* shostent */
2126         ck_fun,         /* snetent */
2127         ck_fun,         /* sprotoent */
2128         ck_fun,         /* sservent */
2129         ck_null,        /* ehostent */
2130         ck_null,        /* enetent */
2131         ck_null,        /* eprotoent */
2132         ck_null,        /* eservent */
2133         ck_fun,         /* gpwnam */
2134         ck_fun,         /* gpwuid */
2135         ck_null,        /* gpwent */
2136         ck_null,        /* spwent */
2137         ck_null,        /* epwent */
2138         ck_fun,         /* ggrnam */
2139         ck_fun,         /* ggrgid */
2140         ck_null,        /* ggrent */
2141         ck_null,        /* sgrent */
2142         ck_null,        /* egrent */
2143         ck_null,        /* getlogin */
2144         ck_fun,         /* syscall */
2145         ck_rfun,        /* lock */
2146         ck_null,        /* specific */
2147 };
2148 #endif
2149
2150 #ifndef DOINIT
2151 EXT U32 opargs[];
2152 #else
2153 EXT U32 opargs[] = {
2154         0x00000000,     /* null */
2155         0x00000000,     /* stub */
2156         0x00001c04,     /* scalar */
2157         0x00000004,     /* pushmark */
2158         0x00000014,     /* wantarray */
2159         0x00000704,     /* const */
2160         0x00000844,     /* gvsv */
2161         0x00000844,     /* gv */
2162         0x00011240,     /* gelem */
2163         0x00000044,     /* padsv */
2164         0x00000040,     /* padav */
2165         0x00000040,     /* padhv */
2166         0x00000040,     /* padany */
2167         0x00000600,     /* pushre */
2168         0x00000144,     /* rv2gv */
2169         0x00000144,     /* rv2sv */
2170         0x00000114,     /* av2arylen */
2171         0x00000140,     /* rv2cv */
2172         0x00000700,     /* anoncode */
2173         0x00001c04,     /* prototype */
2174         0x00002001,     /* refgen */
2175         0x00001006,     /* srefgen */
2176         0x00009c8c,     /* ref */
2177         0x00091504,     /* bless */
2178         0x00000c08,     /* backtick */
2179         0x00099508,     /* glob */
2180         0x00000c08,     /* readline */
2181         0x00000c08,     /* rcatline */
2182         0x00001104,     /* regcmaybe */
2183         0x00001304,     /* regcomp */
2184         0x00000640,     /* match */
2185         0x00001654,     /* subst */
2186         0x00000354,     /* substcont */
2187         0x00001914,     /* trans */
2188         0x00000004,     /* sassign */
2189         0x00022208,     /* aassign */
2190         0x00002c0d,     /* chop */
2191         0x00009c8c,     /* schop */
2192         0x00002c0d,     /* chomp */
2193         0x00009c8c,     /* schomp */
2194         0x00009c94,     /* defined */
2195         0x00009c04,     /* undef */
2196         0x00009c84,     /* study */
2197         0x00009c8c,     /* pos */
2198         0x00001164,     /* preinc */
2199         0x00001154,     /* i_preinc */
2200         0x00001164,     /* predec */
2201         0x00001154,     /* i_predec */
2202         0x0000116c,     /* postinc */
2203         0x0000115c,     /* i_postinc */
2204         0x0000116c,     /* postdec */
2205         0x0000115c,     /* i_postdec */
2206         0x0001120e,     /* pow */
2207         0x0001122e,     /* multiply */
2208         0x0001121e,     /* i_multiply */
2209         0x0001122e,     /* divide */
2210         0x0001121e,     /* i_divide */
2211         0x0001123e,     /* modulo */
2212         0x0001121e,     /* i_modulo */
2213         0x00012209,     /* repeat */
2214         0x0001122e,     /* add */
2215         0x0001121e,     /* i_add */
2216         0x0001122e,     /* subtract */
2217         0x0001121e,     /* i_subtract */
2218         0x0001120e,     /* concat */
2219         0x0000150e,     /* stringify */
2220         0x0001120e,     /* left_shift */
2221         0x0001120e,     /* right_shift */
2222         0x00011236,     /* lt */
2223         0x00011216,     /* i_lt */
2224         0x00011236,     /* gt */
2225         0x00011216,     /* i_gt */
2226         0x00011236,     /* le */
2227         0x00011216,     /* i_le */
2228         0x00011236,     /* ge */
2229         0x00011216,     /* i_ge */
2230         0x00011236,     /* eq */
2231         0x00011216,     /* i_eq */
2232         0x00011236,     /* ne */
2233         0x00011216,     /* i_ne */
2234         0x0001123e,     /* ncmp */
2235         0x0001121e,     /* i_ncmp */
2236         0x00011216,     /* slt */
2237         0x00011216,     /* sgt */
2238         0x00011216,     /* sle */
2239         0x00011216,     /* sge */
2240         0x00011216,     /* seq */
2241         0x00011216,     /* sne */
2242         0x0001121e,     /* scmp */
2243         0x0001120e,     /* bit_and */
2244         0x0001120e,     /* bit_xor */
2245         0x0001120e,     /* bit_or */
2246         0x0000112e,     /* negate */
2247         0x0000111e,     /* i_negate */
2248         0x00001116,     /* not */
2249         0x0000110e,     /* complement */
2250         0x0001150e,     /* atan2 */
2251         0x00009c8e,     /* sin */
2252         0x00009c8e,     /* cos */
2253         0x00009c0c,     /* rand */
2254         0x00009c04,     /* srand */
2255         0x00009c8e,     /* exp */
2256         0x00009c8e,     /* log */
2257         0x00009c8e,     /* sqrt */
2258         0x00009c8e,     /* int */
2259         0x00009c8e,     /* hex */
2260         0x00009c8e,     /* oct */
2261         0x00009c8e,     /* abs */
2262         0x00009c9c,     /* length */
2263         0x0091150c,     /* substr */
2264         0x0011151c,     /* vec */
2265         0x0091151c,     /* index */
2266         0x0091151c,     /* rindex */
2267         0x0002150f,     /* sprintf */
2268         0x00021505,     /* formline */
2269         0x00009c9e,     /* ord */
2270         0x00009c8e,     /* chr */
2271         0x0001150e,     /* crypt */
2272         0x00009c8e,     /* ucfirst */
2273         0x00009c8e,     /* lcfirst */
2274         0x00009c8e,     /* uc */
2275         0x00009c8e,     /* lc */
2276         0x00009c8e,     /* quotemeta */
2277         0x00000148,     /* rv2av */
2278         0x00013804,     /* aelemfast */
2279         0x00013204,     /* aelem */
2280         0x00023501,     /* aslice */
2281         0x00004c08,     /* each */
2282         0x00004c08,     /* values */
2283         0x00004c08,     /* keys */
2284         0x00001c00,     /* delete */
2285         0x00001c14,     /* exists */
2286         0x00000148,     /* rv2hv */
2287         0x00014204,     /* helem */
2288         0x00024501,     /* hslice */
2289         0x00011500,     /* unpack */
2290         0x0002150d,     /* pack */
2291         0x00111508,     /* split */
2292         0x0002150d,     /* join */
2293         0x00002501,     /* list */
2294         0x00224200,     /* lslice */
2295         0x00002505,     /* anonlist */
2296         0x00002505,     /* anonhash */
2297         0x02993501,     /* splice */
2298         0x0002351d,     /* push */
2299         0x00003c14,     /* pop */
2300         0x00003c04,     /* shift */
2301         0x0002351d,     /* unshift */
2302         0x0002d501,     /* sort */
2303         0x00002509,     /* reverse */
2304         0x00025541,     /* grepstart */
2305         0x00000348,     /* grepwhile */
2306         0x00025541,     /* mapstart */
2307         0x00000348,     /* mapwhile */
2308         0x00011400,     /* range */
2309         0x00011100,     /* flip */
2310         0x00000100,     /* flop */
2311         0x00000300,     /* and */
2312         0x00000300,     /* or */
2313         0x00011306,     /* xor */
2314         0x00000440,     /* cond_expr */
2315         0x00000304,     /* andassign */
2316         0x00000304,     /* orassign */
2317         0x00000140,     /* method */
2318         0x00002149,     /* entersub */
2319         0x00000100,     /* leavesub */
2320         0x00009c08,     /* caller */
2321         0x0000251d,     /* warn */
2322         0x0000255d,     /* die */
2323         0x00009c14,     /* reset */
2324         0x00000500,     /* lineseq */
2325         0x00000b04,     /* nextstate */
2326         0x00000b04,     /* dbstate */
2327         0x00000004,     /* unstack */
2328         0x00000000,     /* enter */
2329         0x00000500,     /* leave */
2330         0x00000500,     /* scope */
2331         0x00000a40,     /* enteriter */
2332         0x00000000,     /* iter */
2333         0x00000a40,     /* enterloop */
2334         0x00000200,     /* leaveloop */
2335         0x00002541,     /* return */
2336         0x00000e44,     /* last */
2337         0x00000e44,     /* next */
2338         0x00000e44,     /* redo */
2339         0x00000e44,     /* dump */
2340         0x00000e44,     /* goto */
2341         0x00009c44,     /* exit */
2342         0x0009651c,     /* open */
2343         0x0000ec14,     /* close */
2344         0x00066514,     /* pipe_op */
2345         0x00006c1c,     /* fileno */
2346         0x00009c1c,     /* umask */
2347         0x00006c04,     /* binmode */
2348         0x00217555,     /* tie */
2349         0x00007c14,     /* untie */
2350         0x00007c04,     /* tied */
2351         0x00114514,     /* dbmopen */
2352         0x00004c14,     /* dbmclose */
2353         0x01111508,     /* sselect */
2354         0x0000e50c,     /* select */
2355         0x0000ec0c,     /* getc */
2356         0x0917651d,     /* read */
2357         0x0000ec54,     /* enterwrite */
2358         0x00000100,     /* leavewrite */
2359         0x0002e515,     /* prtf */
2360         0x0002e515,     /* print */
2361         0x09116504,     /* sysopen */
2362         0x00116504,     /* sysseek */
2363         0x0917651d,     /* sysread */
2364         0x0911651d,     /* syswrite */
2365         0x0911651d,     /* send */
2366         0x0117651d,     /* recv */
2367         0x0000ec14,     /* eof */
2368         0x0000ec0c,     /* tell */
2369         0x00116504,     /* seek */
2370         0x00011514,     /* truncate */
2371         0x0011650c,     /* fcntl */
2372         0x0011650c,     /* ioctl */
2373         0x0001651c,     /* flock */
2374         0x01116514,     /* socket */
2375         0x11166514,     /* sockpair */
2376         0x00016514,     /* bind */
2377         0x00016514,     /* connect */
2378         0x00016514,     /* listen */
2379         0x0006651c,     /* accept */
2380         0x0001651c,     /* shutdown */
2381         0x00116514,     /* gsockopt */
2382         0x01116514,     /* ssockopt */
2383         0x00006c14,     /* getsockname */
2384         0x00006c14,     /* getpeername */
2385         0x00006d80,     /* lstat */
2386         0x00006d80,     /* stat */
2387         0x00006d94,     /* ftrread */
2388         0x00006d94,     /* ftrwrite */
2389         0x00006d94,     /* ftrexec */
2390         0x00006d94,     /* fteread */
2391         0x00006d94,     /* ftewrite */
2392         0x00006d94,     /* fteexec */
2393         0x00006d94,     /* ftis */
2394         0x00006d94,     /* fteowned */
2395         0x00006d94,     /* ftrowned */
2396         0x00006d94,     /* ftzero */
2397         0x00006d9c,     /* ftsize */
2398         0x00006d8c,     /* ftmtime */
2399         0x00006d8c,     /* ftatime */
2400         0x00006d8c,     /* ftctime */
2401         0x00006d94,     /* ftsock */
2402         0x00006d94,     /* ftchr */
2403         0x00006d94,     /* ftblk */
2404         0x00006d94,     /* ftfile */
2405         0x00006d94,     /* ftdir */
2406         0x00006d94,     /* ftpipe */
2407         0x00006d94,     /* ftlink */
2408         0x00006d94,     /* ftsuid */
2409         0x00006d94,     /* ftsgid */
2410         0x00006d94,     /* ftsvtx */
2411         0x00006d14,     /* fttty */
2412         0x00006d94,     /* fttext */
2413         0x00006d94,     /* ftbinary */
2414         0x00009c1c,     /* chdir */
2415         0x0000251d,     /* chown */
2416         0x00009c9c,     /* chroot */
2417         0x0000259d,     /* unlink */
2418         0x0000251d,     /* chmod */
2419         0x0000251d,     /* utime */
2420         0x0001151c,     /* rename */
2421         0x0001151c,     /* link */
2422         0x0001151c,     /* symlink */
2423         0x00009c8c,     /* readlink */
2424         0x0001151c,     /* mkdir */
2425         0x00009c9c,     /* rmdir */
2426         0x00016514,     /* open_dir */
2427         0x00006c00,     /* readdir */
2428         0x00006c0c,     /* telldir */
2429         0x00016504,     /* seekdir */
2430         0x00006c04,     /* rewinddir */
2431         0x00006c14,     /* closedir */
2432         0x0000001c,     /* fork */
2433         0x0000001c,     /* wait */
2434         0x0001151c,     /* waitpid */
2435         0x0002951d,     /* system */
2436         0x0002955d,     /* exec */
2437         0x0000255d,     /* kill */
2438         0x0000001c,     /* getppid */
2439         0x00009c1c,     /* getpgrp */
2440         0x0009951c,     /* setpgrp */
2441         0x0001151c,     /* getpriority */
2442         0x0011151c,     /* setpriority */
2443         0x0000001c,     /* time */
2444         0x00000000,     /* tms */
2445         0x00009c08,     /* localtime */
2446         0x00009c08,     /* gmtime */
2447         0x00009c9c,     /* alarm */
2448         0x00009c1c,     /* sleep */
2449         0x0011151d,     /* shmget */
2450         0x0011151d,     /* shmctl */
2451         0x0111151d,     /* shmread */
2452         0x0111151d,     /* shmwrite */
2453         0x0001151d,     /* msgget */
2454         0x0011151d,     /* msgctl */
2455         0x0011151d,     /* msgsnd */
2456         0x1111151d,     /* msgrcv */
2457         0x0011151d,     /* semget */
2458         0x0111151d,     /* semctl */
2459         0x0001151d,     /* semop */
2460         0x00009cc0,     /* require */
2461         0x00001140,     /* dofile */
2462         0x00001c40,     /* entereval */
2463         0x00001100,     /* leaveeval */
2464         0x00000300,     /* entertry */
2465         0x00000500,     /* leavetry */
2466         0x00001c00,     /* ghbyname */
2467         0x00011500,     /* ghbyaddr */
2468         0x00000000,     /* ghostent */
2469         0x00001c00,     /* gnbyname */
2470         0x00011500,     /* gnbyaddr */
2471         0x00000000,     /* gnetent */
2472         0x00001c00,     /* gpbyname */
2473         0x00001500,     /* gpbynumber */
2474         0x00000000,     /* gprotoent */
2475         0x00011500,     /* gsbyname */
2476         0x00011500,     /* gsbyport */
2477         0x00000000,     /* gservent */
2478         0x00001c14,     /* shostent */
2479         0x00001c14,     /* snetent */
2480         0x00001c14,     /* sprotoent */
2481         0x00001c14,     /* sservent */
2482         0x00000014,     /* ehostent */
2483         0x00000014,     /* enetent */
2484         0x00000014,     /* eprotoent */
2485         0x00000014,     /* eservent */
2486         0x00001c00,     /* gpwnam */
2487         0x00001c00,     /* gpwuid */
2488         0x00000000,     /* gpwent */
2489         0x00000014,     /* spwent */
2490         0x00000014,     /* epwent */
2491         0x00001c00,     /* ggrnam */
2492         0x00001c00,     /* ggrgid */
2493         0x00000000,     /* ggrent */
2494         0x00000014,     /* sgrent */
2495         0x00000014,     /* egrent */
2496         0x0000000c,     /* getlogin */
2497         0x0002151d,     /* syscall */
2498         0x00001c04,     /* lock */
2499         0x00000044,     /* specific */
2500 };
2501 #endif