summaryrefslogtreecommitdiff
path: root/pp_hot.c
Commit message (Collapse)AuthorAgeFilesLines
* Add a new function newSVpvn_flags(), which takes a third parameter ofNicholas Clark2008-01-021-3/+1
| | | | | | | | | | 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
* Make struct regexp the body of SVt_REGEXP SVs, REGEXPs become SVs,Nicholas Clark2008-01-021-3/+13
| | | | | | and regexp reference counting is via the regular SV reference counting. This was not as easy at it looks. p4raw-id: //depot/perl@32804
* Wrap all deferences of struct regexp* in macros RX_*() [and forNicholas Clark2008-01-021-72/+72
| | | | | | | 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
* Move all code that relies on reading the to-be-thrown-away buffer aheadNicholas Clark2007-12-291-3/+1
| | | | | of the call to sv_chop() that throws it away. p4raw-id: //depot/perl@32777
* Fix Perl #49190, tests from Abigail, codefix from me.Yves Orton2007-12-291-5/+5
| | | p4raw-id: //depot/perl@32761
* Wrap all accesses to the members precomp and prelen of struct regexp inNicholas Clark2007-12-281-2/+2
| | | | | | the macros RX_PRECOMP() and RX_PRELEN(). This will allow us to reduce the regexp storage overhead by computing them at retrieve time. p4raw-id: //depot/perl@32753
* First class regexps.Nicholas Clark2007-12-281-3/+3
| | | p4raw-id: //depot/perl@32751
* Regexps are now orange.Nicholas Clark2007-12-271-0/+1
| | | | | (Correct a comparison of $] with 5.011 in B.pm) p4raw-id: //depot/perl@32740
* Take code that occurs in three places to take a scalar and ready it toNicholas Clark2007-12-261-7/+1
| | | | | hold a reference, and convert it to a macro define prepare_SV_for_RV(). p4raw-id: //depot/perl@32737
* Eliminate SVt_RV, and use SVt_IV to store plain references.Nicholas Clark2007-12-261-3/+3
| | | | | This frees up a scalar type for first class regular expressions. p4raw-id: //depot/perl@32734
* Swap SVt_RV and SVt_NV in the SV ordering.Nicholas Clark2007-12-261-1/+1
| | | p4raw-id: //depot/perl@32725
* PATCH re 32711Robin Barker2007-12-241-1/+2
| | | | | | | | From: "Robin Barker" <Robin.Barker@npl.co.uk> Message-ID: <46A0F33545E63740BC7563DE59CA9C6D0939A4@exchsvr2.npl.ad.local> "IMO patch 32711 is better implemented using (the existing) NUM2PTR macro, as below/attached." p4raw-id: //depot/perl@32720
* Remove warning about casting integer to different sized pointer.Nicholas Clark2007-12-221-1/+1
| | | p4raw-id: //depot/perl@32711
* Re: overload64.t failuresRick Delaney2007-10-211-2/+3
| | | | | Message-ID: <20071021201351.GY29047@bort.ca> p4raw-id: //depot/perl@32157
* Fix overloading for 64-bit ints (revised)Jerry D. Hedden2007-10-191-12/+15
| | | | | | From: "Jerry D. Hedden" <jdhedden@cpan.org> Message-ID: <1ff86f510710181149s1c096dd9qffa8fe42046e675b@mail.gmail.com> p4raw-id: //depot/perl@32141
* No need to call strlen() on the result of CopSTASHPV() when unthreaded,Nicholas Clark2007-10-181-2/+12
| | | | | | | as the length is already known. Hence conditionally compile out the logic related to the call to strlen() from S_method_common(), and use newSVhek in S_gv_get_super_pkg(). p4raw-id: //depot/perl@32130
* Fix bug 45607 - for the corner case *{"BONK"} = \&{"BONK"} the orderNicholas Clark2007-09-221-10/+36
| | | | | | of op evaluation means that what had been a reference to a constant can turn into a typeglob before the sassign gets to run. p4raw-id: //depot/perl@31940
* Silence a load of "value computed is not used" warningsRafael Garcia-Suarez2007-09-211-1/+1
| | | p4raw-id: //depot/perl@31936
* Re: [perl #44623] Optimized magic_setisa has bugRick Delaney2007-09-101-3/+2
| | | | | Message-ID: <20070906184039.GG9260@bort.ca> p4raw-id: //depot/perl@31838
* Re: optimize push @ISA, (was Re: parent.pm at http://corion.net/perl-dev)Brandon Black2007-08-311-8/+3
| | | | | | From: "Brandon Black" <blblack@gmail.com> Message-ID: <84621a60708121336m13dcf9e5uac624fb246f2a79c@mail.gmail.com> p4raw-id: //depot/perl@31770
* Comment typo fixAbigail2007-06-301-1/+1
| | | | | Message-ID: <20070629204935.GA13919@abigail.nl> p4raw-id: //depot/perl@31508
* Resolve Yves Orton2007-06-231-3/+6
| | | | | | | | | | | | | | http://www.nntp.perl.org/group/perl.perl5.porters/2007/06/msg125667.html by reverting part of change #29354. Unfortunately match vars after a /g match in scalar context will be unsafe (again) after this, but such matches on long strings won't be as diabolically slow. Question: why does the new test in t/op/pat.t pass, but the same test in t/op/reg_unsafe.t fail? (Latter is TODO for now) p4raw-link: @29354 on //depot/perl: 58e23c8d7d24dd08c87b5d56819ad45527176c15 p4raw-id: //depot/perl@31451
* Remove support for assertions and -ARafael Garcia-Suarez2007-06-051-3/+0
| | | p4raw-id: //depot/perl@31333
* Re: mro status, etcBrandon Black2007-05-031-0/+9
| | | | | | From: "Brandon Black" <blblack@gmail.com> Message-ID: <84621a60704301445y37e9b05ey235210a8e5547cc1@mail.gmail.com> p4raw-id: //depot/perl@31122
* Re: mro status, etcBrandon Black2007-04-301-1/+1
| | | | | | From: "Brandon Black" <blblack@gmail.com> Message-ID: <84621a60704291527y1b39be37l221ef66e4c828f66@mail.gmail.com> p4raw-id: //depot/perl@31107
* Re: [PATCH] Cleanup of the regexp APIÆvar Arnfjörð Bjarmason2007-04-301-1/+1
| | | | | | From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com> Message-ID: <51dd1af80704261922j3db0615wa86ccc4cb65b2713@mail.gmail.com> p4raw-id: //depot/perl@31106
* Fix a bug in method caching. Better version (broader) of change #29336.Brandon Black2007-04-261-5/+0
| | | | | | | | Subject: Re: mro status, etc From: "Brandon Black" <blblack@gmail.com> Message-ID: <84621a60704260852y5a3dd2a5jeb633bb46cc7a8c0@mail.gmail.com> p4raw-link: @29336 on //depot/perl: ae6d515f69537dd5e2631b15104c2c90d022fd19 p4raw-id: //depot/perl@31091
* Remove unnecessarily paranoid protection in pp_definedRafael Garcia-Suarez2007-04-241-3/+4
| | | p4raw-id: //depot/perl@31051
* Remove the code that handles assignment to state variablesRafael Garcia-Suarez2007-04-241-16/+0
| | | p4raw-id: //depot/perl@31049
* Re: new C3 MRO patchBrandon Black2007-04-191-2/+3
| | | | | | From: "Brandon Black" <blblack@gmail.com> Message-ID: <84621a60704171114k29b0460el5b08ce5185d55ed5@mail.gmail.com> p4raw-id: //depot/perl@30980
* Turn op_pmreplroot in struct pmop into a real union.Nicholas Clark2007-04-071-1/+1
| | | p4raw-id: //depot/perl@30865
* Re: Proposed changes and to regular expression interfaces in coreÆvar Arnfjörð Bjarmason2007-04-061-4/+5
| | | | | | From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com> Message-ID: <51dd1af80703291552y1073bcb6r954b043eb68a4459@mail.gmail.com> p4raw-id: //depot/perl@30849
* Re: pmdynflags and thread safetyYves Orton2007-04-041-14/+33
| | | | | Message-ID: <9b18b3110704031646p7ac8dbearf9e41397a5f884d8@mail.gmail.com> p4raw-id: //depot/perl@30841
* Fix the error message "Can't call method "DOES" on unblessedRafael Garcia-Suarez2007-03-311-0/+1
| | | | | reference". p4raw-id: //depot/perl@30806
* Fix return value of state assignment ($x=state $y=$z).Rafael Garcia-Suarez2007-03-271-7/+10
| | | | | | | Fix a form of state assignment (state($x)=$y). Minor optimisation in pp_aassign for state variables. New tests. p4raw-id: //depot/perl@30772
* In struct regexp replace the two arrays of I32s accessed via startpNicholas Clark2007-03-261-31/+32
| | | | | | | | | | 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
* Let %^H be modifiable in eval-strings (bug #41531),Rafael Garcia-Suarez2007-03-191-1/+8
| | | | | | by adding a meaning for OPf_SPECIAL on OP_CONST. Patch by Yves Orton. p4raw-id: //depot/perl@30644
* Need a SPAGAIN here because the stack pointer might haveRafael Garcia-Suarez2007-03-131-0/+1
| | | | | moved when evaluating a tied hash in scalar context. p4raw-id: //depot/perl@30560
* A couple of casting nits by JarkkoRafael Garcia-Suarez2007-03-011-1/+1
| | | p4raw-id: //depot/perl@30433
* Add a new API function newSV_type, to replace the idiom:Nicholas Clark2007-02-181-2/+1
| | | | | | sv = newSV(0); sv_upgrade(sv, type); p4raw-id: //depot/perl@30347
* [perl #41484] qr// stack bug knew-p5p@pimb.org2007-02-111-1/+2
| | | | | | From: knew-p5p@pimb.org (via RT) <perlbug-followup@perl.org> Message-ID: <rt-3.6.HEAD-14573-1171164736-117.41484-75-0@perl.org> p4raw-id: //depot/perl@30211
* The last parameter to gv_stashpv/gv_stashpvn/gv_stashsv is a bitmaskNicholas Clark2007-01-251-2/+2
| | | | | of flags, not a boolean, so correct the documenation and callers. p4raw-id: //depot/perl@29977
* Refactor the common soft-reference code from pp_rv2sv and pp_rv2avNicholas Clark2007-01-211-32/+4
| | | | | | 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
* defined @$foo and defined %$bar should be subject to strict 'refs';Nicholas Clark2007-01-201-5/+8
| | | p4raw-id: //depot/perl@29900
* pp_rv2av and pp_rv2hv have a lot of common code, so it's certainly aNicholas Clark2007-01-151-128/+43
| | | | | space saving to merge them. Hopefully this will reduce L2 cache misses. p4raw-id: //depot/perl@29836
* Make changes analagous to pp_rv2hv's 21394 and 24489 in pp_rv2av.Nicholas Clark2007-01-151-12/+12
| | | p4raw-id: //depot/perl@29835
* Add support for /k modfier for matching along with ${^PREMATCH}, ${^MATCH}, ↵Yves Orton2007-01-151-3/+8
| | | | | | | | ${^POSTMATCH} Message-ID: <9b18b3110701111731x29b1c63i57b1698f769b3bbc@mail.gmail.com> (with tweaks) p4raw-id: //depot/perl@29831
* Add get_cvn_flags(), which is like get_cv() but takes a length. ThisNicholas Clark2007-01-151-3/+10
| | | | | allows symbolic code references with embeded NULs to work. p4raw-id: //depot/perl@29830
* Update copyright years in .c filesRafael Garcia-Suarez2007-01-051-1/+1
| | | p4raw-id: //depot/perl@29696
* 4th patch from: Marcus Holland-Moritz2007-01-041-4/+4
| | | | | | | | | Subject: [PATCH] Cleanup SVf arguments (2nd try) Message-ID: <20070101201613.4120d9ef@r2d2> Introduce an SVfARG() macro for %SVf (%-p here) arguments to perl's printf p4raw-id: //depot/perl@29687