| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
ability to create landmines that will explode under someone in the
future when they upgrade their compiler to one with better
optimisation. We've already done this at least twice.
(Yes, some of the assertions are after code that would already have
SEGVd because it already deferences a pointer, but they are put in
to make it easier to automate checking that each and every case is
covered.)
Add a tool, checkARGS_ASSERT.pl, to check that every case is covered.
p4raw-id: //depot/perl@33291
|
|
|
|
|
| |
sv_2mortal() by conditionally passing SVs_TEMP to newSVpvn_flags().
p4raw-id: //depot/perl@33178
|
|
|
|
|
| |
Naive implementation.
p4raw-id: //depot/perl@33088
|
|
|
|
|
| |
Remove the FIXME comment as I had already fixed it.
p4raw-id: //depot/perl@32971
|
|
|
|
|
|
| |
(Make C<length undef> return undef).
Patch mostly by Rafael, with some fine tuning by me.
p4raw-id: //depot/perl@32969
|
|
|
| |
p4raw-id: //depot/perl@32865
|
|
|
| |
p4raw-id: //depot/perl@32849
|
|
|
|
|
|
| |
and mortalizing them. Use these macros where possible. And also
mX?PUSH[inpu] where possible.
p4raw-id: //depot/perl@32821
|
|
|
|
|
| |
sv_2mortal(newSVpvs(...)) constructions to use it.
p4raw-id: //depot/perl@32819
|
|
|
|
|
|
| |
the flags. Move its implementation just ahead of sv_2mortal()'s for
CPU cache locality. Refactor all code that can be to use this.
p4raw-id: //depot/perl@32818
|
|
|
|
|
| |
But use newSVhek() in preference when possible.
p4raw-id: //depot/perl@32813
|
|
|
|
|
|
|
|
|
|
| |
flag bits. Right now the only flag bit is SVf_UTF8, which will call
SvUTF8_on() on the new SV for you. Provide a wrapper newSVpvn_utf8(),
which takes a boolean, and passes in SVf_UTF8 if that is true.
Refactor the core to use it where possible. It makes the source code
clearer and smaller, but seems to be swings and roundabouts on object
code size.
p4raw-id: //depot/perl@32807
|
|
|
|
|
|
|
| |
regcomp.c and regexec.c RXp_* where necessary] so that in future we
can maintain source compatibility when we add an extra level of
dereferencing.
p4raw-id: //depot/perl@32802
|
|
|
|
|
| |
having to allocate memory where sizeof(IV) > sizeof(I32)).
p4raw-id: //depot/perl@32760
|
|
|
|
|
| |
hold a reference, and convert it to a macro define prepare_SV_for_RV().
p4raw-id: //depot/perl@32737
|
|
|
|
|
| |
This frees up a scalar type for first class regular expressions.
p4raw-id: //depot/perl@32734
|
|
|
| |
p4raw-id: //depot/perl@32725
|
|
|
|
|
|
| |
Documentation needed, FIXME for proper 64 bit support of arrays longer
than 2**32, re-order the new ops at the end if merging to 5.10.x.
p4raw-id: //depot/perl@32680
|
|
|
|
|
| |
Message-ID: <20071021201351.GY29047@bort.ca>
p4raw-id: //depot/perl@32157
|
|
|
|
|
|
| |
From: "Jerry D. Hedden" <jdhedden@cpan.org>
Message-ID: <1ff86f510710181149s1c096dd9qffa8fe42046e675b@mail.gmail.com>
p4raw-id: //depot/perl@32141
|
|
|
|
|
|
| |
From: "Jerry D. Hedden" <jdhedden@cpan.org>
Message-ID: <1ff86f510710110723p6cbed55fo558777258061b556@mail.gmail.com>
p4raw-id: //depot/perl@32100
|
|
|
|
|
| |
Message-ID: <20071008023701.GI29047@bort.ca>
p4raw-id: //depot/perl@32062
|
|
|
|
|
| |
Message-ID: <20071007042214.GH29047@bort.ca>
p4raw-id: //depot/perl@32059
|
|
|
| |
p4raw-id: //depot/perl@31812
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
START block. First time through, call slosh() and assign to $zok.
Subsequently neither call slosh() nor assign to $zok. Adds a new op
ONCE to control the conditonal call and assign. No change to list
context, so state ($zok) = slosh() and (state $zok) = ... etc will
still repeatedly evaluate and assign. [Can't fix that before 5.10]
Use as an RVALUE is as Larry's design - my $boff = state $zok = ...;
will evaluate, assign and return first time, and subsequently act as if
it were written my $boff = $zok;
FIXME - state $zok = ...; won't deparse - I believe op->op_last isn't
being correctly set on the sassign, but I don't know how to fix this.
This change may be backed out before 5.10.
p4raw-id: //depot/perl@31798
|
|
|
|
|
|
| |
From: "Brandon Black" <blblack@gmail.com>
Message-ID: <84621a60708121336m13dcf9e5uac624fb246f2a79c@mail.gmail.com>
p4raw-id: //depot/perl@31770
|
|
|
|
|
| |
Message-ID: <46D617B5.3000002@iki.fi>
p4raw-id: //depot/perl@31765
|
|
|
|
|
|
| |
From: Ãvar Arnfjörð Bjarmason <avarab@gmail.com>
Message-Id: <51dd1af80708111333kfd82e12u145b5ba38e23dcce@mail.gmail.com>
p4raw-id: //depot/perl@31704
|
|
|
|
|
|
| |
From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Message-ID: <51dd1af80708090049p2cf4810ep5a437ad53f64fa78@mail.gmail.com>
p4raw-id: //depot/perl@31693
|
|
|
| |
p4raw-id: //depot/perl@31377
|
|
|
|
|
|
| |
From: "Brandon Black" <blblack@gmail.com>
Message-ID: <84621a60704291527y1b39be37l221ef66e4c828f66@mail.gmail.com>
p4raw-id: //depot/perl@31107
|
|
|
|
|
|
|
|
|
| |
SvUV instead of SvUVX, and SvPV* variants instead of SvPVX*.
Document that the non-x variants are preferable whenever the expression
has no side effects. (Compilers perform common subexression
elimination). Likewise SvREFCNT_inc simple variants are valid for all
cases apart from expressions with side effects.
p4raw-id: //depot/perl@31010
|
|
|
|
|
|
| |
From: patrick.dugnolle@bnpparibas.com (via RT) <perlbug-followup@perl.org>
Message-ID: <rt-3.6.HEAD-6655-1176989657-125.42614-75-0@perl.org>
p4raw-id: //depot/perl@30991
|
|
|
| |
p4raw-id: //depot/perl@30965
|
|
|
|
|
|
|
| |
with negative quads", or also as RedHat bug #65612.) was a bit brute
force. In reality, we don't need to have an auto-detecting pp_i_modulo
unless we're compiled with 64 bit IVs and on glibc.
p4raw-id: //depot/perl@30931
|
|
|
| |
p4raw-id: //depot/perl@30865
|
|
|
|
|
| |
Message-ID: <9b18b3110704031646p7ac8dbearf9e41397a5f884d8@mail.gmail.com>
p4raw-id: //depot/perl@30841
|
|
|
| |
p4raw-id: //depot/perl@30776
|
|
|
|
|
| |
Message-Id: <200703271207.l2RC7qOC443040@kosh.hut.fi>
p4raw-id: //depot/perl@30774
|
|
|
|
|
|
|
|
|
|
| |
and endp with a single array of struct regexp_paren_pair, which has 2
I32 members. PL_regstartp and PL_regendp are replaced with a pointer
to regexp_paren_pair. The regexp swap structure now only has one
member, so abolish it and store the pointer to the swap array directly.
Hopefully keeping the corresponding start and end adjacent in memory
will help with cache coherency.
p4raw-id: //depot/perl@30769
|
|
|
|
|
| |
Avoids storing the chars removed by 4-arg substr() in void context.
p4raw-id: //depot/perl@30763
|
|
|
|
|
|
| |
From: "Yitzchak Scott-Thoennes" <sthoenna@efn.org>
Message-ID: <1119.63.226.247.186.1171347230.squirrel@63.226.247.186>
p4raw-id: //depot/perl@30762
|
|
|
|
|
|
| |
sv = newSV(0);
sv_upgrade(sv, type);
p4raw-id: //depot/perl@30347
|
|
|
| |
p4raw-id: //depot/perl@30195
|
|
|
|
|
| |
of flags, not a boolean, so correct the documenation and callers.
p4raw-id: //depot/perl@29977
|
|
|
|
|
|
| |
into a single routine Perl_softref2xv(). As soft references are
rarely used compared with true references, move this code from pp_hot.c
p4raw-id: //depot/perl@29905
|
|
|
|
|
|
| |
Message-Id: <20070120005232.D9CC.BQW10602@nifty.com>
Date: Sat, 20 Jan 2007 00:52:42 +0900
p4raw-id: //depot/perl@29887
|
|
|
|
|
| |
Message-ID: <9b18b3110701181714r4f3bc9ebq9ba462eba8338734@mail.gmail.com>
p4raw-id: //depot/perl@29880
|
|
|
|
|
| |
Message-ID: <9b18b3110701081546n2c3f19acy29adc0d233bb848c@mail.gmail.com>
p4raw-id: //depot/perl@29730
|
|
|
| |
p4raw-id: //depot/perl@29696
|