summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cv.h9
-rw-r--r--ext/B/defsubs_h.PL1
-rw-r--r--ext/B/t/concise-xs.t2
-rw-r--r--ext/Devel/Peek/t/Peek.t2
-rw-r--r--pp_ctl.c21
-rw-r--r--pp_hot.c21
6 files changed, 5 insertions, 51 deletions
diff --git a/cv.h b/cv.h
index 873cecd336..dd4e3ec0d7 100644
--- a/cv.h
+++ b/cv.h
@@ -131,8 +131,7 @@ Returns the stash of the CV.
#define CVf_NODEBUG 0x0200 /* no DB::sub indirection for this CV
(esp. useful for special XSUBs) */
#define CVf_CONST 0x0400 /* inlinable sub */
-#define CVf_OLDSTYLE 0x0800
-#define CVf_ISXSUB 0x1000 /* CV is an XSUB, not pure perl. */
+#define CVf_ISXSUB 0x0800 /* CV is an XSUB, not pure perl. */
/* This symbol for optimised communication between toke.c and op.c: */
#define CVf_BUILTIN_ATTRS (CVf_METHOD|CVf_LOCKED|CVf_LVALUE|CVf_ASSERTION)
@@ -149,12 +148,6 @@ Returns the stash of the CV.
#define CvANON_on(cv) (CvFLAGS(cv) |= CVf_ANON)
#define CvANON_off(cv) (CvFLAGS(cv) &= ~CVf_ANON)
-#ifdef PERL_XSUB_OLDSTYLE
-#define CvOLDSTYLE(cv) (CvFLAGS(cv) & CVf_OLDSTYLE)
-#define CvOLDSTYLE_on(cv) (CvFLAGS(cv) |= CVf_OLDSTYLE)
-#define CvOLDSTYLE_off(cv) (CvFLAGS(cv) &= ~CVf_OLDSTYLE)
-#endif
-
#define CvUNIQUE(cv) (CvFLAGS(cv) & CVf_UNIQUE)
#define CvUNIQUE_on(cv) (CvFLAGS(cv) |= CVf_UNIQUE)
#define CvUNIQUE_off(cv) (CvFLAGS(cv) &= ~CVf_UNIQUE)
diff --git a/ext/B/defsubs_h.PL b/ext/B/defsubs_h.PL
index 1127d48b67..1a87772a53 100644
--- a/ext/B/defsubs_h.PL
+++ b/ext/B/defsubs_h.PL
@@ -22,7 +22,6 @@ foreach my $const (qw(
CVf_LVALUE
CVf_METHOD
CVf_NODEBUG
- CVf_OLDSTYLE
CVf_UNIQUE
CVf_WEAKOUTSIDE
GVf_IMPORTED_AV
diff --git a/ext/B/t/concise-xs.t b/ext/B/t/concise-xs.t
index dcd868fa0f..447c13dcc9 100644
--- a/ext/B/t/concise-xs.t
+++ b/ext/B/t/concise-xs.t
@@ -117,7 +117,7 @@ use Getopt::Std;
use Carp;
use Test::More tests => ( # per-pkg tests (function ct + require_ok)
40 + 16 # Data::Dumper, Digest::MD5
- + 511 + 234 # B::Deparse, B
+ + 511 + 233 # B::Deparse, B
+ 588 + 189 # POSIX, IO::Socket
+ 3 * ($] > 5.009)
+ 14 * ($] >= 5.009003)
diff --git a/ext/Devel/Peek/t/Peek.t b/ext/Devel/Peek/t/Peek.t
index 8897329500..0f4fbb8966 100644
--- a/ext/Devel/Peek/t/Peek.t
+++ b/ext/Devel/Peek/t/Peek.t
@@ -509,7 +509,7 @@ do_test(23,
DEPTH = 0
(?: MUTEXP = $ADDR
OWNER = $ADDR
-)? FLAGS = 0x1400
+)? FLAGS = 0xc00
OUTSIDE_SEQ = 0
PADLIST = 0x0
OUTSIDE = 0x0 \\(null\\)');
diff --git a/pp_ctl.c b/pp_ctl.c
index 80113a49a8..43cf175195 100644
--- a/pp_ctl.c
+++ b/pp_ctl.c
@@ -2371,29 +2371,13 @@ PP(pp_goto)
SAVEFREESV(cv); /* later, undo the 'avoid premature free' hack */
if (CvISXSUB(cv)) {
OP* retop = cx->blk_sub.retop;
+ SV **newsp;
+ I32 gimme;
if (reified) {
I32 index;
for (index=0; index<items; index++)
sv_2mortal(SP[-index]);
}
-#ifdef PERL_XSUB_OLDSTYLE
- if (CvOLDSTYLE(cv)) {
- I32 (*fp3)(int,int,int);
- while (SP > mark) {
- SP[1] = SP[0];
- SP--;
- }
- fp3 = (I32(*)(int,int,int))CvXSUB(cv);
- items = (*fp3)(CvXSUBANY(cv).any_i32,
- mark - PL_stack_base + 1,
- items);
- SP = PL_stack_base + items;
- }
- else
-#endif /* PERL_XSUB_OLDSTYLE */
- {
- SV **newsp;
- I32 gimme;
/* XS subs don't have a CxSUB, so pop it */
POPBLOCK(cx, PL_curpm);
@@ -2404,7 +2388,6 @@ PP(pp_goto)
/* Put these at the bottom since the vars are set but not used */
PERL_UNUSED_VAR(newsp);
PERL_UNUSED_VAR(gimme);
- }
LEAVE;
return retop;
}
diff --git a/pp_hot.c b/pp_hot.c
index 242b03c11c..e3527636e8 100644
--- a/pp_hot.c
+++ b/pp_hot.c
@@ -2857,26 +2857,6 @@ try_autoload:
RETURNOP(CvSTART(cv));
}
else {
-#ifdef PERL_XSUB_OLDSTYLE
- if (CvOLDSTYLE(cv)) {
- I32 (*fp3)(int,int,int);
- dMARK;
- register I32 items = SP - MARK;
- /* We dont worry to copy from @_. */
- while (SP > mark) {
- SP[1] = SP[0];
- SP--;
- }
- PL_stack_sp = mark + 1;
- fp3 = (I32(*)(int,int,int))CvXSUB(cv);
- items = (*fp3)(CvXSUBANY(cv).any_i32,
- MARK - PL_stack_base + 1,
- items);
- PL_stack_sp = PL_stack_base + items;
- }
- else
-#endif /* PERL_XSUB_OLDSTYLE */
- {
I32 markix = TOPMARK;
PUTBACK;
@@ -2913,7 +2893,6 @@ try_autoload:
*(PL_stack_base + markix) = *PL_stack_sp;
PL_stack_sp = PL_stack_base + markix;
}
- }
LEAVE;
return NORMAL;
}