From: Paul Johnson Date: Fri, 22 Jun 2007 02:13:20 +0000 (+0200) Subject: remove op_static X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=85594c3193fdbad2767cc92f3cce383a97bccd08;p=p5sagit%2Fp5-mst-13.2.git remove op_static Message-ID: <20070622001320.GD20560@pjcj.net> Plus version bumps p4raw-id: //depot/perl@31461 --- diff --git a/ext/B/B.pm b/ext/B/B.pm index 13ff5b3..fdf79ae 100644 --- a/ext/B/B.pm +++ b/ext/B/B.pm @@ -7,7 +7,7 @@ # package B; -our $VERSION = '1.15'; +our $VERSION = '1.16'; use XSLoader (); require Exporter; @@ -1017,8 +1017,6 @@ This returns the op description from the global C PL_op_desc array =item opt -=item static - =item flags =item private diff --git a/ext/B/B.xs b/ext/B/B.xs index 99c1409..4370c3e 100644 --- a/ext/B/B.xs +++ b/ext/B/B.xs @@ -845,7 +845,6 @@ threadsv_names() #define OP_type(o) o->op_type #if PERL_VERSION >= 9 # define OP_opt(o) o->op_opt -# define OP_static(o) o->op_static #else # define OP_seq(o) o->op_seq #endif @@ -912,10 +911,6 @@ U8 OP_opt(o) B::OP o -U8 -OP_static(o) - B::OP o - #else U16 diff --git a/ext/B/B/Concise.pm b/ext/B/B/Concise.pm index 77d6c8a..911acf9 100644 --- a/ext/B/B/Concise.pm +++ b/ext/B/B/Concise.pm @@ -14,7 +14,7 @@ use warnings; # uses #3 and #4, since warnings uses Carp use Exporter (); # use #5 -our $VERSION = "0.71"; +our $VERSION = "0.72"; our @ISA = qw(Exporter); our @EXPORT_OK = qw( set_style set_style_standard add_callback concise_subref concise_cv concise_main @@ -817,7 +817,6 @@ sub concise_op { $h{seq} = "" if $h{seq} eq "-"; if ($] > 5.009) { $h{opt} = $op->opt; - $h{static} = $op->static; $h{label} = $labels{$$op}; } else { $h{seqnum} = $op->seq; @@ -1502,13 +1501,6 @@ Whether or not the op has been optimised by the peephole optimiser. Only available in 5.9 and later. -=item B<#static> - -Whether or not the op is statically defined. This flag is used by the -B::C compiler backend and indicates that the op should not be freed. - -Only available in 5.9 and later. - =item B<#sibaddr> The address of the OP's next youngest sibling, in hexadecimal. diff --git a/ext/B/B/Debug.pm b/ext/B/B/Debug.pm index 0e1d224..53b6e3a 100644 --- a/ext/B/B/Debug.pm +++ b/ext/B/B/Debug.pm @@ -1,6 +1,6 @@ package B::Debug; -our $VERSION = '1.04'; +our $VERSION = '1.05'; use strict; use B qw(peekop class walkoptree walkoptree_exec @@ -19,9 +19,8 @@ sub B::OP::debug { op_type %d EOT if ($] > 5.009) { - printf <<'EOT', $op->opt, $op->static; + printf <<'EOT', $op->opt; op_opt %d - op_static %d EOT } else { printf <<'EOT', $op->seq; diff --git a/op.c b/op.c index 731dce4..613cc2e 100644 --- a/op.c +++ b/op.c @@ -423,7 +423,7 @@ Perl_op_free(pTHX_ OP *o) dVAR; OPCODE type; - if (!o || o->op_static) + if (!o) return; if (o->op_latefreed) { if (o->op_latefree) diff --git a/op.h b/op.h index c340f04..f9147cd 100644 --- a/op.h +++ b/op.h @@ -19,20 +19,17 @@ * op_type The type of the operation. * op_opt Whether or not the op has been optimised by the * peephole optimiser. - * op_static Whether or not the op is statically defined. - * This flag is used by the B::C compiler backend - * and indicates that the op should not be freed. * * See the comments in S_clear_yystack() for more * details on the following three flags: - + * * op_latefree tell op_free() to clear this op (and free any kids) * but not yet deallocate the struct. This means that * the op may be safely op_free()d multiple times * op_latefreed an op_latefree op has been op_free()d * op_attached this op (sub)tree has been attached to a CV * - * op_spare two spare bits! + * op_spare three spare bits! * op_flags Flags common to all operations. See OPf_* below. * op_private Flags peculiar to a particular operation (BUT, * by default, set to the number of children until @@ -63,11 +60,10 @@ PADOFFSET op_targ; \ unsigned op_type:9; \ unsigned op_opt:1; \ - unsigned op_static:1; \ unsigned op_latefree:1; \ unsigned op_latefreed:1; \ unsigned op_attached:1; \ - unsigned op_spare:2; \ + unsigned op_spare:3; \ U8 op_flags; \ U8 op_private; #endif