cvs commit: ponie/perl av.c av.h cv.h embed.fnc embed.h global.sym hv.c hv.h proto.h sv.c

[email protected] (Nicholas Clark) 1 May 2005 17:13:14 -0000
Newsgroups perl.ponie.changes
Message-ID <[email protected]>
cvsuser     05/05/01 10:13:14

  Modified:    perl     av.c av.h cv.h embed.fnc embed.h global.sym hv.c
                        hv.h proto.h sv.c
  Log:
  Abolish all the AV, CV and HV macro functions, inlining the PMC calls.
  Remove these plus the missed IO macro functions from the embedding headers.
  
  Revision  Changes    Path
  1.11      +0 -37     ponie/perl/av.c
  
  Index: av.c
  ===================================================================
  RCS file: /cvs/public/ponie/perl/av.c,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- av.c	19 Apr 2005 19:04:13 -0000	1.10
  +++ av.c	1 May 2005 17:13:13 -0000	1.11
  @@ -22,43 +22,6 @@
   #include "perl.h"
   #include "parrot/extend.h"
   
  -SV*** Perl_macro_AvARRAY (pTHX_ AV *av) {
  -  XPVAV* data = (XPVAV*) /**/ SvANY(av);
  -  return (SV***)&(data->xav_array);
  -}
  -
  -U8* Perl_macro_AvFLAGS (pTHX_ AV *av) {
  -  XPVAV* data = (XPVAV*) /**/ SvANY(av);
  -  return &(data->xav_flags);
  -}
  -
  -SSize_t* Perl_macro_AvMAX (pTHX_ AV *av) {
  -  XPVAV* data = (XPVAV*) /**/ SvANY(av);
  -  return &(data->xav_max);
  -}
  -
  -SV*** Perl_macro_AvALLOC (pTHX_ AV *av) {
  -  XPVAV* data = (XPVAV*) /**/ SvANY(av);
  -  return &(data->xav_alloc);
  -}
  -
  -SV** Perl_macro_AvARYLEN (pTHX_ AV *av) {
  -  XPVAV* data = (XPVAV*) /**/ SvANY(av);
  -  return &(data->xav_arylen);
  -}
  -
  -SSize_t* Perl_macro_AvFILLp (pTHX_ AV *av) {
  -  XPVAV* data = (XPVAV*) /**/ SvANY(av);
  -  return &(data->xav_fill);
  -}
  -
  -IV* Perl_macro_AvOFF (pTHX_ AV *av) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(av),
  -				       Ponie_P_AVOFF);
  -}
  -
  -
  -
   void
   Perl_av_reify(pTHX_ AV *av)
   {
  
  
  
  1.8       +7 -7      ponie/perl/av.h
  
  Index: av.h
  ===================================================================
  RCS file: /cvs/public/ponie/perl/av.h,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- av.h	4 Apr 2005 17:46:11 -0000	1.7
  +++ av.h	1 May 2005 17:13:13 -0000	1.8
  @@ -60,13 +60,13 @@
   
   #define Nullav Null(AV*)
   
  -#define AvARRAY(av)	( * Perl_macro_AvARRAY(aTHX_  (AV*)(av)) )
  -#define AvALLOC(av)	( * Perl_macro_AvALLOC(aTHX_  (AV*)(av)) )
  -#define AvMAX(av)	( * Perl_macro_AvMAX(aTHX_    (AV*)(av)) )
  -#define AvFILLp(av)     ( * Perl_macro_AvFILLp(aTHX_  (AV*)(av)) )
  -#define AvARYLEN(av)    ( * Perl_macro_AvARYLEN(aTHX_ (AV*)(av)) )
  -#define AvFLAGS(av)	( * Perl_macro_AvFLAGS(aTHX_  (AV*)(av)) )
  -#define AvOFF(av)	( * Perl_macro_AvOFF(aTHX_  (AV*)(av)) )
  +#define AvARRAY(av)	((SV**)((XPVAV*)  SvANY(av))->xav_array)
  +#define AvALLOC(av)	((XPVAV*)  SvANY(av))->xav_alloc
  +#define AvMAX(av)	((XPVAV*)  SvANY(av))->xav_max
  +#define AvFILLp(av)	((XPVAV*)  SvANY(av))->xav_fill
  +#define AvARYLEN(av)	((XPVAV*)  SvANY(av))->xav_arylen
  +#define AvFLAGS(av)	((XPVAV*)  SvANY(av))->xav_flags
  +#define AvOFF(av)	(*(IV *)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(av),Ponie_P_AVOFF))
   
   #define AvREAL(av)	(AvFLAGS(av) & AVf_REAL)
   #define AvREAL_on(av)	(AvFLAGS(av) |= AVf_REAL)
  
  
  
  1.6       +12 -12    ponie/perl/cv.h
  
  Index: cv.h
  ===================================================================
  RCS file: /cvs/public/ponie/perl/cv.h,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- cv.h	4 Apr 2005 17:46:11 -0000	1.5
  +++ cv.h	1 May 2005 17:13:13 -0000	1.6
  @@ -52,24 +52,24 @@
   
   #define Nullcv Null(CV*)
   
  -#define CvSTASH(sv)	(* Perl_macro_CvSTASH(aTHX_ (SV*) (sv)))
  -#define CvSTART(sv)	(* Perl_macro_CvSTART(aTHX_ (SV*) (sv)))
  -#define CvROOT(sv)	(* Perl_macro_CvROOT(aTHX_ (SV*) (sv)))
  -#define CvXSUB(sv)	(* Perl_macro_CvXSUB(aTHX_ (SV*) (sv)))
  -#define CvXSUBANY(sv)	(* Perl_macro_CvXSUBANY(aTHX_ (SV*) (sv)))
  -#define CvGV(sv)	(* Perl_macro_CvGV(aTHX_ (SV*) (sv)))
  -#define CvFILE(sv)	(* Perl_macro_CvFILE(aTHX_ (SV*) (sv)))
  +#define CvSTASH(sv)	(*(HV **)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVSTASH))
  +#define CvSTART(sv)	(*(OP **)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVSTART))
  +#define CvROOT(sv)	(*(OP **)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVROOT))
  +#define CvXSUB(sv)	(*(xpvcv_xcv_xsub_t *)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVXSUB))
  +#define CvXSUBANY(sv)	(*(ANY *)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVXSUBANY))
  +#define CvGV(sv)	(*(GV **)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVGV))
  +#define CvFILE(sv)	(*(char **)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVFILE))
   #ifdef USE_ITHREADS
   #  define CvFILE_set_from_cop(sv, cop)	(CvFILE(sv) = savepv(CopFILE(cop)))
   #else
   #  define CvFILE_set_from_cop(sv, cop)	(CvFILE(sv) = CopFILE(cop))
   #endif
   #define CvFILEGV(sv)	(gv_fetchfile(CvFILE(sv)))
  -#define CvDEPTH(sv)	(* Perl_macro_CvDEPTH(aTHX_ (SV*) (sv)))
  -#define CvPADLIST(sv)	(* Perl_macro_CvPADLIST(aTHX_ (SV*) (sv)))
  -#define CvOUTSIDE(sv)	(* Perl_macro_CvOUTSIDE(aTHX_ (SV*) (sv)))
  -#define CvFLAGS(sv)	(* Perl_macro_CvFLAGS(aTHX_ (SV*) (sv)))
  -#define CvOUTSIDE_SEQ(sv) (* Perl_macro_CvOUTSIDE_SEQ(aTHX_ (SV*) (sv)))
  +#define CvDEPTH(sv)	(*(long *)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVDEPTH))
  +#define CvPADLIST(sv)	(*(PADLIST **)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVPADLIST))
  +#define CvOUTSIDE(sv)	(*(CV **)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVOUTSIDE))
  +#define CvFLAGS(sv)	(*(cv_flags_t *)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVFLAGS))
  +#define CvOUTSIDE_SEQ(sv) (*(U32 *)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVOUTSIDE_SEQ))
   
   #define CVf_CLONE	0x0001	/* anon CV uses external lexicals */
   #define CVf_CLONED	0x0002	/* a clone of one of those */
  
  
  
  1.41      +0 -32     ponie/perl/embed.fnc
  
  Index: embed.fnc
  ===================================================================
  RCS file: /cvs/public/ponie/perl/embed.fnc,v
  retrieving revision 1.40
  retrieving revision 1.41
  diff -u -r1.40 -r1.41
  --- embed.fnc	1 May 2005 16:25:31 -0000	1.40
  +++ embed.fnc	1 May 2005 17:13:13 -0000	1.41
  @@ -963,45 +963,13 @@
   Adp	|void	|sv_nounlocking	|SV *
   Adp	|int	|nothreadhook
   
  -
  -Ap	|HE***	|macro_HvARRAY	|HV *
  -Ap	|STRLEN*	|macro_HvFILL	|HV *
  -Ap	|STRLEN*	|macro_HvMAX	|HV *
  -Ap	|I32*	|macro_HvRITER	|HV *
  -Ap	|HE**	|macro_HvEITER	|HV *
  -Ap	|PMOP**	|macro_HvPMROOT	|HV *
  -Ap	|char**	|macro_HvNAME	|HV *
  -Ap	|IV*	|macro_HvTOTALKEYS	|HV *
  -Ap	|NV*	|macro_HvPLACEHOLDERS	|HV *
   Ap	|IV	|macro_HvUSEDKEYS	|HV *
  -Ap	|XPVHV*	|macro_HvDATA	|HV *
  -
  -Ap	|SV***	|macro_AvARRAY	|AV *
  -Ap      |U8*|macro_AvFLAGS  |AV *
  -Ap      |SV***|macro_AvALLOC  |AV *
  -Ap      |SV**|macro_AvARYLEN  |AV *
  -Ap      |SSize_t*|macro_AvFILLp  |AV *
  -Ap      |SSize_t*|macro_AvMAX  |AV *
  -Ap      |IV*|macro_AvOFF  |AV *
   
   Ap	|GP**	|macro_GvGP	|GV *
   Ap	|char**	|macro_GvNAME	|GV *
   Ap	|STRLEN*	|macro_GvNAMELEN	|GV *
   Ap	|HV**	|macro_GvSTASH	|GV *
   Ap	|U8*	|macro_GvFLAGS	|GV *
  -Ap	|HV**	|macro_CvSTASH	|SV *
  -Ap	|OP**	|macro_CvSTART	|SV *
  -Ap	|OP**	|macro_CvROOT	|SV *
  -Ap	|xpvcv_xcv_xsub_t*|macro_CvXSUB	|SV *
  -Ap	|ANY*	|macro_CvXSUBANY	|SV *
  -Ap	|GV**	|macro_CvGV	|SV *
  -Ap	|char**	|macro_CvFILE	|SV *
  -Ap	|long*	|macro_CvDEPTH	|SV *
  -Ap	|PADLIST**	|macro_CvPADLIST	|SV *
  -Ap	|CV**	|macro_CvOUTSIDE	|SV *
  -Ap	|cv_flags_t*	|macro_CvFLAGS	|SV *
  -Ap	|U32*	|macro_CvOUTSIDE_SEQ	|SV *
  -
   
   END_EXTERN_C
   
  
  
  
  1.31      +0 -92     ponie/perl/embed.h
  
  Index: embed.h
  ===================================================================
  RCS file: /cvs/public/ponie/perl/embed.h,v
  retrieving revision 1.30
  retrieving revision 1.31
  diff -u -r1.30 -r1.31
  --- embed.h	1 May 2005 16:25:31 -0000	1.30
  +++ embed.h	1 May 2005 17:13:13 -0000	1.31
  @@ -1243,58 +1243,12 @@
   #define sv_nolocking		Perl_sv_nolocking
   #define sv_nounlocking		Perl_sv_nounlocking
   #define nothreadhook		Perl_nothreadhook
  -#define macro_HvARRAY		Perl_macro_HvARRAY
  -#define macro_HvFILL		Perl_macro_HvFILL
  -#define macro_HvMAX		Perl_macro_HvMAX
  -#define macro_HvRITER		Perl_macro_HvRITER
  -#define macro_HvEITER		Perl_macro_HvEITER
  -#define macro_HvPMROOT		Perl_macro_HvPMROOT
  -#define macro_HvNAME		Perl_macro_HvNAME
  -#define macro_HvTOTALKEYS	Perl_macro_HvTOTALKEYS
  -#define macro_HvPLACEHOLDERS	Perl_macro_HvPLACEHOLDERS
   #define macro_HvUSEDKEYS	Perl_macro_HvUSEDKEYS
  -#define macro_HvDATA		Perl_macro_HvDATA
  -#define macro_AvARRAY		Perl_macro_AvARRAY
  -#define macro_AvFLAGS		Perl_macro_AvFLAGS
  -#define macro_AvALLOC		Perl_macro_AvALLOC
  -#define macro_AvARYLEN		Perl_macro_AvARYLEN
  -#define macro_AvFILLp		Perl_macro_AvFILLp
  -#define macro_AvMAX		Perl_macro_AvMAX
  -#define macro_AvOFF		Perl_macro_AvOFF
  -#define macro_IoIFP		Perl_macro_IoIFP
  -#define macro_IoOFP		Perl_macro_IoOFP
  -#define macro_IoDIRP		Perl_macro_IoDIRP
  -#define macro_IoANY		Perl_macro_IoANY
  -#define macro_IoLINES		Perl_macro_IoLINES
  -#define macro_IoPAGE		Perl_macro_IoPAGE
  -#define macro_IoPAGE_LEN	Perl_macro_IoPAGE_LEN
  -#define macro_IoLINES_LEFT	Perl_macro_IoLINES_LEFT
  -#define macro_IoTOP_NAME	Perl_macro_IoTOP_NAME
  -#define macro_IoTOP_GV		Perl_macro_IoTOP_GV
  -#define macro_IoFMT_NAME	Perl_macro_IoFMT_NAME
  -#define macro_IoFMT_GV		Perl_macro_IoFMT_GV
  -#define macro_IoBOTTOM_NAME	Perl_macro_IoBOTTOM_NAME
  -#define macro_IoBOTTOM_GV	Perl_macro_IoBOTTOM_GV
  -#define macro_IoSUBPROCESS	Perl_macro_IoSUBPROCESS
  -#define macro_IoTYPE		Perl_macro_IoTYPE
  -#define macro_IoFLAGS		Perl_macro_IoFLAGS
   #define macro_GvGP		Perl_macro_GvGP
   #define macro_GvNAME		Perl_macro_GvNAME
   #define macro_GvNAMELEN		Perl_macro_GvNAMELEN
   #define macro_GvSTASH		Perl_macro_GvSTASH
   #define macro_GvFLAGS		Perl_macro_GvFLAGS
  -#define macro_CvSTASH		Perl_macro_CvSTASH
  -#define macro_CvSTART		Perl_macro_CvSTART
  -#define macro_CvROOT		Perl_macro_CvROOT
  -#define macro_CvXSUB		Perl_macro_CvXSUB
  -#define macro_CvXSUBANY		Perl_macro_CvXSUBANY
  -#define macro_CvGV		Perl_macro_CvGV
  -#define macro_CvFILE		Perl_macro_CvFILE
  -#define macro_CvDEPTH		Perl_macro_CvDEPTH
  -#define macro_CvPADLIST		Perl_macro_CvPADLIST
  -#define macro_CvOUTSIDE		Perl_macro_CvOUTSIDE
  -#define macro_CvFLAGS		Perl_macro_CvFLAGS
  -#define macro_CvOUTSIDE_SEQ	Perl_macro_CvOUTSIDE_SEQ
   #if defined(PERL_IN_DOOP_C) || defined(PERL_DECL_PROT)
   #ifdef PERL_CORE
   #define do_trans_simple		S_do_trans_simple
  @@ -3780,58 +3734,12 @@
   #define sv_nolocking(a)		Perl_sv_nolocking(aTHX_ a)
   #define sv_nounlocking(a)	Perl_sv_nounlocking(aTHX_ a)
   #define nothreadhook()		Perl_nothreadhook(aTHX)
  -#define macro_HvARRAY(a)	Perl_macro_HvARRAY(aTHX_ a)
  -#define macro_HvFILL(a)		Perl_macro_HvFILL(aTHX_ a)
  -#define macro_HvMAX(a)		Perl_macro_HvMAX(aTHX_ a)
  -#define macro_HvRITER(a)	Perl_macro_HvRITER(aTHX_ a)
  -#define macro_HvEITER(a)	Perl_macro_HvEITER(aTHX_ a)
  -#define macro_HvPMROOT(a)	Perl_macro_HvPMROOT(aTHX_ a)
  -#define macro_HvNAME(a)		Perl_macro_HvNAME(aTHX_ a)
  -#define macro_HvTOTALKEYS(a)	Perl_macro_HvTOTALKEYS(aTHX_ a)
  -#define macro_HvPLACEHOLDERS(a)	Perl_macro_HvPLACEHOLDERS(aTHX_ a)
   #define macro_HvUSEDKEYS(a)	Perl_macro_HvUSEDKEYS(aTHX_ a)
  -#define macro_HvDATA(a)		Perl_macro_HvDATA(aTHX_ a)
  -#define macro_AvARRAY(a)	Perl_macro_AvARRAY(aTHX_ a)
  -#define macro_AvFLAGS(a)	Perl_macro_AvFLAGS(aTHX_ a)
  -#define macro_AvALLOC(a)	Perl_macro_AvALLOC(aTHX_ a)
  -#define macro_AvARYLEN(a)	Perl_macro_AvARYLEN(aTHX_ a)
  -#define macro_AvFILLp(a)	Perl_macro_AvFILLp(aTHX_ a)
  -#define macro_AvMAX(a)		Perl_macro_AvMAX(aTHX_ a)
  -#define macro_AvOFF(a)		Perl_macro_AvOFF(aTHX_ a)
  -#define macro_IoIFP(a)		Perl_macro_IoIFP(aTHX_ a)
  -#define macro_IoOFP(a)		Perl_macro_IoOFP(aTHX_ a)
  -#define macro_IoDIRP(a)		Perl_macro_IoDIRP(aTHX_ a)
  -#define macro_IoANY(a)		Perl_macro_IoANY(aTHX_ a)
  -#define macro_IoLINES(a)	Perl_macro_IoLINES(aTHX_ a)
  -#define macro_IoPAGE(a)		Perl_macro_IoPAGE(aTHX_ a)
  -#define macro_IoPAGE_LEN(a)	Perl_macro_IoPAGE_LEN(aTHX_ a)
  -#define macro_IoLINES_LEFT(a)	Perl_macro_IoLINES_LEFT(aTHX_ a)
  -#define macro_IoTOP_NAME(a)	Perl_macro_IoTOP_NAME(aTHX_ a)
  -#define macro_IoTOP_GV(a)	Perl_macro_IoTOP_GV(aTHX_ a)
  -#define macro_IoFMT_NAME(a)	Perl_macro_IoFMT_NAME(aTHX_ a)
  -#define macro_IoFMT_GV(a)	Perl_macro_IoFMT_GV(aTHX_ a)
  -#define macro_IoBOTTOM_NAME(a)	Perl_macro_IoBOTTOM_NAME(aTHX_ a)
  -#define macro_IoBOTTOM_GV(a)	Perl_macro_IoBOTTOM_GV(aTHX_ a)
  -#define macro_IoSUBPROCESS(a)	Perl_macro_IoSUBPROCESS(aTHX_ a)
  -#define macro_IoTYPE(a)		Perl_macro_IoTYPE(aTHX_ a)
  -#define macro_IoFLAGS(a)	Perl_macro_IoFLAGS(aTHX_ a)
   #define macro_GvGP(a)		Perl_macro_GvGP(aTHX_ a)
   #define macro_GvNAME(a)		Perl_macro_GvNAME(aTHX_ a)
   #define macro_GvNAMELEN(a)	Perl_macro_GvNAMELEN(aTHX_ a)
   #define macro_GvSTASH(a)	Perl_macro_GvSTASH(aTHX_ a)
   #define macro_GvFLAGS(a)	Perl_macro_GvFLAGS(aTHX_ a)
  -#define macro_CvSTASH(a)	Perl_macro_CvSTASH(aTHX_ a)
  -#define macro_CvSTART(a)	Perl_macro_CvSTART(aTHX_ a)
  -#define macro_CvROOT(a)		Perl_macro_CvROOT(aTHX_ a)
  -#define macro_CvXSUB(a)		Perl_macro_CvXSUB(aTHX_ a)
  -#define macro_CvXSUBANY(a)	Perl_macro_CvXSUBANY(aTHX_ a)
  -#define macro_CvGV(a)		Perl_macro_CvGV(aTHX_ a)
  -#define macro_CvFILE(a)		Perl_macro_CvFILE(aTHX_ a)
  -#define macro_CvDEPTH(a)	Perl_macro_CvDEPTH(aTHX_ a)
  -#define macro_CvPADLIST(a)	Perl_macro_CvPADLIST(aTHX_ a)
  -#define macro_CvOUTSIDE(a)	Perl_macro_CvOUTSIDE(aTHX_ a)
  -#define macro_CvFLAGS(a)	Perl_macro_CvFLAGS(aTHX_ a)
  -#define macro_CvOUTSIDE_SEQ(a)	Perl_macro_CvOUTSIDE_SEQ(aTHX_ a)
   #if defined(PERL_IN_DOOP_C) || defined(PERL_DECL_PROT)
   #ifdef PERL_CORE
   #define do_trans_simple(a)	S_do_trans_simple(aTHX_ a)
  
  
  
  1.24      +0 -46     ponie/perl/global.sym
  
  Index: global.sym
  ===================================================================
  RCS file: /cvs/public/ponie/perl/global.sym,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- global.sym	1 May 2005 16:25:31 -0000	1.23
  +++ global.sym	1 May 2005 17:13:13 -0000	1.24
  @@ -633,58 +633,12 @@
   Perl_sv_nolocking
   Perl_sv_nounlocking
   Perl_nothreadhook
  -Perl_macro_HvARRAY
  -Perl_macro_HvFILL
  -Perl_macro_HvMAX
  -Perl_macro_HvRITER
  -Perl_macro_HvEITER
  -Perl_macro_HvPMROOT
  -Perl_macro_HvNAME
  -Perl_macro_HvTOTALKEYS
  -Perl_macro_HvPLACEHOLDERS
   Perl_macro_HvUSEDKEYS
  -Perl_macro_HvDATA
  -Perl_macro_AvARRAY
  -Perl_macro_AvFLAGS
  -Perl_macro_AvALLOC
  -Perl_macro_AvARYLEN
  -Perl_macro_AvFILLp
  -Perl_macro_AvMAX
  -Perl_macro_AvOFF
  -Perl_macro_IoIFP
  -Perl_macro_IoOFP
  -Perl_macro_IoDIRP
  -Perl_macro_IoANY
  -Perl_macro_IoLINES
  -Perl_macro_IoPAGE
  -Perl_macro_IoPAGE_LEN
  -Perl_macro_IoLINES_LEFT
  -Perl_macro_IoTOP_NAME
  -Perl_macro_IoTOP_GV
  -Perl_macro_IoFMT_NAME
  -Perl_macro_IoFMT_GV
  -Perl_macro_IoBOTTOM_NAME
  -Perl_macro_IoBOTTOM_GV
  -Perl_macro_IoSUBPROCESS
  -Perl_macro_IoTYPE
  -Perl_macro_IoFLAGS
   Perl_macro_GvGP
   Perl_macro_GvNAME
   Perl_macro_GvNAMELEN
   Perl_macro_GvSTASH
   Perl_macro_GvFLAGS
  -Perl_macro_CvSTASH
  -Perl_macro_CvSTART
  -Perl_macro_CvROOT
  -Perl_macro_CvXSUB
  -Perl_macro_CvXSUBANY
  -Perl_macro_CvGV
  -Perl_macro_CvFILE
  -Perl_macro_CvDEPTH
  -Perl_macro_CvPADLIST
  -Perl_macro_CvOUTSIDE
  -Perl_macro_CvFLAGS
  -Perl_macro_CvOUTSIDE_SEQ
   Perl_Slab_Alloc
   Perl_Slab_Free
   Perl_sv_setsv_flags
  
  
  
  1.14      +0 -50     ponie/perl/hv.c
  
  Index: hv.c
  ===================================================================
  RCS file: /cvs/public/ponie/perl/hv.c,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- hv.c	4 Apr 2005 17:46:11 -0000	1.13
  +++ hv.c	1 May 2005 17:13:13 -0000	1.14
  @@ -33,56 +33,6 @@
   
   #define HV_MAX_LENGTH_BEFORE_SPLIT 14
   
  -HE*** Perl_macro_HvARRAY (pTHX_ HV *hv) {
  -  XPVHV* data = (XPVHV*) /**/ SvANY(hv);
  -  return (HE***)&data->xhv_array;
  -}
  -
  -
  -XPVHV* Perl_macro_HvDATA (pTHX_ HV *hv) {
  -  return (XPVHV*) /**/ SvANY(hv);
  -}
  -
  -STRLEN* Perl_macro_HvFILL (pTHX_ HV *hv) {
  -  XPVHV* data = (XPVHV*) /**/ SvANY(hv);
  -  return &(data->xhv_fill);
  -}
  -
  -STRLEN* Perl_macro_HvMAX (pTHX_ HV *hv) {
  -  XPVHV* data = (XPVHV*) /**/ SvANY(hv);
  -  return &(data->xhv_max);
  -}
  -
  -I32* Perl_macro_HvRITER (pTHX_ HV *hv) {
  -  XPVHV* data = (XPVHV*) /**/ SvANY(hv);
  -  return &(data->xhv_riter);
  -}
  -
  -HE** Perl_macro_HvEITER (pTHX_ HV *hv) {
  -  XPVHV* data = (XPVHV*) /**/ SvANY(hv);
  -  return &(data->xhv_eiter);
  -}
  -
  -PMOP** Perl_macro_HvPMROOT (pTHX_ HV *hv) {
  -  XPVHV* data = (XPVHV*) /**/ SvANY(hv);
  -  return &(data->xhv_pmroot);
  -}
  -
  -char** Perl_macro_HvNAME (pTHX_ HV *hv) {
  -  XPVHV* data = (XPVHV*) /**/ SvANY(hv);
  -  return &(data->xhv_name);
  -}
  -
  -IV* Perl_macro_HvTOTALKEYS (pTHX_ HV *hv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(hv),
  -				       Ponie_P_HVKEYS);
  -}
  -
  -NV* Perl_macro_HvPLACEHOLDERS (pTHX_ HV *hv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(hv),
  -				       Ponie_P_HVPLACEHOLDERS);
  -}
  -
   IV Perl_macro_HvUSEDKEYS (pTHX_ HV *hv) {
     return HvTOTALKEYS(hv) - (IV)HvPLACEHOLDERS(hv);
   }
  
  
  
  1.11      +10 -13    ponie/perl/hv.h
  
  Index: hv.h
  ===================================================================
  RCS file: /cvs/public/ponie/perl/hv.h,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- hv.h	4 Apr 2005 17:46:11 -0000	1.10
  +++ hv.h	1 May 2005 17:13:13 -0000	1.11
  @@ -173,19 +173,16 @@
   
   
   #define Nullhv Null(HV*)
  -
  -
  -
  -#define HvARRAY(hv)         (* Perl_macro_HvARRAY  (aTHX_ (HV*)(hv)) )
  -#define HvFILL(hv)          (* Perl_macro_HvFILL   (aTHX_ (HV*)(hv)) )
  -#define HvMAX(hv)           (* Perl_macro_HvMAX    (aTHX_ (HV*)(hv)) )
  -#define HvRITER(hv)         (* Perl_macro_HvRITER  (aTHX_ (HV*)(hv)) )
  -#define HvEITER(hv)         (* Perl_macro_HvEITER  (aTHX_ (HV*)(hv)) )
  -#define HvPMROOT(hv)        (* Perl_macro_HvPMROOT (aTHX_ (HV*)(hv)) )
  -#define HvNAME(hv)          (* Perl_macro_HvNAME   (aTHX_ (HV*)(hv)) )
  +#define HvARRAY(hv)	(*(HE***)&((XPVHV*)  SvANY(hv))->xhv_array)
  +#define HvFILL(hv)	((XPVHV*)  SvANY(hv))->xhv_fill
  +#define HvMAX(hv)	((XPVHV*)  SvANY(hv))->xhv_max
  +#define HvRITER(hv)	((XPVHV*)  SvANY(hv))->xhv_riter
  +#define HvEITER(hv)	((XPVHV*)  SvANY(hv))->xhv_eiter
  +#define HvPMROOT(hv)	((XPVHV*)  SvANY(hv))->xhv_pmroot
  +#define HvNAME(hv)	((XPVHV*)  SvANY(hv))->xhv_name
   
   /* Sadly we can't do this as an LVALUE */
  -#define HvDATA(hv)          (Perl_macro_HvDATA   (aTHX_ (HV*)(hv)) )
  +#define HvDATA(hv)          ((XPVHV*) SvANY(hv))
   
   /*
    * HvKEYS gets the number of keys that actually exist(), and is provided
  @@ -194,8 +191,8 @@
    */
   #define HvKEYS(hv)		HvUSEDKEYS(hv)
   #define HvUSEDKEYS(hv)		(Perl_macro_HvUSEDKEYS(aTHX_ (HV*)(hv)))
  -#define HvTOTALKEYS(hv)		(*Perl_macro_HvTOTALKEYS(aTHX_ (HV*)(hv)))
  -#define HvPLACEHOLDERS(hv)	(*Perl_macro_HvPLACEHOLDERS(aTHX_ (HV*)(hv)))
  +#define HvTOTALKEYS(hv)	(*(IV *)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(hv),Ponie_P_HVKEYS))
  +#define HvPLACEHOLDERS(hv) (*(NV *)Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(hv),Ponie_P_HVPLACEHOLDERS))
   
   #define HvSHAREKEYS(sv)		((U32)Parrot_PMC_get_intval_intkey(PL_Parrot,MUMBLE(sv), Ponie_I_HV_SHAREKEYS))
   #define HvSHAREKEYS_on(sv)	Parrot_PMC_set_intval_intkey(PL_Parrot,MUMBLE(sv), Ponie_I_HV_SHAREKEYS, 1)
  
  
  
  1.41      +0 -49     ponie/perl/proto.h
  
  Index: proto.h
  ===================================================================
  RCS file: /cvs/public/ponie/perl/proto.h,v
  retrieving revision 1.40
  retrieving revision 1.41
  diff -u -r1.40 -r1.41
  --- proto.h	1 May 2005 16:25:31 -0000	1.40
  +++ proto.h	1 May 2005 17:13:13 -0000	1.41
  @@ -923,62 +923,13 @@
   PERL_CALLCONV void	Perl_sv_nounlocking(pTHX_ SV *);
   PERL_CALLCONV int	Perl_nothreadhook(pTHX);
   
  -
  -PERL_CALLCONV HE***	Perl_macro_HvARRAY(pTHX_ HV *);
  -PERL_CALLCONV STRLEN*	Perl_macro_HvFILL(pTHX_ HV *);
  -PERL_CALLCONV STRLEN*	Perl_macro_HvMAX(pTHX_ HV *);
  -PERL_CALLCONV I32*	Perl_macro_HvRITER(pTHX_ HV *);
  -PERL_CALLCONV HE**	Perl_macro_HvEITER(pTHX_ HV *);
  -PERL_CALLCONV PMOP**	Perl_macro_HvPMROOT(pTHX_ HV *);
  -PERL_CALLCONV char**	Perl_macro_HvNAME(pTHX_ HV *);
  -PERL_CALLCONV IV*	Perl_macro_HvTOTALKEYS(pTHX_ HV *);
  -PERL_CALLCONV NV*	Perl_macro_HvPLACEHOLDERS(pTHX_ HV *);
   PERL_CALLCONV IV	Perl_macro_HvUSEDKEYS(pTHX_ HV *);
  -PERL_CALLCONV XPVHV*	Perl_macro_HvDATA(pTHX_ HV *);
   
  -PERL_CALLCONV SV***	Perl_macro_AvARRAY(pTHX_ AV *);
  -PERL_CALLCONV U8*	Perl_macro_AvFLAGS(pTHX_ AV *);
  -PERL_CALLCONV SV***	Perl_macro_AvALLOC(pTHX_ AV *);
  -PERL_CALLCONV SV**	Perl_macro_AvARYLEN(pTHX_ AV *);
  -PERL_CALLCONV SSize_t*	Perl_macro_AvFILLp(pTHX_ AV *);
  -PERL_CALLCONV SSize_t*	Perl_macro_AvMAX(pTHX_ AV *);
  -PERL_CALLCONV IV*	Perl_macro_AvOFF(pTHX_ AV *);
  -
  -PERL_CALLCONV PerlIO**	Perl_macro_IoIFP(pTHX_ SV *);
  -PERL_CALLCONV PerlIO**	Perl_macro_IoOFP(pTHX_ SV *);
  -PERL_CALLCONV DIR**	Perl_macro_IoDIRP(pTHX_ SV *);
  -PERL_CALLCONV void**	Perl_macro_IoANY(pTHX_ SV *);
  -PERL_CALLCONV IV*	Perl_macro_IoLINES(pTHX_ SV *);
  -PERL_CALLCONV IV*	Perl_macro_IoPAGE(pTHX_ SV *);
  -PERL_CALLCONV IV*	Perl_macro_IoPAGE_LEN(pTHX_ SV *);
  -PERL_CALLCONV IV*	Perl_macro_IoLINES_LEFT(pTHX_ SV *);
  -PERL_CALLCONV char**	Perl_macro_IoTOP_NAME(pTHX_ SV *);
  -PERL_CALLCONV GV **	Perl_macro_IoTOP_GV(pTHX_ SV *);
  -PERL_CALLCONV char**	Perl_macro_IoFMT_NAME(pTHX_ SV *);
  -PERL_CALLCONV GV**	Perl_macro_IoFMT_GV(pTHX_ SV *);
  -PERL_CALLCONV char**	Perl_macro_IoBOTTOM_NAME(pTHX_ SV *);
  -PERL_CALLCONV GV**	Perl_macro_IoBOTTOM_GV(pTHX_ SV *);
  -PERL_CALLCONV short*	Perl_macro_IoSUBPROCESS(pTHX_ SV *);
  -PERL_CALLCONV char*	Perl_macro_IoTYPE(pTHX_ SV *);
  -PERL_CALLCONV char*	Perl_macro_IoFLAGS(pTHX_ SV *);
   PERL_CALLCONV GP**	Perl_macro_GvGP(pTHX_ GV *);
   PERL_CALLCONV char**	Perl_macro_GvNAME(pTHX_ GV *);
   PERL_CALLCONV STRLEN*	Perl_macro_GvNAMELEN(pTHX_ GV *);
   PERL_CALLCONV HV**	Perl_macro_GvSTASH(pTHX_ GV *);
   PERL_CALLCONV U8*	Perl_macro_GvFLAGS(pTHX_ GV *);
  -PERL_CALLCONV HV**	Perl_macro_CvSTASH(pTHX_ SV *);
  -PERL_CALLCONV OP**	Perl_macro_CvSTART(pTHX_ SV *);
  -PERL_CALLCONV OP**	Perl_macro_CvROOT(pTHX_ SV *);
  -PERL_CALLCONV xpvcv_xcv_xsub_t*	Perl_macro_CvXSUB(pTHX_ SV *);
  -PERL_CALLCONV ANY*	Perl_macro_CvXSUBANY(pTHX_ SV *);
  -PERL_CALLCONV GV**	Perl_macro_CvGV(pTHX_ SV *);
  -PERL_CALLCONV char**	Perl_macro_CvFILE(pTHX_ SV *);
  -PERL_CALLCONV long*	Perl_macro_CvDEPTH(pTHX_ SV *);
  -PERL_CALLCONV PADLIST**	Perl_macro_CvPADLIST(pTHX_ SV *);
  -PERL_CALLCONV CV**	Perl_macro_CvOUTSIDE(pTHX_ SV *);
  -PERL_CALLCONV cv_flags_t*	Perl_macro_CvFLAGS(pTHX_ SV *);
  -PERL_CALLCONV U32*	Perl_macro_CvOUTSIDE_SEQ(pTHX_ SV *);
  -
   
   END_EXTERN_C
   
  
  
  
  1.77      +0 -51     ponie/perl/sv.c
  
  Index: sv.c
  ===================================================================
  RCS file: /cvs/public/ponie/perl/sv.c,v
  retrieving revision 1.76
  retrieving revision 1.77
  diff -u -r1.76 -r1.77
  --- sv.c	1 May 2005 16:25:31 -0000	1.76
  +++ sv.c	1 May 2005 17:13:13 -0000	1.77
  @@ -1062,57 +1062,6 @@
   		    "", "", "");
   }
   
  -HV** Perl_macro_CvSTASH (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVSTASH);
  -}
  -
  -OP** Perl_macro_CvSTART (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVSTART);
  -
  -}
  -
  -OP** Perl_macro_CvROOT (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVROOT);
  -
  -}
  -
  -xpvcv_xcv_xsub_t * Perl_macro_CvXSUB (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVXSUB);
  -
  -}
  -
  -ANY* Perl_macro_CvXSUBANY (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVXSUBANY);
  -}
  -
  -GV** Perl_macro_CvGV (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVGV);
  -}
  -
  -char** Perl_macro_CvFILE (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVFILE);
  -}
  -
  -long* Perl_macro_CvDEPTH (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVDEPTH);
  -}
  -
  -PADLIST** Perl_macro_CvPADLIST (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVPADLIST);
  -}
  -
  -CV** Perl_macro_CvOUTSIDE (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVOUTSIDE);
  -}
  -
  -cv_flags_t* Perl_macro_CvFLAGS (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVFLAGS);
  -}
  -
  -U32* Perl_macro_CvOUTSIDE_SEQ (pTHX_ SV *sv) {
  -  return Parrot_PMC_get_pointer_intkey(PL_Parrot,MUMBLE(sv), Ponie_P_CVOUTSIDE_SEQ);
  -}
  -
   /*
   =for apidoc sv_upgrade