summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Curiously none of the macros SvIVX, SvUVX or SvNVX are used onNicholas Clark2006-02-253-5/+7
| | | | | typeglobs. p4raw-id: //depot/perl@27325
* Amazingly, it seems that none of the other GV specific macros areNicholas Clark2006-02-252-20/+35
| | | | | accessed unless the GV thinks that it is a GV. p4raw-id: //depot/perl@27324
* Store GvGP in the SV head union. For all the common lookups [eg GvCV()]Nicholas Clark2006-02-258-42/+76
| | | | | | | | this avoids 1 pointer dereference and the associated risk of a CPU cache miss. Although this patch looks deceptively small, I fear its CBV(*) might be rather high. (* Crack By Volume) p4raw-id: //depot/perl@27323
* With PERL_DONT_CREATE_GVSV, don't need to create a new GvSV inNicholas Clark2006-02-241-1/+3
| | | | | Perl_save_scalar. p4raw-id: //depot/perl@27322
* Given that SvPV on a typeglob is now irrelevant, really we only needNicholas Clark2006-02-241-12/+1
| | | | | to store the GvGP. p4raw-id: //depot/perl@27321
* Given that Perl_gp_free() is refcount-dec-and-maybe-free for the globNicholas Clark2006-02-241-0/+1
| | | | | | | pointer, it's inconsistent that it only sets this GV's GvGP to 0 if this GV happened to have the last reference. Why should this GV care if it had the last reference? So always set it to 0. It's free. Gone. p4raw-id: //depot/perl@27320
* Avoid special case SvMAGIC macros just to cope with Perl_sv_unmagic.Nicholas Clark2006-02-242-14/+5
| | | p4raw-id: //depot/perl@27319
* Use PVMGs rather than PVGVs to store the names of our variables in theNicholas Clark2006-02-243-8/+7
| | | | | pad. p4raw-id: //depot/perl@27313
* Store the stash for our in the magic slot. This will allow us to useNicholas Clark2006-02-246-31/+77
| | | | | | PVMGs in pad names where previously PVGVs were used. In turn, this gives much greater flexibility for the layout of PVGVs. p4raw-id: //depot/perl@27312
* Upgrade to CPAN-1.86Steve Peters2006-02-242-129/+158
| | | p4raw-id: //depot/perl@27311
* Skip unportable test on VMSRafael Garcia-Suarez2006-02-241-3/+6
| | | p4raw-id: //depot/perl@27309
* Assert that GvSTASH is only called on PVGVs and PVLVs.Nicholas Clark2006-02-241-1/+9
| | | p4raw-id: //depot/perl@27307
* Replace usage of GvSTASH for storing the stash of C<our> withNicholas Clark2006-02-243-6/+12
| | | | | OURSTASH. Set the stash with OURSTASH_SET. p4raw-id: //depot/perl@27306
* assert that SvMAGIC is never non-NULL for any PVMG used as a pad name.Nicholas Clark2006-02-241-0/+2
| | | p4raw-id: //depot/perl@27304
* Redo previous sv.h change.Nicholas Clark2006-02-241-9/+10
| | | p4raw-id: //depot/perl@27302
* Perl_save_aelem can't be constAndy Lester2006-02-243-3/+3
| | | | | Message-ID: <20060224045340.GA6318@petdance.com> p4raw-id: //depot/perl@27301
* unused context warningsAndy Lester2006-02-2421-38/+165
| | | | | Message-ID: <20060221062711.GA16160@petdance.com> p4raw-id: //depot/perl@27300
* As SVs can't both be in a pad, and the name of a variable in the pad,Nicholas Clark2006-02-241-1/+2
| | | | | overlay SVs_PADTMP with SVpad_TYPED and SVs_PADMY with SVpad_OUR. p4raw-id: //depot/perl@27297
* Revert change #27295, which I thought fixed builds on Win32.Steve Peters2006-02-242-1/+1
| | | | | | Instead remove &PL_vtbl_glob from globvar.sym. p4raw-link: @27295 on //depot/perl: 3476b56103cbe13508b1fd6b46ae7b9cb6e0f7ed p4raw-id: //depot/perl@27296
* Last instance of PL_vtbl_glob removed. It was missed change #27289.Steve Peters2006-02-241-1/+0
| | | | | p4raw-link: @27289 on //depot/perl: c0c446747ad6c5bde53bc8415ca16ef77f6320f2 p4raw-id: //depot/perl@27295
* Replace direct flags tests & manipulations for SVpad_TYPED andNicholas Clark2006-02-239-25/+35
| | | | | | SVpad_OUR with macros SvPAD_TYPED(), SvPAD_OUR() etc, to abstract away the flags bits acutally used to store this information. p4raw-id: //depot/perl@27294
* Document a sixth use for SVf_FAKENicholas Clark2006-02-231-0/+3
| | | p4raw-id: //depot/perl@27293
* We have sufficient spare bits to store the SV type in body_details,Nicholas Clark2006-02-231-21/+39
| | | | | | so add a small sanity check to ensure that we have the array in the correct order. p4raw-id: //depot/perl@27292
* Shrink struct body_details and hence sv.o slightly further by usingNicholas Clark2006-02-231-3/+3
| | | | | bitfields. p4raw-id: //depot/perl@27291
* Using U8 rather than size type shrinks the body_details table.Nicholas Clark2006-02-231-3/+3
| | | p4raw-id: //depot/perl@27290
* Remove set magic from typeglobs. Remove typeglob magic entirely.Nicholas Clark2006-02-237-34/+17
| | | | | | Typeglobs now never access the SvPVX, SvIVX or SvNVX when holding a valid GvGP(). p4raw-id: //depot/perl@27289
* In XS_attributes__guess_stash, attempting to call Gv* on a PVMG isNicholas Clark2006-02-231-4/+0
| | | | | bad and wrong. p4raw-id: //depot/perl@27288
* Add test for RT #2166: foreach spuriously autovivifiesSteve Peters2006-02-231-1/+13
| | | p4raw-id: //depot/perl@27287
* Converted t/op/pos.t to use test.pl and added TODO test for Steve Peters2006-02-231-9/+19
| | | | | RT #1716 - search position reset after 'local' save/restore p4raw-id: //depot/perl@27286
* Implement ${^WIN32_SLOPPY_STAT}Jan Dubois2006-02-231-10/+16
| | | | | | From: "Jan Dubois" <jand@ActiveState.com> Message-ID: <019601c63726$7fcca200$6062a8c0@candy> p4raw-id: //depot/perl@27283
* Recalculate dstr in Perl_sv_setsv_flags, as dstr may have been upgraded.Nicholas Clark2006-02-231-0/+2
| | | p4raw-id: //depot/perl@27282
* Remove un-needed case in Perl_sv_setsv_flags (sv_upgrade will coverNicholas Clark2006-02-231-2/+0
| | | | | this one for us). p4raw-id: //depot/perl@27279
* Remove get magic from typeglobs. This means that PVGVs holdingNicholas Clark2006-02-239-28/+100
| | | | | | | | | | | typeglobs never need to use SvPVX. This comes at price - typeglobs were using magic get for their stringificiation, and to pass SvOK(), so need to make typeglobs SvOK by default (by sucking SVp_SCREAM into SVf_OK - it's the only flag left), tweak SvSCREAM() to also check SVp_POK, and teach sv_2[inpu]v how to convert globs. However, it should free up SvPVX for the next part of the plan to pointer indirections, and therefore CPU cache pressure. p4raw-id: //depot/perl@27278
* Fix the copy sizes for PVFM and PVCV back to sanity.Nicholas Clark2006-02-231-5/+2
| | | p4raw-id: //depot/perl@27276
* Fix typos and a missing bracket.Nicholas Clark2006-02-222-3/+3
| | | p4raw-id: //depot/perl@27274
* Avoid C<study>ing any strings that might change underneath us, suchNicholas Clark2006-02-222-15/+18
| | | | | as tied scalars and scalars with overloaded stringification. p4raw-id: //depot/perl@27273
* Mark some new study tests as TODORafael Garcia-Suarez2006-02-221-3/+9
| | | p4raw-id: //depot/perl@27272
* Add a test for study() on tied scalars, by Andy Lester afterRafael Garcia-Suarez2006-02-222-0/+51
| | | | | Rick Delaney p4raw-id: //depot/perl@27271
* Turn on match string copying when /e flag is set on a substitution.Jarkko Hietaniemi2006-02-221-2/+3
| | | | | | Subject: [PATCH] dodge a valgrind error (for maint or blead) Message-ID: <43FCB896.7060106@gmail.com> p4raw-id: //depot/perl@27270
* sv_dump should report the PV for PVGVs, as it can get set.Nicholas Clark2006-02-222-1/+2
| | | | | (Typeglobs stringify via a call to GET magic, which uses the PV slot.) p4raw-id: //depot/perl@27269
* Test warnings for converting globs to other forms.Nicholas Clark2006-02-221-1/+29
| | | p4raw-id: //depot/perl@27268
* Change 24643 made the mistake of assuming that CvCONST can only be trueNicholas Clark2006-02-222-2/+12
| | | | | | on XSUBs. Somehow it can also end up on perl subs. Bug spotted by and test case from Marcus Holland-Moritz. p4raw-id: //depot/perl@27267
* Can merge the two arms of Perl_magic_getglob to save space.Nicholas Clark2006-02-211-7/+8
| | | p4raw-id: //depot/perl@27265
* Reorder the SV flags so that SVp_?OK and SVf_?OK occupy 8 contiguousNicholas Clark2006-02-211-24/+25
| | | | | | | bits (0x0000XX00). This makes perl 3K smaller with -Os on x86 FreeBSD, and might also help on other architectures (eg with 8 contiguous bits, the SvOK() test on ARM won't need an intermediate constant). p4raw-id: //depot/perl@27264
* Additional hints needed to build threaded Perls on NetBSD.Steve Peters2006-02-211-1/+19
| | | p4raw-id: //depot/perl@27263
* PL_body_arenas should be set to NULL when the interpreter is cleared.Nicholas Clark2006-02-211-0/+1
| | | p4raw-id: //depot/perl@27262
* Teach B about CVf_ISXSUBNicholas Clark2006-02-212-1/+2
| | | p4raw-id: //depot/perl@27261
* Goodbye PERL_XSUB_OLDSTYLE.Nicholas Clark2006-02-216-51/+5
| | | p4raw-id: //depot/perl@27260
* Re-order the definitions of the private bits in SvFLAGS by value, soNicholas Clark2006-02-211-20/+30
| | | | | that we can see where we're already double-booked. p4raw-id: //depot/perl@27259
* Document the many uses of SVf_FAKE.Nicholas Clark2006-02-211-1/+12
| | | p4raw-id: //depot/perl@27258