We no longer need PL_shared_hek_table
Nicholas Clark [Mon, 13 Jun 2005 08:25:53 +0000 (08:25 +0000)]
p4raw-id: //depot/perl@24816

embedvar.h
ext/threads/threads.xs
intrpvar.h
perl.c
perlapi.h
sv.c

index ea68e16..d0c3a46 100644 (file)
 #define PL_savebegin           (vTHX->Isavebegin)
 #define PL_sawampersand                (vTHX->Isawampersand)
 #define PL_sh_path_compat      (vTHX->Ish_path_compat)
-#define PL_shared_hek_table    (vTHX->Ishared_hek_table)
 #define PL_sharehook           (vTHX->Isharehook)
 #define PL_sig_pending         (vTHX->Isig_pending)
 #define PL_sighandlerp         (vTHX->Isighandlerp)
 #define PL_Isavebegin          PL_savebegin
 #define PL_Isawampersand       PL_sawampersand
 #define PL_Ish_path_compat     PL_sh_path_compat
-#define PL_Ishared_hek_table   PL_shared_hek_table
 #define PL_Isharehook          PL_sharehook
 #define PL_Isig_pending                PL_sig_pending
 #define PL_Isighandlerp                PL_sighandlerp
index f6b57d6..03cb590 100755 (executable)
@@ -615,7 +615,6 @@ Perl_ithread_join(pTHX_ SV *obj)
          clone_params.stashes = newAV();
          clone_params.flags |= CLONEf_JOIN_IN;
          PL_ptr_table = ptr_table_new();
-         PL_shared_hek_table = ptr_table_new();
          current_thread = Perl_ithread_get(aTHX);
          Perl_ithread_set(aTHX_ thread);
          /* ensure 'meaningful' addresses retain their meaning */
@@ -647,8 +646,6 @@ Perl_ithread_join(pTHX_ SV *obj)
          SvREFCNT_inc(retparam);
          ptr_table_free(PL_ptr_table);
          PL_ptr_table = NULL;
-         ptr_table_free(PL_shared_hek_table);
-         PL_shared_hek_table = NULL;
 
        }
        /* We are finished with it */
index 85a8a21..342d391 100644 (file)
@@ -425,7 +425,6 @@ PERLVAR(IProc,              struct IPerlProc*)
 
 #if defined(USE_ITHREADS)
 PERLVAR(Iptr_table,    PTR_TBL_t*)
-PERLVAR(Ishared_hek_table, PTR_TBL_t*)
 #endif
 PERLVARI(Ibeginav_save, AV*, Nullav)   /* save BEGIN{}s when compiling */
 
diff --git a/perl.c b/perl.c
index c209b4b..0992786 100644 (file)
--- a/perl.c
+++ b/perl.c
@@ -834,8 +834,6 @@ perl_destruct(pTHXx)
     /* free the pointer tables used for cloning */
     ptr_table_free(PL_ptr_table);
     PL_ptr_table = (PTR_TBL_t*)NULL;
-    ptr_table_free(PL_shared_hek_table);
-    PL_shared_hek_table = (PTR_TBL_t*)NULL;
 #endif
 
     /* free special SVs */
index 73621c8..e6fe38f 100644 (file)
--- a/perlapi.h
+++ b/perlapi.h
@@ -550,8 +550,6 @@ END_EXTERN_C
 #define PL_sawampersand                (*Perl_Isawampersand_ptr(aTHX))
 #undef  PL_sh_path_compat
 #define PL_sh_path_compat      (*Perl_Ish_path_compat_ptr(aTHX))
-#undef  PL_shared_hek_table
-#define PL_shared_hek_table    (*Perl_Ishared_hek_table_ptr(aTHX))
 #undef  PL_sharehook
 #define PL_sharehook           (*Perl_Isharehook_ptr(aTHX))
 #undef  PL_sig_pending
diff --git a/sv.c b/sv.c
index 9f2049e..d101c1d 100644 (file)
--- a/sv.c
+++ b/sv.c
@@ -11776,8 +11776,6 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
 
     /* create SV map for pointer relocation */
     PL_ptr_table = ptr_table_new();
-    /* and one for finding shared hash keys quickly */
-    PL_shared_hek_table = ptr_table_new();
 
     /* initialize these special pointers as early as possible */
     SvANY(&PL_sv_undef)                = NULL;
@@ -12407,8 +12405,6 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
     if (!(flags & CLONEf_KEEP_PTR_TABLE)) {
         ptr_table_free(PL_ptr_table);
         PL_ptr_table = NULL;
-        ptr_table_free(PL_shared_hek_table);
-        PL_shared_hek_table = NULL;
     }
 
     /* Call the ->CLONE method, if it exists, for each of the stashes