summaryrefslogtreecommitdiff
path: root/pp_hot.c
Commit message (Collapse)AuthorAgeFilesLines
* Add Perl_ck_warner(), which combines Perl_ckwarn() and Perl_warner().Nicholas Clark2009-10-121-5/+5
| | | | | | | Replace ckWARN{,2,3,4}() && Perl_warner() with it, which trades reduced code size (about 0.2%), for 1 more function call if warnings are not enabled. However, if we're now in the L1 or L2 cache when we weren't previously, that's still going to be a speed win.
* Remove an unnecessary NULL check, which is already checked other placesgfx2009-09-051-2/+4
| | | | Signed-off-by: Yves Orton <demerphq@gemini.(none)>
* In pp_entersub, replace gv_fetchpv() with gv_fetchpvs().Nicholas Clark2009-08-221-1/+1
|
* Use the new SAVEHDELETE() macro wherever possibleVincent Pit2009-07-251-10/+5
|
* Don't call SvPV_const() on the method name at the top of method_common(), as ↵Vincent Pit2009-03-291-5/+7
| | | | it's not needed when the method is in the current stash (which happens quite often)
* Also define 'localizing' in pp_helem for the sake of clarityVincent Pit2008-12-281-2/+3
|
* On scope end, delete localized array elements that should not exist anymore, ↵Vincent Pit2008-12-281-2/+21
| | | | so that the array recovers its previous length. Honour EXISTS and DELETE for tied arrays.
* Introduce SvCANEXISTDELETE in pp.h, which simplify the logic in pp_helem and ↵Vincent Pit2008-12-281-14/+9
| | | | pp_hslice
* [perl #38809] return do { } : take 3 (or 4...)Vincent Pit2008-11-251-10/+8
| | | | | Message-ID: <48E0F5E9.4050805@profvince.com> p4raw-id: //depot/perl@34907
* [perl #48489] patch to fix perl bug #7013bharanee rathna2008-11-141-1/+8
| | | | | | | | | From: "bharanee rathna" (via RT) <perlbug-followup@perl.org> Message-ID: <rt-3.6.HEAD-28750-1197415521-1978.48489-75-0@perl.org> Just the pp_hot.c portion of this patch applied along with removing the TODO from the test added in the previous change. p4raw-id: //depot/perl@34833
* [perl #948] [PATCH] Allow tied $,Chip Salzenberg2008-11-141-2/+4
| | | | | Message-ID: <20081114084436.GJ5779@tytlal.topaz.cx> p4raw-id: //depot/perl@34831
* Re: [perl #60360] [PATCH] UPDATED: local $SIG{FOO} = sub {...}; sets signal ↵Chip Salzenberg2008-11-131-1/+2
| | | | | | | | | | | | handler to SIG_DFL Message-ID: <20081112234504.GI2062@tytlal.topaz.cx> Updated patch to retain source compatibility. Plus using the correct PERL_ARGS_ASSERT_SAVE_HELEM_FLAGS macro and running make regen. p4raw-id: //depot/perl@34829
* Re: [perl #60360] [PATCH] local $SIG{FOO} = sub {...}; sets signalChip Salzenberg2008-11-121-1/+1
| | | | | Message-ID: <20081111000040.GB19329@tytlal.topaz.cx> p4raw-id: //depot/perl@34819
* Assigning to DEFSV leaks if PL_defgv's gp_sv isn't set.Marcus Holland-Moritz2008-11-081-1/+1
| | | | | | | | | As Nicholas already noted in a FIXME, assigning to DEFSV should use GvSV instead of GvSVn. This change ensures that, at least under -DPERL_CORE, DEFSV cannot be assigned to and introduces a DEFSV_set macro to allow setting DEFSV. This fixes #53038: map leaks memory. p4raw-id: //depot/perl@34776
* PATCH: Large omnibus patch to clean up the JRRT quotesTom Christiansen2008-11-021-2/+4
| | | | | | Message-ID: <25940.1225611819@chthon> Date: Sun, 02 Nov 2008 01:43:39 -0600 p4raw-id: //depot/perl@34698
* Explicitly specify some printf formats for constant strings.Rafael Garcia-Suarez2008-11-021-5/+5
| | | | | | This is mostly to silence gcc's warning, "format not a string literal and no format arguments". p4raw-id: //depot/perl@34694
* Add MUTABLE_GV(), and eliminate (V *) casts in *.c.Nicholas Clark2008-10-311-10/+11
| | | | | | Can't easily do gv.h, as GvGP() (at least) needs to split into two macros - one const for reading, one non-const for writing. p4raw-id: //depot/perl@34679
* Eliminate (SV *) casts from the rest of *.c, picking up one (further)Nicholas Clark2008-10-301-28/+28
| | | | | erroneous const in dump.c. p4raw-id: //depot/perl@34675
* Use pvs macros instead of pvn where possible.Marcus Holland-Moritz2008-10-291-2/+2
| | | p4raw-id: //depot/perl@34653
* Eliminate (AV *) casts in *.c.Nicholas Clark2008-10-291-7/+7
| | | p4raw-id: //depot/perl@34650
* Add MUTABLE_CV(), and eliminate (CV *) casts in *.c.Nicholas Clark2008-10-291-2/+2
| | | p4raw-id: //depot/perl@34647
* Every remaining (HV *) cast in *.cNicholas Clark2008-10-281-4/+4
| | | p4raw-id: //depot/perl@34629
* Update copyright years.Nicholas Clark2008-10-251-2/+2
| | | p4raw-id: //depot/perl@34585
* Fix memory leak in qr// operator. This was most probablyMarcus Holland-Moritz2008-10-181-0/+1
| | | | | introduced with #30849. p4raw-id: //depot/perl@34506
* Some more missing isGV_with_GP()sBen Morrow2008-06-281-5/+9
| | | | | Message-ID: <20080628160017.GA81579@osiris.mauzo.dyndns.org> p4raw-id: //depot/perl@34092
* Re: [perl #51636] segmentation fault with array tiesVincent Pit2008-05-021-3/+19
| | | | | | From: "Vincent Pit" <perl@profvince.com> Message-ID: <56287.147.210.17.175.1205339860.squirrel@147.210.17.175> p4raw-id: //depot/perl@33778
* /* This code tries to figure out just what went wrong withNicholas Clark2008-04-171-73/+3
| | | | | | | | | | | gv_fetchmethod. It therefore needs to duplicate a lot of the internals of that function. "Duplicate". <snigger>. You said a naughty word. Now sanitised. [All tests pass, but I'm not 100% confident that this code is equivalent in all reachable corner cases, and it may be possible to simplify the error reporting logic now in gv_fetchmethod_flags] p4raw-id: //depot/perl@33702
* Silence warning from VC++ following #33447Steve Hay2008-03-101-0/+1
| | | | | (not all control paths return a value) p4raw-id: //depot/perl@33463
* Refactoring the /Can't return (?:array|hash) to scalar context/ croakNicholas Clark2008-03-061-10/+7
| | | | | logic in pp_rv2av into one place saves 112 bytes here. p4raw-id: //depot/perl@33447
* Chainsaw DEBUG_S out, as suggested by Vincent Pit.Rafael Garcia-Suarez2008-02-261-4/+0
| | | p4raw-id: //depot/perl@33376
* Re: [PATCH] Splitting OP_CONST (Was: pp_const, not, that, hot?)Vincent Pit2008-02-231-8/+1
| | | | | | Message-ID: <47B60D72.50708@profvince.com> Date: Fri, 15 Feb 2008 23:08:50 +0100 p4raw-id: //depot/perl@33356
* Revert change #33302. This change was wrong, since it wasRafael Garcia-Suarez2008-02-141-8/+2
| | | | | | using OP_ENTERSUB as a LISTOP, whereas it's a UNOP. p4raw-link: @33302 on //depot/perl: 781e3f050073176aa21ffc243184a1cb57f4ec92 p4raw-id: //depot/perl@33307
* [perl #47047] Use of inherited AUTOLOAD for non-method is deprecated Rick Delaney2008-02-131-2/+8
| | | | | | From: Rick Delaney (via RT) <perlbug-followup@perl.org> Message-ID: <rt-3.6.HEAD-24634-1193800780-55.47047-75-0@perl.org> p4raw-id: //depot/perl@33302
* assert() that every NN argument is not NULL. Otherwise we have theNicholas Clark2008-02-121-0/+9
| | | | | | | | | | | | 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
* Eliminate the OP_SETSTATE, which had been disabled by change 4309.Nicholas Clark2008-01-261-7/+0
| | | p4raw-id: //depot/perl@33072
* Re: struct context now 12.5% smaller than 5.10Benjamin Smith2008-01-261-41/+38
| | | | | | Message-ID: <20080124215537.GB10198@vtrl.co.uk> Date: Thu, 24 Jan 2008 21:55:37 +0000 p4raw-id: //depot/perl@33070
* Using PL_sv_no in place of any !SvOK() maximum removes a little bit ofNicholas Clark2008-01-251-3/+3
| | | | | hot code in pp_iter. p4raw-id: //depot/perl@33068
* In struct block_loop, merge itermax and iterlval into a unionNicholas Clark2008-01-241-7/+6
| | | | | | | | | lval_max_u, as CXt_LOOP_LAZYIV doesn't use iterlval and the other LOOP types don't use itermax. This reduces struct block_loop by 1 IV. As it's the largest component of the unions making up struct context, this reduces struct context. On ILP32 it will now be 56 bytes, down from the 64 of 5.10.x, as I've already removed the element 'label'. p4raw-id: //depot/perl@33063
* Merge CXt_LOOP_STACK's use of itermax for the reverse minimum withNicholas Clark2008-01-241-2/+3
| | | | | iterary, as the two structure members are not used simultaneously. p4raw-id: //depot/perl@33062
* Change the context type of for ($a .. $b) to CXt_LOOP_LAZYIV, andNicholas Clark2008-01-241-1/+2
| | | | | | assert that it isn't using cx->blk_loop.iterlval. Fix a casting bug when assigning a sentinal to cx->blk_loop.iterary. p4raw-id: //depot/perl@33061
* Avoid using cx->blk_loop.itermax when reverse iterating an array.Nicholas Clark2008-01-241-1/+2
| | | p4raw-id: //depot/perl@33060
* Split out foreach iterations of temporary lists on the stack toNicholas Clark2008-01-241-1/+1
| | | | | CXt_LOOP_STACK. Don't use cx->blk_loop.iterary to store PL_curstack. p4raw-id: //depot/perl@33059
* Split CXt_LOOP into CXt_LOOP_PLAIN and CXt_LOOP_FOR, eliminating theNicholas Clark2008-01-241-1/+1
| | | | | CXp_FOREACH flag added as part of given/when. p4raw-id: //depot/perl@33057
* Eliminate the U8 sbu_once from struct subst, and shrink sbu_rflags fromNicholas Clark2008-01-211-2/+2
| | | | | I32 to U8, which reduces the size of the struct by at least 4 bytes. p4raw-id: //depot/perl@33035
* In pp_subst, rxtainted is not a boolean, as it stores 2 bits of values.Nicholas Clark2008-01-211-1/+1
| | | p4raw-id: //depot/perl@33033
* In struct block_sub and block_format, access the members hasargs andNicholas Clark2008-01-201-2/+2
| | | | | | lval via macros CxHASARGS() and CxLVAL(), which will allow the storage location to be changed. p4raw-id: //depot/perl@33017
* Fix range operatorJerry D. Hedden2008-01-151-0/+9
| | | | | | From: "Jerry D. Hedden" <jdhedden@cpan.org> Message-ID: <1ff86f510801141656i325ac69ev8a0af47f9fe72a1e@mail.gmail.com> p4raw-id: //depot/perl@32979
* Rename PERL_MAX_SUB_DEPTH to PERL_SUB_DEPTH_WARN, per Tim Bunce'sRafael Garcia-Suarez2008-01-111-1/+1
| | | | | suggestion p4raw-id: //depot/perl@32955
* Remove code that protected pp_qr against REGEXPs going away duringNicholas Clark2008-01-111-9/+0
| | | | | | | global destruction whilst they were stored via true references in PL_regex_padav. It won't happen again (unless someone manages to get a reference to an OP's regexp, which is also a risk in 5.10 and 5.8) p4raw-id: //depot/perl@32951
* Introduce macro PERL_MAX_SUB_DEPTHRafael Garcia-Suarez2008-01-111-1/+1
| | | p4raw-id: //depot/perl@32949