From 58aef2b37ed9a7afbd27c2ee12895eeabf126984 Mon Sep 17 00:00:00 2001 From: Father Chrysostomos Date: Sat, 23 Jun 2012 09:43:10 -0700 Subject: [PATCH] Add CVf_SLABBED flag This will indicate that a CV has a reference count on, and ownership of, a slab used for allocating ops. --- cv.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cv.h b/cv.h index 072ff1e..e2644e1 100644 --- a/cv.h +++ b/cv.h @@ -105,6 +105,9 @@ See L. #define CVf_NODEBUG 0x0200 /* no DB::sub indirection for this CV (esp. useful for special XSUBs) */ #define CVf_CVGV_RC 0x0400 /* CvGV is reference counted */ +#ifdef PERL_CORE +# define CVf_SLABBED 0x0800 /* Holds refcount on op slab */ +#endif #define CVf_DYNFILE 0x1000 /* The filename isn't static */ #define CVf_AUTOLOAD 0x2000 /* SvPVX contains AUTOLOADed sub name */ #define CVf_HASEVAL 0x4000 /* contains string eval */ @@ -167,6 +170,12 @@ See L. #define CvCVGV_RC_on(cv) (CvFLAGS(cv) |= CVf_CVGV_RC) #define CvCVGV_RC_off(cv) (CvFLAGS(cv) &= ~CVf_CVGV_RC) +#ifdef PERL_CORE +# define CvSLABBED(cv) (CvFLAGS(cv) & CVf_SLABBED) +# define CvSLABBED_on(cv) (CvFLAGS(cv) |= CVf_SLABBED) +# define CvSLABBED_off(cv) (CvFLAGS(cv) &= ~CVf_SLABBED) +#endif + #define CvDYNFILE(cv) (CvFLAGS(cv) & CVf_DYNFILE) #define CvDYNFILE_on(cv) (CvFLAGS(cv) |= CVf_DYNFILE) #define CvDYNFILE_off(cv) (CvFLAGS(cv) &= ~CVf_DYNFILE) -- 1.8.3.1