summaryrefslogtreecommitdiff
path: root/sv.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2006-12-28 21:21:22 +0000
committerNicholas Clark <nick@ccl4.org>2006-12-28 21:21:22 +0000
commit3441fb63c8a89050ee7151eb55228fe165595be1 (patch)
tree63644fc6c0ff184296ab16c31e79fc4eed1d9718 /sv.h
parent809abb02185a4df0f7a1a043727bae7a5c08a798 (diff)
downloadperl-3441fb63c8a89050ee7151eb55228fe165595be1.tar.gz
Move the low/high cop sequences from NVX/IVX to a two U32 structure
in the xnv union. This frees up IVX for the PL_generation code, which in turn will allow SvCUR to return to its real purpose. p4raw-id: //depot/perl@29630
Diffstat (limited to 'sv.h')
-rw-r--r--sv.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/sv.h b/sv.h
index e0b3be5418..7614a6a1c9 100644
--- a/sv.h
+++ b/sv.h
@@ -389,6 +389,10 @@ struct xpv {
union {
NV xnv_nv; /* numeric value, if any */
HV * xgv_stash;
+ struct {
+ U32 xlow;
+ U32 xhigh;
+ } xpad_cop_seq; /* used by pad.c for cop_sequence */
} xnv_u;
STRLEN xpv_cur; /* length of svu_pv as a C string */
STRLEN xpv_len; /* allocated size */
@@ -407,6 +411,10 @@ struct xpviv {
union {
NV xnv_nv; /* numeric value, if any */
HV * xgv_stash;
+ struct {
+ U32 xlow;
+ U32 xhigh;
+ } xpad_cop_seq; /* used by pad.c for cop_sequence */
} xnv_u;
STRLEN xpv_cur; /* length of svu_pv as a C string */
STRLEN xpv_len; /* allocated size */
@@ -441,6 +449,10 @@ struct xpvuv {
union {
NV xnv_nv; /* numeric value, if any */
HV * xgv_stash;
+ struct {
+ U32 xlow;
+ U32 xhigh;
+ } xpad_cop_seq; /* used by pad.c for cop_sequence */
} xnv_u;
STRLEN xpv_cur; /* length of svu_pv as a C string */
STRLEN xpv_len; /* allocated size */
@@ -458,6 +470,10 @@ struct xpvnv {
union {
NV xnv_nv; /* numeric value, if any */
HV * xgv_stash;
+ struct {
+ U32 xlow;
+ U32 xhigh;
+ } xpad_cop_seq; /* used by pad.c for cop_sequence */
} xnv_u;
STRLEN xpv_cur; /* length of svu_pv as a C string */
STRLEN xpv_len; /* allocated size */
@@ -475,6 +491,10 @@ struct xpvmg {
union {
NV xnv_nv; /* numeric value, if any */
HV * xgv_stash;
+ struct {
+ U32 xlow;
+ U32 xhigh;
+ } xpad_cop_seq; /* used by pad.c for cop_sequence */
} xnv_u;
STRLEN xpv_cur; /* length of svu_pv as a C string */
STRLEN xpv_len; /* allocated size */
@@ -496,6 +516,10 @@ struct xpvlv {
union {
NV xnv_nv; /* numeric value, if any */
HV * xgv_stash;
+ struct {
+ U32 xlow;
+ U32 xhigh;
+ } xpad_cop_seq; /* used by pad.c for cop_sequence */
} xnv_u;
STRLEN xpv_cur; /* length of svu_pv as a C string */
STRLEN xpv_len; /* allocated size */
@@ -525,6 +549,10 @@ struct xpvgv {
union {
NV xnv_nv;
HV * xgv_stash; /* The stash of this GV */
+ struct {
+ U32 xlow;
+ U32 xhigh;
+ } xpad_cop_seq; /* used by pad.c for cop_sequence */
} xnv_u;
STRLEN xpv_cur; /* xgv_flags */
STRLEN xpv_len; /* 0 */
@@ -551,6 +579,10 @@ struct xpvfm {
union {
NV xnv_nv; /* numeric value, if any */
HV * xgv_stash;
+ struct {
+ U32 xlow;
+ U32 xhigh;
+ } xpad_cop_seq; /* used by pad.c for cop_sequence */
} xnv_u;
STRLEN xpv_cur; /* length of svu_pv as a C string */
STRLEN xpv_len; /* allocated size */
@@ -627,6 +659,10 @@ struct xpvio {
union {
NV xnv_nv; /* numeric value, if any */
HV * xgv_stash;
+ struct {
+ U32 xlow;
+ U32 xhigh;
+ } xpad_cop_seq; /* used by pad.c for cop_sequence */
} xnv_u;
STRLEN xpv_cur; /* length of svu_pv as a C string */
STRLEN xpv_len; /* allocated size */