Change 25392 by [EMAIL PROTECTED] on 2005/09/12 20:12:10
Integrate:
[ 24260]
Subject: [PATCH] Refactoring to Sv*_set() macros - patch #6
From: Steve Peters <[EMAIL PROTECTED]>
Message-ID: <[EMAIL PROTECTED]>
Date: Wed, 20 Apr 2005 06:27:20 -0500
Affected files ...
... //depot/maint-5.8/perl/bytecode.pl#13 integrate
... //depot/maint-5.8/perl/ext/ByteLoader/bytecode.h#6 integrate
... //depot/maint-5.8/perl/malloc.c#12 integrate
Differences ...
==== //depot/maint-5.8/perl/bytecode.pl#13 (text) ====
Index: perl/bytecode.pl
--- perl/bytecode.pl#12~23585~ Wed Dec 1 05:52:46 2004
+++ perl/bytecode.pl Mon Sep 12 13:12:10 2005
@@ -368,12 +368,12 @@
sv_refcnt SvREFCNT(bstate->bs_sv) U32
sv_refcnt_add SvREFCNT(bstate->bs_sv) I32 x
sv_flags SvFLAGS(bstate->bs_sv) U32
-xrv SvRV(bstate->bs_sv) svindex
+xrv bstate->bs_sv svindex x
xpv bstate->bs_sv none x
-xpv_cur SvCUR(bstate->bs_sv) STRLEN
-xpv_len SvLEN(bstate->bs_sv) STRLEN
-xiv SvIVX(bstate->bs_sv) IV
-xnv SvNVX(bstate->bs_sv) NV
+xpv_cur bstate->bs_sv STRLEN
x
+xpv_len bstate->bs_sv STRLEN
x
+xiv bstate->bs_sv IV x
+xnv bstate->bs_sv NV x
xlv_targoff LvTARGOFF(bstate->bs_sv) STRLEN
xlv_targlen LvTARGLEN(bstate->bs_sv) STRLEN
xlv_targ LvTARG(bstate->bs_sv) svindex
@@ -422,7 +422,7 @@
mg_flags SvMAGIC(bstate->bs_sv)->mg_flags U8
mg_name SvMAGIC(bstate->bs_sv) pvcontents
x
mg_namex SvMAGIC(bstate->bs_sv) svindex x
-xmg_stash *(SV**)&SvSTASH(bstate->bs_sv) svindex
+xmg_stash bstate->bs_sv svindex X
gv_fetchpv bstate->bs_sv strconst x
gv_fetchpvx bstate->bs_sv strconst x
gv_stashpv bstate->bs_sv strconst x
==== //depot/maint-5.8/perl/ext/ByteLoader/bytecode.h#6 (text) ====
Index: perl/ext/ByteLoader/bytecode.h
--- perl/ext/ByteLoader/bytecode.h#5~21053~ Fri Sep 5 13:45:41 2003
+++ perl/ext/ByteLoader/bytecode.h Mon Sep 12 13:12:10 2005
@@ -126,12 +126,19 @@
#define BSET_mg_namex(mg, arg) \
(mg->mg_ptr = (char*)SvREFCNT_inc((SV*)arg), \
mg->mg_len = HEf_SVKEY)
+#define BSET_xmg_stash(sv, arg) SvSTASH_set(sv, arg)
#define BSET_sv_upgrade(sv, arg) (void)SvUPGRADE(sv, arg)
+#define BSET_xrv(sv, arg) SvRV_set(sv, arg)
#define BSET_xpv(sv) do { \
SvPV_set(sv, bstate->bs_pv.xpv_pv); \
SvCUR_set(sv, bstate->bs_pv.xpv_cur); \
SvLEN_set(sv, bstate->bs_pv.xpv_len); \
} while (0)
+#define BSET_xpv_cur(sv, arg) SvCUR_set(sv, arg)
+#define BSET_xpv_len(sv, arg) SvLEN_set(sv, arg)
+#define BSET_xiv(sv, arg) SvIV_set(sv, arg)
+#define BSET_xnv(sv, arg) SvNV_set(sv, arg)
+
#define BSET_av_extend(sv, arg) av_extend((AV*)sv, arg)
#define BSET_av_push(sv, arg) av_push((AV*)sv, arg)
==== //depot/maint-5.8/perl/malloc.c#12 (text) ====
Index: perl/malloc.c
--- perl/malloc.c#11~25390~ Mon Sep 12 09:18:42 2005
+++ perl/malloc.c Mon Sep 12 13:12:10 2005
@@ -1176,7 +1176,8 @@
SvPOK_off(sv);
SvPV_set(sv, Nullch);
- SvCUR(sv) = SvLEN(sv) = 0;
+ SvCUR_set(sv, 0);
+ SvLEN_set(sv, 0);
*size = malloced_size(pv) + M_OVERHEAD;
return pv - sizeof(union overhead);
}
End of Patch.