X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=opcode.h;h=e243548971410983deea8dae7c36fc3ef9ed7d2a;hb=dc45a647708b6c5442e1362e6b6e7a2583c30346;hp=3f2a5c290b9be5b62e9de2cde98c14a7b42be0e1;hpb=db173bac9b6de7d701a38c2f8b62f2fce229ec77;p=p5sagit%2Fp5-mst-13.2.git diff --git a/opcode.h b/opcode.h index 3f2a5c2..e243548 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,12 @@ EXT char *op_desc[] = { "getlogin", "syscall", "lock", + "per-thread variable", }; #endif +START_EXTERN_C + OP * ck_anoncode _((OP* o)); OP * ck_bitop _((OP* o)); OP * ck_concat _((OP* o)); @@ -1436,11 +1441,14 @@ OP * pp_egrent _((ARGSproto)); OP * pp_getlogin _((ARGSproto)); OP * pp_syscall _((ARGSproto)); OP * pp_lock _((ARGSproto)); +OP * pp_threadsv _((ARGSproto)); + +END_EXTERN_C #ifndef DOINIT -EXT OP * (*ppaddr[])(); +EXT OP * (*ppaddr[])(ARGSproto); #else -EXT OP * (*ppaddr[])() = { +EXT OP * (*ppaddr[])(ARGSproto) = { pp_null, pp_stub, pp_scalar, @@ -1786,6 +1794,7 @@ EXT OP * (*ppaddr[])() = { pp_getlogin, pp_syscall, pp_lock, + pp_threadsv, }; #endif @@ -2138,6 +2147,7 @@ EXT OP * (*check[]) _((OP *op)) = { ck_null, /* getlogin */ ck_fun, /* syscall */ ck_rfun, /* lock */ + ck_null, /* threadsv */ }; #endif @@ -2490,5 +2500,6 @@ EXT U32 opargs[] = { 0x0000000c, /* getlogin */ 0x0002151d, /* syscall */ 0x00001c04, /* lock */ + 0x00000044, /* threadsv */ }; #endif