X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=opcode.h;h=62a7a3315921750df7935a44e75ed8050acf83d7;hb=a77df738193280ffa098f7f89c9640b77c4b9d4c;hp=7ac38950f39cef329c7d24a2aeb71c8ad6b05503;hpb=4e35701fd273ba8d0093a29660dee38a92408e9b;p=p5sagit%2Fp5-mst-13.2.git diff --git a/opcode.h b/opcode.h index 7ac3895..62a7a33 100644 --- a/opcode.h +++ b/opcode.h @@ -349,10 +349,11 @@ typedef enum { OP_GETLOGIN, /* 342 */ OP_SYSCALL, /* 343 */ OP_LOCK, /* 344 */ + OP_THREADSV, /* 345 */ OP_max } opcode; -#define MAXO 345 +#define MAXO 346 #ifndef DOINIT EXT char *op_name[]; @@ -703,6 +704,7 @@ EXT char *op_name[] = { "getlogin", "syscall", "lock", + "threadsv", }; #endif @@ -1055,9 +1057,11 @@ EXT char *op_desc[] = { "getlogin", "syscall", "lock", + "per-thread variable", }; #endif +#ifndef PERL_OBJECT START_EXTERN_C OP * ck_anoncode _((OP* o)); @@ -1438,14 +1442,16 @@ OP * pp_egrent _((ARGSproto)); OP * pp_getlogin _((ARGSproto)); OP * pp_syscall _((ARGSproto)); OP * pp_lock _((ARGSproto)); - +OP * pp_threadsv _((ARGSproto)); END_EXTERN_C +#endif /* PERL_OBJECT */ #ifndef DOINIT -EXT OP * (*ppaddr[])_((ARGSproto)); +EXT OP * (CPERLscope(*ppaddr)[])(ARGSproto); #else -EXT OP * (*ppaddr[])_((ARGSproto)) = { +#ifndef PERL_OBJECT +EXT OP * (CPERLscope(*ppaddr)[])(ARGSproto) = { pp_null, pp_stub, pp_scalar, @@ -1791,13 +1797,16 @@ EXT OP * (*ppaddr[])_((ARGSproto)) = { pp_getlogin, pp_syscall, pp_lock, + pp_threadsv, }; +#endif /* PERL_OBJECT */ #endif -#ifndef DOINIT -EXT OP * (*check[]) _((OP *op)); +#ifndef DOINIT +EXT OP * (CPERLscope(*check)[]) _((OP *op)); #else -EXT OP * (*check[]) _((OP *op)) = { +#ifndef PERL_OBJECT +EXT OP * (CPERLscope(*check)[]) _((OP *op)) = { ck_null, /* null */ ck_null, /* stub */ ck_fun, /* scalar */ @@ -2143,7 +2152,9 @@ EXT OP * (*check[]) _((OP *op)) = { ck_null, /* getlogin */ ck_fun, /* syscall */ ck_rfun, /* lock */ + ck_null, /* threadsv */ }; +#endif /* PERL_OBJECT */ #endif #ifndef DOINIT @@ -2259,7 +2270,7 @@ EXT U32 opargs[] = { 0x00009c8e, /* oct */ 0x00009c8e, /* abs */ 0x00009c9c, /* length */ - 0x0091150c, /* substr */ + 0x0991150c, /* substr */ 0x0011151c, /* vec */ 0x0091151c, /* index */ 0x0091151c, /* rindex */ @@ -2495,6 +2506,6 @@ EXT U32 opargs[] = { 0x0000000c, /* getlogin */ 0x0002151d, /* syscall */ 0x00001c04, /* lock */ + 0x00000044, /* threadsv */ }; #endif -