summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>1999-11-13 02:17:53 +0000
committerGurusamy Sarathy <gsar@cpan.org>1999-11-13 02:17:53 +0000
commit971a9dd36d83520d7040365d2791ad56b6d39411 (patch)
tree2bb4f700b96a8e36132040891ef26db29f3d45a9 /ext
parent11faa288e292c27cb2ddc4ccdc483b523d26ce19 (diff)
downloadperl-971a9dd36d83520d7040365d2791ad56b6d39411.tar.gz
cloned interpreters now actually run and pass all but 55/10386
subtests; various subtle bugs, new and old, observed when running cloned interpreters have been fixed still to do: | * dup psig_ptr table | * merge PADOP GVs support with "our" SVs (existing PADOPs are too | simple-minded and grab one pad entry each, heavily bloating | the pad by not avoiding dups) | * overloaded constants are not really immutable--they need to | be PADOPs | * allocator for constants and OPs need to be spelled differently | (shared vs interpreter-local allocations) | * optree refcounting is still missing locking (macros are in place) | * curstackinfo, {mark,scope,save,ret}stack need to be cloned so | perl_clone() can be called from within runops*() p4raw-id: //depot/perl@4553
Diffstat (limited to 'ext')
-rw-r--r--ext/Devel/DProf/DProf.xs5
1 files changed, 3 insertions, 2 deletions
diff --git a/ext/Devel/DProf/DProf.xs b/ext/Devel/DProf/DProf.xs
index c751127f08..381919fafe 100644
--- a/ext/Devel/DProf/DProf.xs
+++ b/ext/Devel/DProf/DProf.xs
@@ -106,7 +106,6 @@ dprof_times(struct tms *t)
XS(XS_Devel__DProf_END); /* used by prof_mark() */
-static SV * Sub; /* pointer to $DB::sub */
static PerlIO *fp; /* pointer to tmon.out file */
/* Added -JH */
@@ -255,6 +254,7 @@ prof_mark( opcode ptype )
STRLEN len;
SV *sv;
U32 id;
+ SV *Sub = GvSV(DBsub); /* name of current sub */
if( SAVE_STACK ){
if( profstack_ix + 5 > profstack_max ){
@@ -552,6 +552,7 @@ XS(XS_DB_sub)
dXSARGS;
dORIGMARK;
HV *oldstash = curstash;
+ SV *Sub = GvSV(DBsub); /* name of current sub */
SP -= items;
@@ -605,6 +606,7 @@ XS(XS_DB_goto)
dORIGMARK;
HV *oldstash = curstash;
+ SV *Sub = GvSV(DBsub); /* name of current sub */
/* SP -= items; added by xsubpp */
DBG_SUB_NOTIFY( "XS DBsub(%s)\n", SvPV(Sub, na) );
@@ -662,7 +664,6 @@ BOOT:
dowarn = warn_tmp;
}
- Sub = GvSV(DBsub); /* name of current sub */
sv_setiv( DBsingle, 0 ); /* disable DB single-stepping */
{