Andy Dougherty's configuration patches (Config_63-01 up to 04).
[p5sagit/p5-mst-13.2.git] / opcode.h
index 3f2a5c2..e243548 100644 (file)
--- 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