From: Vincent Pit Date: Fri, 6 Sep 2013 15:32:20 +0000 (+0200) Subject: Rename , lt_op_map to , lt_op_padxv_map X-Git-Tag: v0.13~14 X-Git-Url: http://git.vpit.fr/?p=perl%2Fmodules%2FLexical-Types.git;a=commitdiff_plain;h=b5122742fcc1f1f4c219d40894c9821a2debaafa Rename , lt_op_map to , lt_op_padxv_map As we'll need a new pointer table soon. --- diff --git a/Types.xs b/Types.xs index faa8740..69b92e2 100644 --- a/Types.xs +++ b/Types.xs @@ -411,8 +411,6 @@ STATIC SV *lt_hint(pTHX) { #define ptable_map_store(T, K, V) ptable_map_store(aPTBLMS_ (T), (K), (V)) #define ptable_map_delete(T, K) ptable_map_delete(aPTBLMS_ (T), (K)) -STATIC ptable *lt_op_map = NULL; - #ifdef USE_ITHREADS STATIC perl_mutex lt_op_map_mutex; @@ -427,7 +425,10 @@ STATIC perl_mutex lt_op_map_mutex; #endif /* !USE_ITHREADS */ +STATIC ptable *lt_op_padxv_map = NULL; + typedef struct { + OP *(*old_pp)(pTHX); #ifdef MULTIPLICITY STRLEN buf_size, orig_pkg_len, type_pkg_len, type_meth_len; char *buf; @@ -436,11 +437,10 @@ typedef struct { SV *type_pkg; SV *type_meth; #endif /* !MULTIPLICITY */ - OP *(*old_pp)(pTHX); -} lt_op_info; +} lt_op_padxv_info; -STATIC void lt_op_info_call(pTHX_ const lt_op_info *oi, SV *sv) { -#define lt_op_info_call(O, S) lt_op_info_call(aTHX_ (O), (S)) +STATIC void lt_op_padxv_info_call(pTHX_ const lt_op_padxv_info *oi, SV *sv) { +#define lt_op_padxv_info_call(O, S) lt_op_padxv_info_call(aTHX_ (O), (S)) SV *orig_pkg, *type_pkg, *type_meth; int items; dSP; @@ -494,15 +494,15 @@ STATIC void lt_op_info_call(pTHX_ const lt_op_info *oi, SV *sv) { return; } -STATIC void lt_map_store(pTHX_ const OP *o, SV *orig_pkg, SV *type_pkg, SV *type_meth, OP *(*old_pp)(pTHX)) { -#define lt_map_store(O, OP, TP, TM, PP) lt_map_store(aTHX_ (O), (OP), (TP), (TM), (PP)) - lt_op_info *oi; +STATIC void lt_padxv_map_store(pTHX_ const OP *o, SV *orig_pkg, SV *type_pkg, SV *type_meth, OP *(*old_pp)(pTHX)) { +#define lt_padxv_map_store(O, OP, TP, TM, PP) lt_padxv_map_store(aTHX_ (O), (OP), (TP), (TM), (PP)) + lt_op_padxv_info *oi; LT_LOCK(<_op_map_mutex); - if (!(oi = ptable_fetch(lt_op_map, o))) { + if (!(oi = ptable_fetch(lt_op_padxv_map, o))) { oi = PerlMemShared_malloc(sizeof *oi); - ptable_map_store(lt_op_map, o, oi); + ptable_map_store(lt_op_padxv_map, o, oi); #ifdef MULTIPLICITY oi->buf = NULL; oi->buf_size = 0; @@ -550,12 +550,12 @@ STATIC void lt_map_store(pTHX_ const OP *o, SV *orig_pkg, SV *type_pkg, SV *type LT_UNLOCK(<_op_map_mutex); } -STATIC const lt_op_info *lt_map_fetch(const OP *o, lt_op_info *oi) { - const lt_op_info *val; +STATIC const lt_op_padxv_info *lt_padxv_map_fetch(const OP *o, lt_op_padxv_info *oi) { + const lt_op_padxv_info *val; LT_LOCK(<_op_map_mutex); - val = ptable_fetch(lt_op_map, o); + val = ptable_fetch(lt_op_padxv_map, o); if (val) { *oi = *val; val = oi; @@ -570,7 +570,7 @@ STATIC void lt_map_delete(pTHX_ const OP *o) { #define lt_map_delete(O) lt_map_delete(aTHX_ (O)) LT_LOCK(<_op_map_mutex); - ptable_map_delete(lt_op_map, o); + ptable_map_delete(lt_op_padxv_map, o); LT_UNLOCK(<_op_map_mutex); } @@ -580,11 +580,11 @@ STATIC void lt_map_delete(pTHX_ const OP *o) { /* ... Our pp_padsv ........................................................ */ STATIC OP *lt_pp_padsv(pTHX) { - lt_op_info oi; + lt_op_padxv_info oi; - if (lt_map_fetch(PL_op, &oi)) { + if (lt_padxv_map_fetch(PL_op, &oi)) { dTARGET; - lt_op_info_call(&oi, TARG); + lt_op_padxv_info_call(&oi, TARG); return oi.old_pp(aTHX); } @@ -668,7 +668,7 @@ STATIC OP *lt_ck_padany(pTHX_ OP *o) { SvREFCNT_inc_simple_void_NN(orig_meth); } - lt_map_store(o, orig_pkg, type_pkg, type_meth, o->op_ppaddr); + lt_padxv_map_store(o, orig_pkg, type_pkg, type_meth, o->op_ppaddr); } else { skip: lt_map_delete(o); @@ -692,8 +692,6 @@ STATIC peep_t lt_old_peep = 0; /* This is actually the rpeep past 5.13.5 */ STATIC void lt_peep_rec(pTHX_ OP *o, ptable *seen) { #define lt_peep_rec(O) lt_peep_rec(aTHX_ (O), seen) for (; o; o = o->op_next) { - lt_op_info *oi = NULL; - if (ptable_fetch(seen, o)) break; ptable_seen_store(seen, o, o); @@ -701,8 +699,9 @@ STATIC void lt_peep_rec(pTHX_ OP *o, ptable *seen) { switch (o->op_type) { case OP_PADSV: if (o->op_ppaddr != lt_pp_padsv && o->op_private & OPpLVAL_INTRO) { + lt_op_padxv_info *oi; LT_LOCK(<_op_map_mutex); - oi = ptable_fetch(lt_op_map, o); + oi = ptable_fetch(lt_op_padxv_map, o); if (oi) { oi->old_pp = o->op_ppaddr; o->op_ppaddr = lt_pp_padsv; @@ -846,7 +845,7 @@ BOOT: if (!lt_booted++) { HV *stash; - lt_op_map = ptable_new(); + lt_op_padxv_map = ptable_new(); #ifdef USE_ITHREADS MUTEX_INIT(<_op_map_mutex); #endif