summaryrefslogtreecommitdiff
path: root/opcode.pl
Commit message (Collapse)AuthorAgeFilesLines
* Add some documentation to the heads of the various *.pl build scriptsDavid Mitchell2009-05-151-0/+15
| | | | (cherry picked from commit 6294c16100e79c65d9c9883d11b45631d3ded9a1)
* Tidy up error messagesRafael Garcia-Suarez2009-02-221-2/+2
| | | | | | | | (cherry-picked from commit cb7b5e07a2547873dcf5502e7f9f8f589eae0bf0) (actually most of this merge was skipped as the code has changed considerably since this commit) p4raw-id: //depot/perl@33374
* Update copyright year in opcode.pl to reflect change 33364.Nicholas Clark2009-01-031-1/+1
| | | | | | p4raw-id: //depot/perl@34587 (cherry picked from commit e8e5c75e9a6f6d4a181b29bd624f700002ee8781)
* Integrate:Dave Mitchell2008-05-281-47/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ 33488] Subject: [PATCH] Correct misleading example in perlsyn.pod (given/when/default) From: Paul Fenwick <pjf@perltraining.com.au> Date: Wed, 12 Mar 2008 13:19:15 +1100 Message-ID: <47D73DA3.8050300@perltraining.com.au> [ 33537] Subject: Re: [patch] refine make regen to be more selective From: Jim Cromie <jim.cromie@gmail.com> Message-ID: <47D720CE.7060004@gmail.com> Date: Tue, 11 Mar 2008 18:16:14 -0600 [ 33538] Rename safer_rename() to rename_if_different(), to accurately describe what it does. Use File::Compare rather than Digest::MD5, as the files are small enough to simply read in. (File::Compare dates from 5.004) Remove safer_rename_always(), which isn't used. DRY by replacing the cargo-culted "open or die" with a new function safer_open(), which uses Gensym (5.002) to create an anonymous file handle, and opens and binmodes the file, or dies. This necessitates replacing bareword file handles with lexicals in all the callers. Correct the names of files in close or die constructions. [ 33539] Drag autodoc.pl and overload.pl into the age of safer_open(). Thanks to the wisdom of london.pm, stuff the filename into the SCALAR slot of the typeglob created in safer_open(), so that ... Add safer_close(), that will die (with the filename) if the close fails. [ 33544] Subject: [PATCH] Double warning with perl -we '\&$x' From: "Vincent Pit" <perl@profvince.com> Date: Thu, 20 Mar 2008 12:06:47 +0100 (CET) Message-ID: <38561.147.210.17.175.1206011207.squirrel@147.210.17.175> p4raw-link: @33544 on //depot/perl: 4052d21cf21adbbdc9b825b0bd88d7c5804670eb p4raw-link: @33539 on //depot/perl: 08858ed21b9a4d448437bdae35df5c42fbe1c8bd p4raw-link: @33538 on //depot/perl: 424a4936e3f61f4e8db394f496a116e698cede85 p4raw-link: @33537 on //depot/perl: b6b9a09997c80269af874aff41936e014ed728f7 p4raw-link: @33488 on //depot/perl: 02e7afe2eaa86842727fb8a4748929503f679982 p4raw-id: //depot/maint-5.10/perl@33944 p4raw-integrated: from //depot/perl@33943 'copy in' autodoc.pl (@29738..) pod/perlsyn.pod (@32805..) keywords.pl regcomp.pl (@33538..) p4raw-integrated: from //depot/perl@33544 'merge in' t/lib/warnings/9uninit (@33342..) sv.c (@33541..) p4raw-integrated: from //depot/perl@33539 'merge in' overload.pl (@32681..) p4raw-integrated: from //depot/perl@33538 'edit in' embed.pl reentr.pl (@33537..) 'ignore' regen_lib.pl (@33537..) p4raw-integrated: from //depot/perl@33537 'edit in' warnings.pl (@32990..) opcode.pl (@33374..) 'merge in' regen.pl (@31165..)
* Integrate:Dave Mitchell2008-05-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ 33337] Setting the f flag on length causes the op to be constant folded. [ 33342] fix variable names in 'ununit var' warnings in evals [ 33363] Subject: [PATCH] B::Debug enhancements From: "Reini Urban" <rurban@x-ray.at> Date: Fri, 22 Feb 2008 09:52:32 +0100 Message-ID: <6910a60802220052t3c1f1d91ne38b8ba6f6c56651@mail.gmail.com> [ 33367] Avoid a segfault case in MRO code, based on : Subject: [perl #51092] [PATCH] Segfault when calling ->next::method on non-existing package From: ilmari@vesla.ilmari.org (via RT) <perlbug-followup@perl.org> Date: Thu, 21 Feb 2008 20:29:42 -0800 Message-ID: <rt-3.6.HEAD-15287-1203654581-377.51092-75-0@perl.org> [ 33369] Ensure that constant folding runs with IN_PERL_RUNTIME true, by copying the current compiling cop to a different address. This ensures that lexical hints are correctly honoured, and allows us to fold sprintf. [ 33377] If we have malloced_size() available, then avoid rounding up the string to the next (guessed) plausible alignment size, and instead find out how much memory was actually allocated, so that we can set this in the scalar's SvLEN(). This way, sv_grow() will be called far less often. [ 33378] In Perl_sv_usepvn_flags(), with MYMALLOC, use the actual malloc()ed size for SvLEN(), rather than an estimate. [ 33379] If the C library provides malloc_size(), we can use that in the same places as Perl's malloced_size(), except that we need to be careful of any PERL_TRACK_MEMPOOL manipulations in force. Wrap both as Perl_safesysmalloc_size(), to give a consistent name and interface. [ 33380] Fix preprocessor syntax [ 33383] Comment on why I don't think changing Perl_safesysmalloc_size() in av.c analagous to the change in sv.c is a good idea. [It's not a language design issue, so sadly I can't get a talk out of it. Or is that fortunately? :-)] [ 33389] Add Perl_malloc_good_size to malloc.c. (A routine that rounds up the passed in request to the size that will actually be allocated. It's the same interface as Darwin already provides with malloc_good_size().) [ 33390] Use malloc_good_size() to round up the size of requested arenas to the size that will actually be allocated, to squeeze last few bytes into use. p4raw-link: @33390 on //depot/perl: d8fca4022b56f335fb492e336b5d155376eb1bf7 p4raw-link: @33389 on //depot/perl: 641071807211a3969bcad26ac3f2a39f4550a11c p4raw-link: @33383 on //depot/perl: e050cc0e6db974512bccc84746c68ba4ed3e4079 p4raw-link: @33380 on //depot/perl: cfe5289891381086cbb4d57f93a59ba02c2cd726 p4raw-link: @33379 on //depot/perl: ca7c1a2998b2bece800791e0ee5cce600e2f647a p4raw-link: @33378 on //depot/perl: 5d487c263b0c0c7fb6c50dee3540f1838c4ab067 p4raw-link: @33377 on //depot/perl: 98653f182f8d34d630c65229237c0d55f664e886 p4raw-link: @33369 on //depot/perl: c427f4d2d4575fbc8a5190932fe321136c7597b3 p4raw-link: @33367 on //depot/perl: 5fa9f95182cd3e9dfed1f750408ef8b876d6a9c6 p4raw-link: @33363 on //depot/perl: c13076132a20419dab956060b96f9d3ef3b25ad7 p4raw-link: @33342 on //depot/perl: 50edf520be9fa4c0e7982006bec3a6939b2f61a7 p4raw-link: @33337 on //depot/perl: 1518d620d80f21c46a5f3757b2ebf28b92c1d602 p4raw-id: //depot/maint-5.10/perl@33942 p4raw-integrated: from //depot/perl@33941 'copy in' t/lib/warnings/7fatal (@30124..) t/mro/next_edgecases.t (@30998..) ext/B/B/Debug.pm (@33230..) 'edit in' opcode.h (@33356..) 'merge in' makedef.pl (@32835..) handy.h (@33045..) p4raw-integrated: from //depot/perl@33390 'edit in' sv.c (@33385..) 'merge in' hv.c (@33291..) p4raw-integrated: from //depot/perl@33389 'merge in' malloc.c (@33291..) embed.h (@33365..) embed.fnc proto.h (@33384..) p4raw-integrated: from //depot/perl@33383 'edit in' av.c (@33379..) p4raw-integrated: from //depot/perl@33379 'edit in' perl.h (@33376..) p4raw-integrated: from //depot/perl@33369 'merge in' op.c (@33368..) p4raw-integrated: from //depot/perl@33367 'merge in' mro.c (@33291..) p4raw-integrated: from //depot/perl@33342 'merge in' t/lib/warnings/9uninit (@33310..) p4raw-integrated: from //depot/perl@33337 'edit in' opcode.pl (@33267..)
* Integrate:Marcus Holland-Moritz2008-01-301-24/+41
| | | | | | | | | | | | | | | | [ 32762] die if multiple macros in regexp.h attempt to use the same flag bit. [ 32921] Subject: [PATCH] refactor PL_opargs generation in opcode.pl and fix helem Message-ID: <20080103012935.759bda90@r2d2> p4raw-link: @32921 on //depot/perl: c2dedb93787513d66c49e180154d0200519dbf74 p4raw-link: @32762 on //depot/perl: c8e4cf8b7082ad71ba42564a3d098566ed2a16ac p4raw-id: //depot/maint-5.10/perl@33136 p4raw-integrated: from //depot/perl@33135 'copy in' regcomp.pl (@31506..) p4raw-integrated: from //depot/perl@32921 'merge in' opcode.pl (@32680..)
* Make state $zok = slosh(); behave as the Perl 6 design with an implicitNicholas Clark2007-09-061-0/+4
| | | | | | | | | | | | | | | 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
* Remove the never-used numeric and character switch ops.Nicholas Clark2007-03-301-3/+0
| | | p4raw-id: //depot/perl@30785
* A logical rearrangement of ops, to get the post 5.005 ops to theirNicholas Clark2007-03-301-18/+14
| | | | | logical groups. p4raw-id: //depot/perl@30784
* Oops. Failed to remove the now obsolete comment about custom ops.Nicholas Clark2007-03-301-2/+0
| | | p4raw-id: //depot/perl@30783
* Remove the restriction that op_custom has to be the last op.Nicholas Clark2007-03-301-3/+3
| | | | | This allows more ops to be added during the life of a stable release. p4raw-id: //depot/perl@30782
* Make readline() default to *ARGV.Rafael Garcia-Suarez2007-03-241-1/+1
| | | | | Plus MAD fixes. p4raw-id: //depot/perl@30750
* Now that readpipe defaults to $_, I should update the prototype tableRafael Garcia-Suarez2007-03-241-1/+1
| | | | | in opcode.pl too. p4raw-id: //depot/perl@30749
* blead (honestly :-) g++ with -DPERL_GLOBAL_STRUCT_PRIVATE needs tweakingJarkko Hietaniemi2007-02-191-1/+2
| | | | | | | | Message-Id: <20070219174107.63EEB43A67@anubis.hut.fi> Plus a regen picked up changes in pod/perlapi.pod related to change #30347. p4raw-id: //depot/perl@30362
* pp_rv2av and pp_rv2hv have a lot of common code, so it's certainly aNicholas Clark2007-01-151-0/+1
| | | | | space saving to merge them. Hopefully this will reduce L2 cache misses. p4raw-id: //depot/perl@29836
* Make opcode.pl strict and warnings clean.Nicholas Clark2007-01-091-22/+28
| | | p4raw-id: //depot/perl@29736
* Eliminate pp_threadsv, as it was only ever used by 5005 threads.Nicholas Clark2007-01-081-2/+1
| | | p4raw-id: //depot/perl@29727
* Update copyright years in .h files. Also, in .plRafael Garcia-Suarez2007-01-051-3/+3
| | | | | | files that generate .h files, so they'll be ready next time. p4raw-id: //depot/perl@29695
* Re-order ops to the implementation order in pp_sys.c - this makes aNicholas Clark2006-11-121-5/+5
| | | | | branch table corresponding to a switch statement slightly smaller. p4raw-id: //depot/perl@29251
* Re: $, and sayGisle Aas2006-11-021-1/+1
| | | | | | | | Message-ID: <lrek2t1e8n.fsf@caliper.activestate.com> with tweaks so "say;" continues to default to $_ plus a regression test p4raw-id: //depot/perl@29187
* Make readpipe() overridable (and also `` and qx//)Rafael Garcia-Suarez2006-10-311-1/+1
| | | p4raw-id: //depot/perl@29168
* C++: Solaris CC now compiles "perl"Jarkko Hietaniemi2006-09-111-2/+2
| | | | | Message-ID: <4502B398.6060505@iki.fi> p4raw-id: //depot/perl@28814
* Merging pp_bit_or and pp_bit_xor shrinks the object code by about .7K.Nicholas Clark2006-02-071-0/+1
| | | | | The overloading tests are not free. p4raw-id: //depot/perl@27126
* Allow bareword file handle as argument to chdir().Gisle Aas2006-02-071-1/+2
| | | | | | This copies the mechanism used by truncate(). Fixes bug #38457. p4raw-id: //depot/perl@27125
* All the trancendental unary operators can be merged into PP_sinNicholas Clark2006-02-071-0/+1
| | | | | (cos, exp, log, sqrt) p4raw-id: //depot/perl@27124
* pp_pop can be implemented by pp_shift.Nicholas Clark2006-02-071-0/+1
| | | p4raw-id: //depot/perl@27121
* pp_hex can be implemented trivially by pp_oct, making pp_hex a mathom.Nicholas Clark2006-02-071-0/+1
| | | p4raw-id: //depot/perl@27119
* Merge pp_index and pp_rindex - we have another mathom.Nicholas Clark2006-02-071-0/+1
| | | p4raw-id: //depot/perl@27118
* Update the copyright years in the generated files, and nostdio.hNicholas Clark2006-01-081-1/+2
| | | p4raw-id: //depot/perl@26736
* sprinkle dVARJarkko Hietaniemi2006-01-061-0/+10
| | | | | Message-ID: <43BE7C4D.1010302@gmail.com> p4raw-id: //depot/perl@26675
* Happy New Year. (It's not just embed.pl).Nicholas Clark2006-01-021-1/+1
| | | p4raw-id: //depot/perl@26572
* latest switch/say/~~Robin Houston2005-12-191-0/+11
| | | | | Message-Id: <20051217204431.GB28940@rpc142.cs.man.ac.uk> p4raw-id: //depot/perl@26400
* Disable constant folding of sprintfGisle Aas2005-12-011-1/+1
| | | | | Message-ID: <lr8xv56p0d.fsf_-_@caliper.activestate.com> p4raw-id: //depot/perl@26236
* Merge pp_slt, pp_sgt and pp_sge into pp_sle. (The most commonly usedNicholas Clark2005-11-071-0/+1
| | | | | of the 4. Not that any are that popular.) p4raw-id: //depot/perl@26039
* The rarely used lcfirst and ucfirst share almost all their code.Nicholas Clark2005-11-071-0/+1
| | | | | Merge the two as pp_ucfirst. p4raw-id: //depot/perl@26035
* Typos in opcode.pl this time.Steve Peters2005-11-051-2/+2
| | | p4raw-id: //depot/perl@26008
* Merge pp_andassign, pp_orassign, and pp_dorassign into pp_and,Steve Peters2005-11-051-1/+3
| | | | | pp_or, and pp_defined, respectively. p4raw-id: //depot/perl@26007
* I barely knew ya pp_dor. Merged into pp_defined from whence you came.Steve Peters2005-11-041-0/+1
| | | | | | This change has also caused pp_defined to be promoted to being a hot op. p4raw-id: //depot/perl@26004
* pp_semop can fit within Perl_pp_shmwrite().Nicholas Clark2005-11-041-2/+1
| | | p4raw-id: //depot/perl@26000
* The remaining special logic in pp_syswrite can be moved into pp_send,Nicholas Clark2005-11-041-0/+1
| | | | | which is actually already 50% syswrite. p4raw-id: //depot/perl@25999
* Merge msgsnd, msgrcv with Perl_pp_shmwrite().Nicholas Clark2005-11-041-0/+1
| | | | | | "Perfection is achieved not when there's nothing more to add, but when there's nothing left to remove" (Antoine de Saint-Exupéry) p4raw-id: //depot/perl@25990
* ftrwrite, ftrexec, fteread, ftewrite and fteexec can all be mergedNicholas Clark2005-11-041-0/+2
| | | | | with Perl_pp_ftrread(). p4raw-id: //depot/perl@25986
* Perl_pp_symlink and Perl_pp_link can be merged. The diff looks evil,Nicholas Clark2005-11-031-0/+1
| | | | | but the actual finished code is not as bad as it seems. p4raw-id: //depot/perl@25972
* unlink chmod utime kill can be merged into Perl_pp_chown().Nicholas Clark2005-11-021-2/+2
| | | p4raw-id: //depot/perl@25964
* Move ftsuid ftsgid ftsvtx into Perl_pp_ftrowned.Nicholas Clark2005-11-021-1/+2
| | | p4raw-id: //depot/perl@25962
* Merge ftzero ftsock ftchr ftblk ftfile ftdir ftpipe intoNicholas Clark2005-11-021-1/+2
| | | | | Perl_pp_ftrowned p4raw-id: //depot/perl@25961
* Merge ftsize ftmtime ftatime ftctime into Perl_pp_ftisNicholas Clark2005-11-021-0/+2
| | | p4raw-id: //depot/perl@25958
* sort/multicall patchRobin Houston2005-11-021-1/+1
| | | | | Message-ID: <20051029203307.GA8869@rpc142.cs.man.ac.uk> p4raw-id: //depot/perl@25953
* All the ops that are simply C<return some_other_op();> can be bypassedNicholas Clark2005-10-311-1/+25
| | | | | in the op dispatch table, and the bodies retired. p4raw-id: //depot/perl@25940
* Replace the 3 currently "unreachable" ops with a single op bodyNicholas Clark2005-10-311-1/+4
| | | | | unimplemented_op() that panics descriptively if ever reached. p4raw-id: //depot/perl@25937